Хотя останавливать брандмауэр - не лучшая идея, я предлагаю запустить брандмауэр и разрешить входящий порт 9922 с помощью
/ sbin / iptables -A INPUT -p tcp --dport 9922 -j ACCEPT
Вероятно, на вашем сервере должен быть включен SELinux. Если он вам не нужен, отключите его временно с помощью setenforce 0
или навсегда, изменив файл / etc / selinux / config
.
Если вы хотите использовать SELinux, разрешите sshd
связываться с портом 9922:
semanage port -a -t ssh_port_t -p tcp 9922
У вас может быть несколько строк Port
в вашем sshd.conf, например
Port 22
Port 2222
#Protocol 2,1
Protocol 2
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
Я обычно делаю это, потому что у меня есть открытый брандмауэр / NAT в качестве альтернативы порт, но будет необходимо, чтобы внутренние системы обращались к серверу через традиционный порт 22.
Убедитесь, что вы перезапустили демон ssh ( service sshd restart
) после любых изменений файла конфигурации.
Что происходит. если вы nmap -p 9922 192.168.26.153
? Показывает, что порт открыт?
Ошибка в отладочных выводах вашего ssh-клиента должна быть «Тайм-аут соединения» вместо «Нет маршрута к хосту». Что между вами и целевой системой?
Для меня это была комбинация Selinux и Firewall, я нашел решение, которое работает следующим образом:
Как уже было предложено, расслабление Selinux:
semanage port -a -t ssh_port_t -p tcp 9922
И после этого, изменение даже брандмауэра разрешение:
sudo firewall-cmd --zone=public --add-port=9922/tcp --permanent
sudo firewall-cmd --reload
Эти два изменения позволяют мне получить доступ к серверу с новым ssh-port