Как сменить порт SSH
- Опубликовано в Wiki
- Станьте первым комментатором!
Для безопасности любого сервера, настоятельно рекомендуем менять стандартный порт SSH 22 на любой другой не занятый. Так как это самый часто задаваемый вопрос у новичков, мы публикуем инструкцию.
Если у Вас на сервере стоит брандмауэра, то в первую очередь нужно разрешить доступ по этому порту. К примеру если Вы используете UFW, то если мы хотим сменить стандартный порт на 3753, то выполните команду:
sudo ufw allow 3753/tcp
В CentOS обычно используется FirewallD, то для открытия нового порта нужно выполнить команды:
sudo firewall-cmd --permanent --zone=public --add-port=3753/tcp
sudo firewall-cmd --reload
Если CentOS еще необходимо настроить правила SELinux
sudo semanage port -a -t ssh_port_t -p tcp 3753 systemctl restart sshd
Если же на сервере стоит iptables, то выполните следующую команду:
sudo /sbin/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3753 -j ACCEPT
Для FreeBSD / OpenBSD / NetBSD Unix брандмаузером является pf firewall
pass log on $ext_if proto tcp to any port 2222 keep state
Если нет никакого брандмаузера (а это будет печально, но исправимо), то приступаем к смене порта. Если не знаете по какому пути установлен конфигурационный файл sshd_config, то его можно найти с помощью команды:
find / -name "sshd_config"
Стандартно он находится по следующему пути sshd_config Вот его нам и нужно отредактировать.
Мы рекомендуем использовать для редактирования файлов редактор nano (команда для установки apt-get install nano), стандартный vi, мы считаем не удобным, хотя это дело привычки и вкуса.
Что бы отредактировать конфигурационный файл выполняем команду на открытие в редакторе:
sudo nano /etc/ssh/sshd_config
Если редактор vi, то открываем:
sudo vi /etc/ssh/sshd_config
Найдите строку #Port 22 или Port 22 и замените ее на Port3753
Сохраняем, закрываем файл и перезапускаем службу:
CentOS / RHEL / Fedora Linux: sudo service sshd restart
CentOS / RHEL / Fedora Linux с systemd: sudo systemctl restart sshd
Ubuntu / Debian / Mint Linux: sudo service ssh restart
Ubuntu / Debian / Mint Linux с systemd: sudo ystemctl restart ssh
FreeBSD Unix: sudo service sshd restart