Предотвращение подбора пароля к серверу 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 fail2ban
sudo systemctl enable fail2ban
sudo 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
Следуя этим шагам, вы сможете значительно повысить безопасность вашего сервера и предотвратить атаки подбора пароля.