#Как распознать проблему и когда применять инструкции
После включения Fail2ban работающий sshd перестал принимать подключения с определённого адреса. Требуется доказать наличие блокировки и исправить причину повторных неудачных входов, сохранив защиту. Уточните модель/сборку системы, наличие резервной копии и способ восстановить доступ, прежде чем применять действия.
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| IP попал в блокировкуСерия ошибок авторизации из одного адреса | jail sshd содержит адрес в Banned IP list | Смотрите соответствующий диагностический шаг ниже: проверяйте именно этот признак перед изменением настроек. |
| Блокируется другой узелЧерез NAT несколько клиентов используют один внешний IP | Другие люди за тем же роутером также не входят | Смотрите соответствующий диагностический шаг ниже: проверяйте именно этот признак перед изменением настроек. |
| Сработал иной фильтрФаервол, провайдер или другой jail | sshd не фиксирует входящие пакеты | Смотрите соответствующий диагностический шаг ниже: проверяйте именно этот признак перед изменением настроек. |
#Подробная проверка и безопасное решение
- Шаг 1. Сохраните доступ через консоль провайдераНе отключайте Fail2ban и не очищайте все правила. Если SSH уже недоступен, откройте веб-консоль сервера в панели хостера и войдите с разрешённой административной учётной записью.
- Шаг 2. Проверьте состояние службы и перечень jailВ консоли сервера выполните команды с правами администратора. В выводе ищите имя sshd; если jail нет, причина может быть в другом правиле. Не считайте любой отказ доказательством работы Fail2ban.
- Выполняется в терминале сервера с правами администратора; требуется разрешение владельцаLinux · Терминал (Bash)КомандаНужен sudoВыполняется в терминале сервера с правами администратора; требуется разрешение владельца. Уточните фактические адреса и имена, прочитайте вывод и не выполняйте действия, если среда отличается от описанной.
sudo fail2ban-client status
- Шаг 3. Посмотрите блокировки только SSHЕсли jail называется sshd, проверьте его список; не все установки имеют именно такое имя. Адрес клиента узнавайте у пользователя по внешнему адресу, не по 192.168.x.x.
- Выполняется в терминале сервера с правами администратора; требуется разрешение владельцаLinux · Терминал (Bash)КомандаНужен sudoВыполняется в терминале сервера с правами администратора; требуется разрешение владельца. Уточните фактические адреса и имена, прочитайте вывод и не выполняйте действия, если среда отличается от описанной.
sudo fail2ban-client status sshd
- Шаг 4. Сопоставьте адрес с событиями входаПри наличии systemd-journald проверьте свежие записи SSH и Fail2ban. На Debian единица часто называется ssh, в RHEL-подобных — sshd; выберите фактическое имя. Секреты из журналов не отправляйте третьим лицам.
- Выполняется в терминале сервера с правами администратора; требуется разрешение владельцаLinux · Терминал (Bash)КомандаНужен sudoВыполняется в терминале сервера с правами администратора; требуется разрешение владельца. Уточните фактические адреса и имена, прочитайте вывод и не выполняйте действия, если среда отличается от описанной.
sudo journalctl -u fail2ban --since "30 minutes ago" --no-pager
- Шаг 5. Сначала устраните причину неудачных попытокНа клиенте проверьте правильные имя, порт, ключ и число предлагаемых ключей. Если сервер после разблокировки продолжит получать ошибочные входы, запрет быстро вернётся.
- Шаг 6. Точечно снимите подтверждённую ошибочную блокировкуТолько после сверки IP клиента, причин и политики безопасности используйте адресное действие. Замените 203.0.113.25 реальным публичным адресом; это действие уменьшает защиту только для конкретного адреса на текущий период.
- Выполняется в терминале сервера с правами администратора; требуется разрешение владельцаLinux · Терминал (Bash)С осторожностьюНужен sudoВыполняется в терминале сервера с правами администратора; требуется разрешение владельца. Уточните фактические адреса и имена, прочитайте вывод и не выполняйте действия, если среда отличается от описанной.
sudo fail2ban-client set sshd unbanip 203.0.113.25Команда может изменить состояние системы или её настройки. Проверьте параметры и последствия перед запуском.
- Шаг 7. Проверьте новый вход и повторный банПопросите пользователя открыть отдельную SSH-сессию без закрытия консоли хостера. Повторно посмотрите status sshd. Если блокировка возвращается, исправьте источник ошибок либо аккуратно скорректируйте allowlist для известного постоянного адреса согласно политике организации.
- Выполняется в терминале сервера с правами администратора; требуется разрешение владельцаLinux · Терминал (Bash)КомандаНужен sudoВыполняется в терминале сервера с правами администратора; требуется разрешение владельца. Уточните фактические адреса и имена, прочитайте вывод и не выполняйте действия, если среда отличается от описанной.
sudo fail2ban-client status sshd
#Как проверить результат и что делать, если не помогло
SSH работает с авторизованного адреса, в журнале нет новых повторяющихся ошибок и jail продолжает защищать сервер. Массово отключать Fail2ban ради доступа нельзя. Если симптомы не исчезли, сохраните точное сообщение об ошибке и выполненные проверки; не повторяйте опасные процедуры циклически.