Перейти к содержанию

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

Для проверки брутфорса ващего сервера используйте команду

sudo tail -f /var/log/auth.log

если вы видите что то подобное, то я вас поздравляю ) ваш сервер брутфорсят

1. Использование Fail2Ban

Fail2Ban — это инструмент, который автоматически блокирует IP-адреса, которые пытаются подключиться к вашему серверу с неправильными учетными данными.

  1. Установите Fail2Ban:

sudo apt-get update
sudo apt-get install fail2ban
2. Настройте Fail2Ban для SSH:

Откройте файл конфигурации /etc/fail2ban/jail.local и добавьте следующие строки:

[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 3
3. Перезапустите Fail2Ban и добавляем в автозагрузку:

sudo systemctl restart fail2bansudo systemctl enable fail2bansudo systemctl is-enabled fail2ban

в итоге видим какие IP забанены в логах

tail -f /var/log/fail2ban.log

2. Изменение порта SSH

Изменение порта SSH с стандартного 22 на другой порт может помочь уменьшить количество автоматических атак.

  1. Откройте файл конфигурации SSH:

sudo nano /etc/ssh/sshd_config
2. Измените порт SSH:

Найдите строку #Port 22 и измените её на:

Port 2222
3. Перезапустите SSH-сервер:

sudo systemctl restart ssh
4. Обновите правила файрвола:

Убедитесь, что новый порт открыт в вашем файрволе.

3. Использование ключей SSH вместо паролей

Отключение аутентификации по паролю и использование только ключей SSH значительно повысит безопасность.

  1. Откройте файл конфигурации SSH:

sudo nano /etc/ssh/sshd_config
2. Отключите аутентификацию по паролю:

Найдите строку #PasswordAuthentication yes и измените её на:

PasswordAuthentication no
3. Перезапустите SSH-сервер:

sudo systemctl restart ssh

4. Ограничение доступа по IP

Ограничьте доступ к SSH только с определенных IP-адресов.

  1. Откройте файл конфигурации SSH:

sudo nano /etc/ssh/sshd_config
2. Добавьте строку для ограничения доступа:

AllowUsers your_username@your_ip_address
3. Перезапустите SSH-сервер:

sudo systemctl restart ssh

5. Использование двухфакторной аутентификации (2FA)

Добавление двухфакторной аутентификации (2FA) может значительно повысить безопасность.

  1. Установите Google Authenticator:

sudo apt-get install libpam-google-authenticator
2. Настройте Google Authenticator для SSH:

Откройте файл конфигурации PAM /etc/pam.d/sshd и добавьте следующую строку:

auth required pam_google_authenticator.so
3. Настройте SSH для использования PAM:

Откройте файл конфигурации SSH /etc/ssh/sshd_config и убедитесь, что строка UsePAM установлена в yes:

UsePAM yes
4. Перезапустите SSH-сервер:

sudo systemctl restart ssh

Следуя этим шагам, вы сможете значительно повысить безопасность вашего сервера и предотвратить атаки подбора пароля.