SSH является наиболее безопасным средством удаленного подключения к серверам Linux.
И одной из распространенных ошибок, возникающих при использовании SSH, является «ssh: connect to host port 22: No route to host».
В этой короткой статье мы покажем, как устранить неполадки и исправить эту ошибку.
Вот скриншот ошибки, о которой мы говорим.
Обратите внимание, что порт не обязательно может быть портом 22, в зависимости от ваших настроек на удаленном хосте.
В качестве меры безопасности системные администраторы могут настроить доступ к SSH через другой порт:
Как изменить номер порта для ssh
Существуют разные причины возникновения этой ошибки.
Первый, как правило, заключается в том, что удаленный сервер может быть отключен, поэтому вам нужно проверить, работает ли он, используя команду ping.
# ping 192.168.56.100
Исходя из результатов команды ping, сервер запущен и работает, поэтому он принимает эхо-запросы.
В этом случае причина ошибки кроется в другом.
Если на удаленном сервере запущена служба брандмауэра, возможно, брандмауэр блокирует доступ через порт 22.
Поэтому вам необходим физический доступ к консоли сервера или, если это VPS, вы можете использовать любые другие средства, такие как VNC (если он уже настроен) или другие пользовательские приложения для удаленного доступа к серверу, предоставляемые вашим поставщиком услуг VPS.
Войдите в систему и получите доступ к командной строке.
Затем используйте firewall-cmd (RHEL / CentOS / Fedora) или UFW (Debian / Ubuntu), чтобы открыть порт 22 (или порт, настроенный для использования для SSH) в брандмауэре следующим образом.
# firewall-cmd --permanent --add-port=22/tcp # firewall-cmd --reload или $ sudo ufw allow 22/tcp $ sudo ufw reload
Теперь попробуйте снова подключиться к удаленному серверу через SSH.
Вот и все!
Вы также найдете полезными следующие руководства по SSH:
- ? Как подключить удаленные каталоги в Linux с помощью SSHFS
- Как создать туннелирование SSH или перенаправление портов в Linux
- ? Как создать алиас SSH в Linux
- ? Как проверить, открыт ли порт на нескольких удаленных системах Linux с помощью скрипта оболочки с помощью команды nc?
- Настройка SSH для упрощения вашей жизни
- Как ограничить максимальное количество соединений ssh в CentOS / RHEL
- Как защитить ssh в CentOS / RHEL / Fedora
У меня другая история.
Есть два линукс сервера с этих серверов пинги на третий линукс сервер не идут.
С винды на третий линукс сервер пинги идут.
С винды по ssh могу зайти, а вот с других Linux серверов No route to host
линуксы “не видят” третий сервер, раз icmp разрешен на нем. можно попробовать руками добавить маршрут