Защита SSH от взлома
Меня пытаются взломать, вижу у себя в логах такое
Sep 26 21:00:15 357 sshd[27583]: error: PAM: authentication error for illegal user admin from 188.32.20.178
Sep 26 21:00:16 357 sshd[27586]: error: PAM: authentication error for illegal user conf from 92.127.203.245
Sep 26 21:00:24 357 sshd[27589]: error: PAM: authentication error for illegal user user from 171.211.195.54
Sep 26 21:00:26 357 sshd[27592]: error: PAM: authentication error for illegal user root from 188.255.172.243
Sep 26 21:00:32 357 sshd[27595]: error: PAM: authentication error for illegal user support from 177.105.235.47
Что делать?
Прежде всего, не паниковать. Ничего страшного. Подобные сообщения можно найти на любом сервере с белым IP. Злоумышленники массово сканируют подсети,
т.е. берут например 185.12.92.0/24 и пробуют подключиться к 22-му порту на каждом IP этой подсети. Если подключение произошло успешно - перебирают
простые комбинации логинов/паролей. Т.е. например root:root, user:user, admin:admin и т.д. Если пароли на вашем сервере хоть чуть-чуть сложные пароли,
волноваться не о чем. Проблем здесь только 2:
1) если у вас слабый процессор, SSH в момент перебора может давать ощутимую нагрузку;
2) если вы пытаетесь войти по SSH в момент перебора, то может не получиться из-за превышения максимального числа подключений к SSH.
Решается все это очень просто, достаточно перевесить SSH на нестандартный порт, например с 22 на 3322. Конечно, чисто технически кто-то может
просканировать ваш сервер с помощью nmap и найти, на каком порту висит SSH. Но на практике этого не происходит: не получив ответа с 22-го порта бот,
просто переходит к следующему IP.
Есть программы типа fail2ban, стоит ли их использовать?
Скорее всего, fail2ban вам не нужен. В каких случаях он может понадобится:
1) вам обязательно нужно чтобы SSH висел именно на 22-м порту (например к нему подсоединяется какое-то стороннее ПО, у которого нельзя порт
поменять);
2) у вас на сервере несколько сотен пользователей, и у всех включен ssh (это кстати будет нарушением наших правил - шелл-хостинг запрещен),
соответственно наверняка среди них найдется какой-нибудь vasya, который захочет облегчить себе жизнь и поставит пароль vasya;
3) имеются реальные основания полагать, что брутят вас какие-то конкретные недоброжелатели, а не залетные боты (например смена порта не помогла); но
тут уже стоит подумать не о fail2ban, а например об ограничении подключения к ssh только для определенных IP.
А если нужно защитить FTP?
Все вышесказанное применимо и к FTP. Его тоже можно перевесить на другой порт.
[Отредактировано 30.9.2014 кто timru]
|