Всем привет.
По умолчанию SSH-сервер открывает для входящих соединений 22 TCP-порт, и тем самым вызывает потенциальную угрозу bruteforce-атак, поскольку злоумышленник обнаружив на сервере такой открытый порт, пытается подобрать пароль к удалённому серверу при помощи специальных средств.
Особо отметим, что не стоит воспринимать смену стандартного порта SSH-сервера как панацею. Китайская мудрость гласит - «Security by Obscurity is no Security at all». Не забывайте и про другие методы защиты SSH, такие как правильная настройка межсетевого экрана, разрешение доступа только ограниченному набору IP-адресов, отказ от парольной аутентификации и использование ключей RSA/DSA, и т.п.
Конфигурация SSH-сервера обычно располагается в /etc/ssh/sshd_config. Для редактирования этого файла вам потребуются привилегии суперпользователя root, или возможность выполнить sudo для получения таких привилегий текстовым редактором.
Выполним команду:
sudo nano /etc/ssh/sshd_config
В открывшемся файле найдите следующую строку:
Port 22
Закомментируйте её и добавьте новую строку со случайным номером порта, например 58291. Номер порта не должен превышать 65535. Также удостоверьтесь, что выбранное вами значение не конфликтует с другими сервисами в системе, например mysqld использует порт 3306, httpd - 80, ftpd - 21. Рекомендуем выбрать пятизначное значение. На всякий случай, для просмотра уже открытых в системе портов, выполните следующую команду:
netstat -tupln | grep LISTEN
После модификации, участок файла конфигурации SSH должен выглядеть примерно так:
#Port 22
Port 58291
Что-бы SSH-сервер начал слушать новый порт вместо прежнего, его нужно перезапустить:
/etc/init.d/ssh restart
или
/etc/init.d/sshd restart
На всякий случай прочитайте журнал командой journalctl -xe на возможные ошибки.
Итак, теперь когда у нас есть SSH-сервер, слушающий альтернативный порт, как с ним соединяться? Если вы попытаетесь соединиться при помощи командной строки Linux, то по умолчанию SSH-клиент попытается использовать стандартный порт, и это приведёт к ошибке подключения:
ssh zabbix-server
ssh: connect to host zabbix-server port 22: Connection refused
Вместо этого вы должны передать SSH-клиенту номер порта значением параметра -p, а именно так:
ssh -p 58291 zabbix-server
Теперь соединение пройдёт успешно. Нет? Не успешно. И такое возможно. Это происходит в том случае если у вас активирован фаерволл: iptables либо ufw в зависимости от версии Linux.
Проверьте чтобы был открыт 58921-й порт командой iptables -S либо ufw status verbose. Если порт закрыт то пропишите соответствующие правила.
И пробуйте еще раз. У вас получится.
No comments:
Post a Comment
А что вы думаете по этому поводу?