7 Май, 2016

Безопасность SSH сервера

Один из основных способов взлома сервера — подбор пароля к учетной записи администратора по протоколу SSH. Уделим несколько минут безопасности сервера и постараемся оградить себя от подобных неприятностей.

Для этого мы изменим настройки в файле /etc/ssh/sshd_config (настройки по умолчанию закомментированы символом #):

#Port 22
Port 2785

Чтобы злоумышленник не смог подбирать пароли, спрячем от него SSH-сервер. Вы можете указать любой свободный порт, главное его не забудьте, иначе не сможете получить доступ к серверу. Желательно указывать >1024. Не забудьте изменить порт в своем SSH-клиенте.

#Protocol 2,1
Protocol 2

По умолчанию сервер разрешает клиенту работать с двумя версиями протокола SSH. Первая версия менее защищенная и этим тоже могут воспользоваться хакеры. Большинство популярных SSH-клиентов поддерживают обе версии протокола, так что протокол первой версии можно отключать — проблем с доступом к серверу у вас не возникнет.

#PermitRootLogin yes
PermitRootLogin no

В этой строке мы запрещаем авторизацию пользователя root. Теперь злоумышленнику нужно подбирать не только пароль, но и логин, что намного сложнее. Чтобы получить доступ с правами администратора, необходимо сначала зайти на сервер под обычной учетной записью, а затем выполнить команду su — и ввести пароль пользователя root.

Так же от перебора паролей можно установить fail2ban, которая при превышении заданного числа неудачных вводов пароля подряд (по умолчанию — 6) банит IP — адрес, с которого были попытки подбора на заданное время (по умолчанию — 600 секунд).ss