🛡 Настройка безопасного SSH-соединенияЧтобы минимизировать риски и усилить защиту сервера, необходимо настроить SSH-соединение с дополнительными мерами безопасности. Сегодня рассмотрим ключевые шаги для улучшения безопасности SSH.
1️⃣ Отключение входа по паролю. Использование паролей может быть уязвимо к атакам типа brute-force. Настройка входа по SSH-ключам делает подключение гораздо более защищенным.
Создание SSH-ключа:
ssh-keygen -t rsa -b 4096
Добавление ключа на сервер:
ssh-copy-id user@server_ip
После успешного добавления ключа, в файле
/etc/ssh/sshd_config
измените строку: PasswordAuthentication no
2️⃣ Изменение стандартного порта SSH. Для предотвращения автоматизированных сканирований лучше изменить стандартный порт с 22 на менее очевидный.
Для этого Измените строку в файле
/etc/ssh/sshd_config
: Port 2222
3️⃣ Ограничение входа по IP-адресам. Если возможно, настройте брандмауэр для разрешения подключения к SSH только с определенных IP-адресов.
Используйте
ufw
для настройки правил:
sudo ufw allow from 192.168.1.100 to any port 2222
sudo ufw enable
4️⃣ Настройка двухфакторной аутентификации (2FA). Установка двухфакторной аутентификации добавляет дополнительный уровень защиты.
Установите Google Authenticator:
sudo apt install libpam-google-authenticator
Настройте PAM для использования 2FA, добавив строку в /etc/pam.d/sshd: auth required pam_google_authenticator.so
5️⃣ Ограничение числа попыток подключения. Используйте fail2ban для защиты от атак грубой силы.
Установите fail2ban:
sudo apt install fail2ban
Настройте его в
/etc/fail2ban/jail.local
:
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
6️⃣ Отключение входа для root. Чтобы защитить сервер, запретите прямой вход root-пользователя.
В файле
/etc/ssh/sshd_config
измените: PermitRootLogin no
Комбинация использования SSH-ключей, изменения порта, ограничения доступа и дополнительных мер, таких как 2FA и fail2ban, делает сервер значительно менее уязвимым к атакам.
#linux #security
🧑💻 NetworkAdmin