1

Я уверен, что на этот вопрос ответили где-то еще, но я не уверен, что искать. (Я пытаюсь что-то вроде "telnet Ubuntu SSH-демон не может подключиться".)

  1. Я могу SSH в 10.0.0.9
  2. Я могу telnet 10.0.0.9 22
  3. sudo service ssh status
  4. /etc/hosts и /etc/hostname совпадают.
  5. gufw выключен.
  6. netstat -nat | grep 22 показывает 0.0.0:* LISTEN и :::* LISTEN .
  7. Я считаю, что мой порт правильно открыт на маршрутизаторе Перенаправление порта

Так что за недостающее звено, которое мне нужно проверить, чтобы я мог поступить неправильно? Почему я не могу ssh в 65.x.x.x когда я могу ssh в 10.x.x.x?

Любой, кто может предоставить ссылку на существующий ответ или лучшие условия поиска, я был бы очень признателен.


  • Пример вывода tcpdump -n -i ${interface} tcp port ssh or tcpdump -n -i ${interface} host ${external_client_ip_addr}:

19:20:43.747445 IP 116.10.191.232.24689 > 10.0.0.9.22: Flags [.], ack 1, win 65535, length 0 19:20:43.747562 IP 116.10.191.232.24689 > 10.0.0.9.22: Flags [P.], seq 1:24, ack 1, win 65535, length 23 19:20:43.747575 IP 10.0.0.9.22 > 116.10.191.232.24689: Flags [.], ack 24, win 14600, length 0 19:20:43.759613 IP 10.0.0.9.22 > 116.10.191.232.24689: Flags [P.], seq 1:42, ack 24, win 14600, length 41 19:20:44.504741 IP 116.10.191.232.24689 > 10.0.0.9.22: Flags [P.], seq 24:832, ack 42, win 65494, length 808 19:20:44.504800 IP 10.0.0.9.22 > 116.10.191.232.24689: Flags [P.], seq 42:1026, ack 832, win 16968, length 984

  • Пример вывода ssh -vvv me@67.x.x.x.x:

OpenSSH_5.9p1 Debian-5ubuntu1.4, OpenSSL 1.0.1 14 Mar 2012 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to 67.x.x.x [67.x.x.x] port 22. debug1: connect to address 67.x.x.x port 22: No route to host ssh: connect to host 67.x.x.x port 22: No route to host

2 ответа2

4

Размещенный вами экран показывает "конечный порт" из 23. Возможно, что это перенаправляет диапазон портов, но одинаково возможно, чтобы начальный и конечный порт ссылались на "внешний порт" и "внутренний порт" соответственно, в этом случае у вас возникла проблема. Попробуйте изменить "конечный порт" на 22. Также проверьте ваш /etc/hosts.{allow,deny} .

0

Похоже, ваш интернет-провайдер блокирует порт 22, возможно, из-за Heartbleed, скорее всего, отговорит от бесплатных поставщиков Unix Shell. Я хотел бы предложить сопоставление с другим внешним портом, посмотреть, если это имеет значение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .