SSH: подключиться к хосту myremotehost.com порт 22: соединение отказано


33

Поэтому я пытаюсь заставить SSH работать на моем сервере. Я могу подключиться к моей локальной сети с локальным IP-адресом сервера отлично. Когда я пытаюсь подключиться удаленно (через имя домена, которое я настроил для сервера, который, как я знаю, работает), я получаю сообщение об ошибке «Отказано в соединении»:

ssh: connect to host bahhudson.mine.nu port 22: Connection refused

Из исследования, которое я провел в проблеме, похоже, что что-то не так с моим маршрутизатором. Я настроил переадресацию портов, но это единственное, о чем я могу думать, что это вызывает ошибку «Соединение отказано» ... Мой маршрутизатор - WRT120N, и я настроил его для переадресации портов на основе Portforward.com , который кажется несколько устаревшим поскольку некоторые из этих образов не совсем похожи на мои настройки маршрутизатора, но я пробовал несколько способов настройки перенаправления портов, и я знаю, что переадресация для порта 80 работает, потому что у моего сервера есть доступ HTTP, который работает ...

Кроме того, доступ к VPN блокировался, как я полагаю, аналогичным образом, поэтому решение для блокирования порта 22 SSH также может быть аналогичным решению для блокировки VPN.

Любые идеи?

Благодарность!

Ответы:


20

Ваш интернет-провайдер может блокировать соединения с портом 22 (вы или ваш маршрутизатор ничего не можете с этим поделать) Просто установите SSHd для запуска на другом порту, например, 2222.

В /etc/ssh/sshd_config, измените Port 22на Port 2222и затем sudo service ssh restart. Порт вперед 2222 (или что-то еще), и попробуйте снова.


Я все еще получаю ту же ошибку отказа в соединении (22, когда я не указываю порт при использовании ssh и 2222, когда я использую -p 222). Я поместил входящий порт 22 для пересылки на 2222 и изменил порт на 2222 в sshd_config. Я что-то упускаю?
Бахудсо

1
Просто попробуйте это: Входящие 2222 на маршрутизаторе должны пересылать на 2222 (с установленным портом 2222 sshd_config).
иш

@izx слава за правила роутера. В какой-то момент я подумал, что волнуюсь и не знаю, что делаю. СМЕШНО!
ГТодоров

Для будущих читателей. Убедитесь, что вы ссылаетесь /etc/ssh/sshd_config(обратите внимание на ssh d ) файл. Потянув за волосы в течение часа, я понял эту небольшую разницу. ; P
Шашант

Мой новый маршрутизатор использует порт 22 для своей функции удаленного администрирования и не перечисляет его где-либо на интерфейсе, поэтому он не обязательно должен быть ISP.
Tu-Reinstate Monica-dor duh

21

Просто чтобы поделиться. ( может быть с другой конфигурацией )

В моем случае я обнаружил, что эта ошибка может произойти, потому что я не установил openssh-serverна другой машине.

После того, как я установил openssh-сервер на другой машине, проблема:

ssh: connect to host 192.168.XXX.XXX port 22: Connection refused

решено


18
  1. Сначала проверьте openssh-serverустановленную в этой системе.

  2. проверьте состояние службы ssh, запустите службу ssh.

    sudo service ssh status    
    sudo service ssh start
    
  3. Проверьте iptablesв этой системе, что порт 22 заблокирован. Просто разрешите порт, iptablesа затем проверьте.

    sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
    
  4. В противном случае измените номер порта sshот 22 до 2222, отредактировав

    vi etc/ssh/sshd_config    
    /etc/init.d/ssh restart.
    

5

Проверьте состояние службы SSH и запустите службу SSH, если она остановлена:

sudo service ssh status

В моем случае SSH был остановлен, но после запуска службы:

sudo service ssh start

Я могу иметь возможность удаленного входа в Linux.



0

Другая вероятная причина заключается в том, что прокси-серверу между терминальным сеансом и хост-сервером требуется доступ по идентификатору пароля, который он отклоняет для разрешения потока трафика, это происходит из-за сетевого брандмауэра или ssl-socks и т. Д.


Это не похоже на «вероятную причину», особенно учитывая принятый ответ.
Белаква

0

Решением будет добавление номера порта вашего сервера, которому предшествует «-p»:

Пример командной строки:

ssh -L localport:127.0.0.1:localport username@ServerIP **-p** **serverport**

0

Просто зайдите в WHM, затем откройте Host Access Control Change следующим образом

sshd ВСЕ позволяют


0

Я получил ту же ошибку, но после перезагрузки компьютера все снова заработало.

Итак, вы можете попробовать перед переустановкой некоторых компонентов.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.