<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.ark-hoster.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA</id>
	<title>Настройка fail2ban для защиты от атак - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ark-hoster.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA"/>
	<link rel="alternate" type="text/html" href="https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;action=history"/>
	<updated>2026-05-01T14:11:52Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;diff=1511&amp;oldid=prev</id>
		<title>Admin в 10:33, 15 октября 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;diff=1511&amp;oldid=prev"/>
		<updated>2025-10-15T10:33:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;amp;diff=1511&amp;amp;oldid=1468&quot;&gt;Внесённые изменения&lt;/a&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;diff=1468&amp;oldid=prev</id>
		<title>Admin: Новая страница: «= Настройка fail2ban для защиты от атак =  == 1. Подготовка системы ==  * Войдите в систему под уче…»</title>
		<link rel="alternate" type="text/html" href="https://wiki.ark-hoster.ru/index.php?title=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_fail2ban_%D0%B4%D0%BB%D1%8F_%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D1%8B_%D0%BE%D1%82_%D0%B0%D1%82%D0%B0%D0%BA&amp;diff=1468&amp;oldid=prev"/>
		<updated>2025-10-15T08:31:16Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «= Настройка fail2ban для защиты от атак =  == 1. Подготовка системы ==  * Войдите в систему под уче…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Настройка fail2ban для защиты от атак =&lt;br /&gt;
&lt;br /&gt;
== 1. Подготовка системы ==&lt;br /&gt;
&lt;br /&gt;
* Войдите в систему под учетной записью с правами &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039; или пользователя с правами &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Убедитесь, что у вас есть доступ к серверу через SSH или консоль.&lt;br /&gt;
&lt;br /&gt;
== 2. Установка fail2ban ===&lt;br /&gt;
&lt;br /&gt;
=== Обновление системы ===&lt;br /&gt;
&lt;br /&gt;
1. Обновите систему:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt update&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Установите fail2ban:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt install -y fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Проверьте версию:&lt;br /&gt;
&amp;lt;code&amp;gt;fail2ban-client --version&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Запустите и включите автозапуск:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo systemctl start fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;sudo systemctl enable fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. Проверьте статус:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo systemctl status fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. Базовая конфигурация ===&lt;br /&gt;
&lt;br /&gt;
=== Создание конфигурационного файла ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте локальный конфигурационный файл:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/jail.local&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте базовую конфигурацию:&lt;br /&gt;
&amp;lt;code&amp;gt;[DEFAULT]&lt;br /&gt;
# Игнорировать IP адреса&lt;br /&gt;
ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24&lt;br /&gt;
&lt;br /&gt;
# Время блокировки в секундах&lt;br /&gt;
bantime = 3600&lt;br /&gt;
&lt;br /&gt;
# Время поиска в секундах&lt;br /&gt;
findtime = 600&lt;br /&gt;
&lt;br /&gt;
# Максимальное количество попыток&lt;br /&gt;
maxretry = 3&lt;br /&gt;
&lt;br /&gt;
# Backend для поиска в логах&lt;br /&gt;
backend = systemd&lt;br /&gt;
&lt;br /&gt;
# Email уведомления&lt;br /&gt;
destemail = admin@example.com&lt;br /&gt;
sender = fail2ban@example.com&lt;br /&gt;
action = %(action_mwl)s&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Настройка email уведомлений ===&lt;br /&gt;
&lt;br /&gt;
1. Установите почтовый клиент:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo apt install -y mailutils&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Настройте почту:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/action.d/sendmail-common.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Добавьте настройки:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
actionstart = printf %%b &amp;quot;Hi,\n&lt;br /&gt;
              The jail &amp;lt;name&amp;gt; has been started successfully.\n&lt;br /&gt;
              Regards,\n&lt;br /&gt;
              Fail2Ban&amp;quot; | /usr/bin/mail -s &amp;quot;[Fail2Ban] &amp;lt;name&amp;gt;: started on &amp;lt;fq-hostname&amp;gt;&amp;quot; &amp;lt;dest&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actionstop = printf %%b &amp;quot;Hi,\n&lt;br /&gt;
             The jail &amp;lt;name&amp;gt; has been stopped.\n&lt;br /&gt;
             Regards,\n&lt;br /&gt;
             Fail2Ban&amp;quot; | /usr/bin/mail -s &amp;quot;[Fail2Ban] &amp;lt;name&amp;gt;: stopped on &amp;lt;fq-hostname&amp;gt;&amp;quot; &amp;lt;dest&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actioncheck =&lt;br /&gt;
