Предотвращение подбора пароля к серверу SSH

Для проверки брутфорса ващего сервера используйте команду
sudo tail -f /var/log/auth.logесли вы видите что то подобное, то я вас поздравляю ) ваш сервер брутфорсят

1. Использование Fail2Ban
Fail2Ban — это инструмент, который автоматически блокирует IP-адреса, которые пытаются подключиться к вашему серверу с неправильными учетными данными.
- Установите Fail2Ban:
sudo apt-get update sudo apt-get install fail2ban - Настройте Fail2Ban для SSH:
Откройте файл конфигурации
/etc/fail2ban/jail.localи добавьте следующие строки:[sshd] enabled = true port = ssh logpath = /var/log/auth.log maxretry = 3 - Перезапустите Fail2Ban и добавляем в автозагрузку:
sudo systemctl restart fail2bansudo systemctl enable fail2bansudo systemctl is-enabled fail2ban
в итоге видим какие IP забанены в логах
tail -f /var/log/fail2ban.log
2. Изменение порта SSH
Изменение порта SSH с стандартного 22 на другой порт может помочь уменьшить количество автоматических атак.
- Откройте файл конфигурации SSH:
sudo nano /etc/ssh/sshd_config - Измените порт SSH:
Найдите строку
#Port 22и измените её на:Port 2222 - Перезапустите SSH-сервер:
sudo systemctl restart ssh - Обновите правила файрвола:
Убедитесь, что новый порт открыт в вашем файрволе.
3. Использование ключей SSH вместо паролей
Отключение аутентификации по паролю и использование только ключей SSH значительно повысит безопасность.
- Откройте файл конфигурации SSH:
sudo nano /etc/ssh/sshd_config - Отключите аутентификацию по паролю:
Найдите строку
#PasswordAuthentication yesи измените её на:PasswordAuthentication no - Перезапустите SSH-сервер:
sudo systemctl restart ssh
4. Ограничение доступа по IP
Ограничьте доступ к SSH только с определенных IP-адресов.
- Откройте файл конфигурации SSH:
sudo nano /etc/ssh/sshd_config - Добавьте строку для ограничения доступа:
AllowUsers your_username@your_ip_address - Перезапустите SSH-сервер:
sudo systemctl restart ssh
5. Использование двухфакторной аутентификации (2FA)
Добавление двухфакторной аутентификации (2FA) может значительно повысить безопасность.
- Установите Google Authenticator:
sudo apt-get install libpam-google-authenticator - Настройте Google Authenticator для SSH:
Откройте файл конфигурации PAM
/etc/pam.d/sshdи добавьте следующую строку:auth required pam_google_authenticator.so - Настройте SSH для использования PAM:
Откройте файл конфигурации SSH
/etc/ssh/sshd_configи убедитесь, что строкаUsePAMустановлена вyes:UsePAM yes - Перезапустите SSH-сервер:
sudo systemctl restart ssh
Следуя этим шагам, вы сможете значительно повысить безопасность вашего сервера и предотвратить атаки подбора пароля.