&lt;br /&gt;
actionban = printf %%b &amp;quot;Hi,\n&lt;br /&gt;
            The IP &amp;lt;ip&amp;gt; has just been banned by Fail2Ban after&lt;br /&gt;
            &amp;lt;failures&amp;gt; attempts against &amp;lt;name&amp;gt;.\n&lt;br /&gt;
            Regards,\n&lt;br /&gt;
            Fail2Ban&amp;quot; | /usr/bin/mail -s &amp;quot;[Fail2Ban] &amp;lt;name&amp;gt;: banned &amp;lt;ip&amp;gt; from &amp;lt;fq-hostname&amp;gt;&amp;quot; &amp;lt;dest&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actionunban = printf %%b &amp;quot;Hi,\n&lt;br /&gt;
              The IP &amp;lt;ip&amp;gt; has been unbanned by Fail2Ban from &amp;lt;name&amp;gt;.\n&lt;br /&gt;
              Regards,\n&lt;br /&gt;
              Fail2Ban&amp;quot; | /usr/bin/mail -s &amp;quot;[Fail2Ban] &amp;lt;name&amp;gt;: unbanned &amp;lt;ip&amp;gt; from &amp;lt;fq-hostname&amp;gt;&amp;quot; &amp;lt;dest&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. Настройка защиты SSH ===&lt;br /&gt;
&lt;br /&gt;
=== Базовая защита SSH ===&lt;br /&gt;
&lt;br /&gt;
1. Добавьте в jail.local:&lt;br /&gt;
&amp;lt;code&amp;gt;[sshd]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh&lt;br /&gt;
filter = sshd&lt;br /&gt;
logpath = /var/log/auth.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Расширенная защита SSH ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для SSH:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/sshd.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^%(__prefix_line)s(?:error: PAM: )?[aA]uthentication (?:failure|error) for .* from &amp;lt;HOST&amp;gt;(?: port \d*)?(?: ssh\d*)?(?: on \S+)?\s*$&lt;br /&gt;
            ^%(__prefix_line)s(?:error: PAM: )?User not known to the underlying authentication module for .* from &amp;lt;HOST&amp;gt;\s*$&lt;br /&gt;
            ^%(__prefix_line)sFailed \w+ for .* from &amp;lt;HOST&amp;gt;(?: port \d*)?(?: ssh\d*)?(?: on \S+)?\s*$&lt;br /&gt;
            ^%(__prefix_line)sROOT LOGIN REFUSED.* from &amp;lt;HOST&amp;gt;\s*$&lt;br /&gt;
            ^%(__prefix_line)s[iI](?:llegal|nvalid) user .* from &amp;lt;HOST&amp;gt;\s*$&lt;br /&gt;
            ^%(__prefix_line)sUser .* from &amp;lt;HOST&amp;gt; not allowed because not listed in AllowUsers\s*$&lt;br /&gt;
            ^%(__prefix_line)sauthentication failure; logname=\S* uid=\S* euid=\S* tty=\S* ruser=\S* rhost=&amp;lt;HOST&amp;gt;(?:\s+user=.*)?\s*$&lt;br /&gt;
            ^%(__prefix_line)srefused connect from &amp;lt;HOST&amp;gt;\s*$&lt;br /&gt;
            ^%(__prefix_line)sAddress &amp;lt;HOST&amp;gt; .* POSSIBLE BREAK-IN ATTEMPT!\s*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для SSH:&lt;br /&gt;
&amp;lt;code&amp;gt;[sshd-ddos]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh&lt;br /&gt;
filter = sshd-ddos&lt;br /&gt;
logpath = /var/log/auth.log&lt;br /&gt;
maxretry = 6&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 5. Защита веб-серверов ===&lt;br /&gt;
&lt;br /&gt;
=== Защита Apache ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для Apache:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/apache-auth.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^&amp;lt;HOST&amp;gt; -.*&amp;quot;(GET|POST).*HTTP.*&amp;quot; (401|403) .*$&lt;br /&gt;
            ^&amp;lt;HOST&amp;gt; -.*&amp;quot;(GET|POST).*HTTP.*&amp;quot; (400|404|500) .*$&lt;br /&gt;
            ^&amp;lt;HOST&amp;gt; -.*&amp;quot;GET.*HTTP.*&amp;quot; (200|301|302) .*&amp;quot;.*&amp;quot;.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для Apache:&lt;br /&gt;
&amp;lt;code&amp;gt;[apache-auth]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = http,https&lt;br /&gt;
filter = apache-auth&lt;br /&gt;
logpath = /var/log/apache2/*error.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&lt;br /&gt;
[apache-noscript]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = http,https&lt;br /&gt;
filter = apache-noscript&lt;br /&gt;
logpath = /var/log/apache2/*access.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&lt;br /&gt;
[apache-overflows]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = http,https&lt;br /&gt;
filter = apache-overflows&lt;br /&gt;
logpath = /var/log/apache2/*error.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Защита Nginx ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для Nginx:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/nginx-http-auth.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^&amp;lt;HOST&amp;gt; -.*&amp;quot;(GET|POST).*HTTP.*&amp;quot; (401|403) .*$&lt;br /&gt;
            ^&amp;lt;HOST&amp;gt; -.*&amp;quot;(GET|POST).*HTTP.*&amp;quot; (400|404|500) .*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для Nginx:&lt;br /&gt;
&amp;lt;code&amp;gt;[nginx-http-auth]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = http,https&lt;br /&gt;
filter = nginx-http-auth&lt;br /&gt;
logpath = /var/log/nginx/error.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&lt;br /&gt;
[nginx-limit-req]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = http,https&lt;br /&gt;
filter = nginx-limit-req&lt;br /&gt;
logpath = /var/log/nginx/error.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 6. Защита баз данных ===&lt;br /&gt;
&lt;br /&gt;
=== Защита MySQL ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для MySQL:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/mysql-auth.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^.*\[Warning\].*Access denied for user &amp;#039;.*&amp;#039;@&amp;#039;&amp;lt;HOST&amp;gt;&amp;#039;.*$&lt;br /&gt;
            ^.*\[Warning\].*Access denied for user &amp;#039;.*&amp;#039;@&amp;#039;&amp;lt;HOST&amp;gt;&amp;#039;.*$&lt;br /&gt;
            ^.*\[Warning\].*Access denied for user &amp;#039;.*&amp;#039;@&amp;#039;&amp;lt;HOST&amp;gt;&amp;#039;.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для MySQL:&lt;br /&gt;
&amp;lt;code&amp;gt;[mysql-auth]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = 3306&lt;br /&gt;
filter = mysql-auth&lt;br /&gt;
logpath = /var/log/mysql/error.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Защита PostgreSQL ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для PostgreSQL:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/postgresql.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^.*FATAL:  password authentication failed for user &amp;quot;.*&amp;quot; from &amp;lt;HOST&amp;gt;.*$&lt;br /&gt;
            ^.*FATAL:  no pg_hba.conf entry for host &amp;quot;&amp;lt;HOST&amp;gt;&amp;quot;, user &amp;quot;.*&amp;quot;, database &amp;quot;.*&amp;quot;, SSL off.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для PostgreSQL:&lt;br /&gt;
&amp;lt;code&amp;gt;[postgresql]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = 5432&lt;br /&gt;
filter = postgresql&lt;br /&gt;
logpath = /var/log/postgresql/postgresql-*.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 7. Защита почтовых серверов ===&lt;br /&gt;
&lt;br /&gt;
=== Защита Postfix ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для Postfix:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/postfix.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^.*HOST=&amp;lt;HOST&amp;gt;.*REJECT.*$&lt;br /&gt;
            ^.*HOST=&amp;lt;HOST&amp;gt;.*REJECT.*$&lt;br /&gt;
            ^.*HOST=&amp;lt;HOST&amp;gt;.*REJECT.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для Postfix:&lt;br /&gt;
&amp;lt;code&amp;gt;[postfix]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = smtp,465,submission&lt;br /&gt;
filter = postfix&lt;br /&gt;
logpath = /var/log/mail.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Защита Dovecot ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте фильтр для Dovecot:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/dovecot.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^.*authentication failure.*rip=&amp;lt;HOST&amp;gt;.*$&lt;br /&gt;
            ^.*Login attempt.*rip=&amp;lt;HOST&amp;gt;.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для Dovecot:&lt;br /&gt;
&amp;lt;code&amp;gt;[dovecot]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = pop3,pop3s,imap,imaps,submission,465,sieve&lt;br /&gt;
filter = dovecot&lt;br /&gt;
logpath = /var/log/mail.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 8. Продвинутые настройки ===&lt;br /&gt;
&lt;br /&gt;
=== Настройка whitelist ===&lt;br /&gt;
&lt;br /&gt;
1. Добавьте в jail.local:&lt;br /&gt;
&amp;lt;code&amp;gt;[DEFAULT]&lt;br /&gt;
ignoreip = 127.0.0.1/8 ::1 192.168.1.0/24 10.0.0.0/8&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Создайте файл whitelist:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/ignoreip.local&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Добавьте IP адреса:&lt;br /&gt;
&amp;lt;code&amp;gt;# Доверенные IP адреса&lt;br /&gt;
192.168.1.100&lt;br /&gt;
192.168.1.101&lt;br /&gt;
10.0.0.50&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Настройка blacklist ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте файл blacklist:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/blacklist.local&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте IP адреса:&lt;br /&gt;
&amp;lt;code&amp;gt;# Заблокированные IP адреса&lt;br /&gt;
192.168.1.200&lt;br /&gt;
192.168.1.201&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для blacklist:&lt;br /&gt;
&amp;lt;code&amp;gt;[blacklist]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh,http,https&lt;br /&gt;
filter = blacklist&lt;br /&gt;
logpath = /var/log/fail2ban.log&lt;br /&gt;
maxretry = 1&lt;br /&gt;
bantime = -1&lt;br /&gt;
findtime = 1&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Настройка кастомных фильтров ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте кастомный фильтр:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/filter.d/custom.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте правила:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
failregex = ^.*&amp;lt;HOST&amp;gt;.*FAILED.*$&lt;br /&gt;
            ^.*&amp;lt;HOST&amp;gt;.*ERROR.*$&lt;br /&gt;
            ^.*&amp;lt;HOST&amp;gt;.*DENIED.*$&lt;br /&gt;
&lt;br /&gt;
ignoreregex =&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail для кастомного фильтра:&lt;br /&gt;
&amp;lt;code&amp;gt;[custom]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh,http,https&lt;br /&gt;
filter = custom&lt;br /&gt;
logpath = /var/log/custom.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 9. Мониторинг и управление ===&lt;br /&gt;
&lt;br /&gt;
=== Просмотр статуса ===&lt;br /&gt;
&lt;br /&gt;
1. &amp;#039;&amp;#039;&amp;#039;Просмотр активных jail&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client status&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Просмотр статуса конкретного jail&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client status sshd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. &amp;#039;&amp;#039;&amp;#039;Просмотр заблокированных IP&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client status sshd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Управление jail ===&lt;br /&gt;
&lt;br /&gt;
1. &amp;#039;&amp;#039;&amp;#039;Запуск jail&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client start sshd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Остановка jail&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client stop sshd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. &amp;#039;&amp;#039;&amp;#039;Перезапуск jail&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client restart sshd&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. &amp;#039;&amp;#039;&amp;#039;Перезагрузка конфигурации&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Управление IP адресами ===&lt;br /&gt;
&lt;br /&gt;
1. &amp;#039;&amp;#039;&amp;#039;Разблокировка IP&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client set sshd unbanip 192.168.1.100&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Блокировка IP&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client set sshd banip 192.168.1.100&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. &amp;#039;&amp;#039;&amp;#039;Просмотр заблокированных IP&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client get sshd banned&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 10. Настройка логирования ===&lt;br /&gt;
&lt;br /&gt;
=== Настройка логов fail2ban ===&lt;br /&gt;
&lt;br /&gt;
1. Настройте логирование:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/fail2ban.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Измените параметры:&lt;br /&gt;
&amp;lt;code&amp;gt;loglevel = INFO&lt;br /&gt;
logtarget = /var/log/fail2ban.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте ротацию логов:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/logrotate.d/fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Добавьте конфигурацию:&lt;br /&gt;
&amp;lt;code&amp;gt;/var/log/fail2ban.log {&lt;br /&gt;
    daily&lt;br /&gt;
    missingok&lt;br /&gt;
    rotate 52&lt;br /&gt;
    compress&lt;br /&gt;
    delaycompress&lt;br /&gt;
    notifempty&lt;br /&gt;
    create 644 root root&lt;br /&gt;
    postrotate&lt;br /&gt;
        systemctl reload fail2ban&lt;br /&gt;
    endscript&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Создание скрипта мониторинга ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте скрипт мониторинга:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /usr/local/bin/fail2ban-monitor.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте содержимое:&lt;br /&gt;
&amp;lt;code&amp;gt;#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Проверка статуса fail2ban&lt;br /&gt;
if ! systemctl is-active --quiet fail2ban; then&lt;br /&gt;
    echo &amp;quot;Fail2ban is down!&amp;quot; | mail -s &amp;quot;Fail2ban Alert&amp;quot; admin@example.com&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# Проверка количества заблокированных IP&lt;br /&gt;
BLOCKED_COUNT=$(sudo fail2ban-client status sshd | grep &amp;quot;Currently banned:&amp;quot; | awk &amp;#039;{print $4}&amp;#039;)&lt;br /&gt;
if [ $BLOCKED_COUNT -gt 10 ]; then&lt;br /&gt;
    echo &amp;quot;High number of blocked IPs: $BLOCKED_COUNT&amp;quot; | mail -s &amp;quot;Fail2ban Alert&amp;quot; admin@example.com&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
# Проверка логов на ошибки&lt;br /&gt;
ERROR_COUNT=$(grep -c &amp;quot;ERROR&amp;quot; /var/log/fail2ban.log 2&amp;gt;/dev/null || echo 0)&lt;br /&gt;
if [ $ERROR_COUNT -gt 5 ]; then&lt;br /&gt;
    echo &amp;quot;Fail2ban errors detected: $ERROR_COUNT&amp;quot; | mail -s &amp;quot;Fail2ban Alert&amp;quot; admin@example.com&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Сделайте скрипт исполняемым:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo chmod +x /usr/local/bin/fail2ban-monitor.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Добавьте в crontab:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo crontab -e&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. Добавьте задачу:&lt;br /&gt;
&amp;lt;code&amp;gt;*/5 * * * * /usr/local/bin/fail2ban-monitor.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 11. Настройка уведомлений ===&lt;br /&gt;
&lt;br /&gt;
=== Настройка Slack уведомлений ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте Slack webhook:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/action.d/slack.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Добавьте конфигурацию:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
actionstart = curl -X POST -H &amp;#039;Content-type: application/json&amp;#039; --data &amp;#039;{&amp;quot;text&amp;quot;:&amp;quot;Fail2ban jail &amp;lt;name&amp;gt; started on &amp;lt;fq-hostname&amp;gt;&amp;quot;}&amp;#039; &amp;lt;slack_webhook_url&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actionstop = curl -X POST -H &amp;#039;Content-type: application/json&amp;#039; --data &amp;#039;{&amp;quot;text&amp;quot;:&amp;quot;Fail2ban jail &amp;lt;name&amp;gt; stopped on &amp;lt;fq-hostname&amp;gt;&amp;quot;}&amp;#039; &amp;lt;slack_webhook_url&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actioncheck =&lt;br /&gt;
&lt;br /&gt;
actionban = curl -X POST -H &amp;#039;Content-type: application/json&amp;#039; --data &amp;#039;{&amp;quot;text&amp;quot;:&amp;quot;IP &amp;lt;ip&amp;gt; banned by Fail2ban after &amp;lt;failures&amp;gt; attempts against &amp;lt;name&amp;gt;&amp;quot;}&amp;#039; &amp;lt;slack_webhook_url&amp;gt;&lt;br /&gt;
&lt;br /&gt;
actionunban = curl -X POST -H &amp;#039;Content-type: application/json&amp;#039; --data &amp;#039;{&amp;quot;text&amp;quot;:&amp;quot;IP &amp;lt;ip&amp;gt; unbanned by Fail2ban from &amp;lt;name&amp;gt;&amp;quot;}&amp;#039; &amp;lt;slack_webhook_url&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Настройте jail с Slack уведомлениями:&lt;br /&gt;
&amp;lt;code&amp;gt;[sshd]&lt;br /&gt;
enabled = true&lt;br /&gt;
port = ssh&lt;br /&gt;
filter = sshd&lt;br /&gt;
logpath = /var/log/auth.log&lt;br /&gt;
maxretry = 3&lt;br /&gt;
bantime = 3600&lt;br /&gt;
findtime = 600&lt;br /&gt;
action = slack&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Настройка Telegram уведомлений ===&lt;br /&gt;
&lt;br /&gt;
1. Создайте Telegram бота и получите токен&lt;br /&gt;
2. Создайте конфигурацию:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo nano /etc/fail2ban/action.d/telegram.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Добавьте настройки:&lt;br /&gt;
&amp;lt;code&amp;gt;[Definition]&lt;br /&gt;
actionstart = curl -s -X POST &amp;quot;https://api.telegram.org/bot&amp;lt;bot_token&amp;gt;/sendMessage&amp;quot; -d chat_id=&amp;lt;chat_id&amp;gt; -d text=&amp;quot;Fail2ban jail &amp;lt;name&amp;gt; started on &amp;lt;fq-hostname&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
actionstop = curl -s -X POST &amp;quot;https://api.telegram.org/bot&amp;lt;bot_token&amp;gt;/sendMessage&amp;quot; -d chat_id=&amp;lt;chat_id&amp;gt; -d text=&amp;quot;Fail2ban jail &amp;lt;name&amp;gt; stopped on &amp;lt;fq-hostname&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
actioncheck =&lt;br /&gt;
&lt;br /&gt;
actionban = curl -s -X POST &amp;quot;https://api.telegram.org/bot&amp;lt;bot_token&amp;gt;/sendMessage&amp;quot; -d chat_id=&amp;lt;chat_id&amp;gt; -d text=&amp;quot;IP &amp;lt;ip&amp;gt; banned by Fail2ban after &amp;lt;failures&amp;gt; attempts against &amp;lt;name&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
actionunban = curl -s -X POST &amp;quot;https://api.telegram.org/bot&amp;lt;bot_token&amp;gt;/sendMessage&amp;quot; -d chat_id=&amp;lt;chat_id&amp;gt; -d text=&amp;quot;IP &amp;lt;ip&amp;gt; unbanned by Fail2ban from &amp;lt;name&amp;gt;&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 12. Устранение неполадок ===&lt;br /&gt;
&lt;br /&gt;
=== Частые проблемы ===&lt;br /&gt;
&lt;br /&gt;
1. &amp;#039;&amp;#039;&amp;#039;Fail2ban не запускается&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
* Проверьте конфигурацию: &amp;lt;code&amp;gt;sudo fail2ban-client -t&amp;lt;/code&amp;gt;&lt;br /&gt;
* Проверьте логи: &amp;lt;code&amp;gt;sudo journalctl -u fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
* Проверьте права доступа к файлам&lt;br /&gt;
&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Jail не работает&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
* Проверьте фильтры: &amp;lt;code&amp;gt;sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Проверьте пути к логам&lt;br /&gt;
* Проверьте права доступа к логам&lt;br /&gt;
&lt;br /&gt;
3. &amp;#039;&amp;#039;&amp;#039;Ложные срабатывания&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
* Настройте whitelist&lt;br /&gt;
* Измените параметры maxretry и findtime&lt;br /&gt;
* Проверьте фильтры&lt;br /&gt;
&lt;br /&gt;
=== Диагностика ===&lt;br /&gt;
&lt;br /&gt;
1. &amp;#039;&amp;#039;&amp;#039;Проверка статуса&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo systemctl status fail2ban&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Проверка конфигурации&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-client -t&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. &amp;#039;&amp;#039;&amp;#039;Тестирование фильтров&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. &amp;#039;&amp;#039;&amp;#039;Проверка логов&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo tail -f /var/log/fail2ban.log&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. &amp;#039;&amp;#039;&amp;#039;Проверка iptables&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;code&amp;gt;sudo iptables -L -n&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Заключение ==&lt;br /&gt;
&lt;br /&gt;
Fail2ban успешно настроен и готов к работе! Теперь у вас есть мощная защита от атак с возможностями мониторинга, уведомлений и гибкой настройки.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Для размещения ваших защищенных серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;[Выделенные серверы](https://ark-hoster.ru/dedicated/)&amp;#039;&amp;#039;&amp;#039; - для критически важных серверов с повышенной защитой&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;[VPS/VDS серверы](https://ark-hoster.ru/vpsgame/)&amp;#039;&amp;#039;&amp;#039; - для небольших и средних проектов&lt;br /&gt;
&lt;br /&gt;
Наши специалисты помогут с настройкой fail2ban и обеспечением безопасности ваших серверов!&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
</feed>