проблемы при настройке удаленного ssh

у меня дома есть рабочий стол ubuntu и ноутбук mac. Я пытаюсь настроить это так, чтобы я мог ssh в мою машину ubuntu из-за пределов моей локальной сети.

вот что я сделал до сих пор:

(1) я включил ssh на порту 22 на моей машине ubuntu.
Файл / etc / ssh / sshd_config говорит, что он слушает порт 22.

(2) Если я посмотрю на свой статус брандмауэра (ufw status), Он говорит:

Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere                  
22 (v6)                    ALLOW       Anywhere (v6)             

(3) на моем маршрутизаторе Netgear C3700-100NAS я зарезервировал ip-адрес моей машины ubuntu, чтобы он не менялся.

(4) я настроил переадресацию портов, с типом службы TCP/UDP, внешние и внутренние порты установлены на 22, и он указывает на мой внутренний IP-адрес.

(5) я нашла свой публичный IP-адрес с помощью http://www.myipaddress.com/

Я могу успешно ssh в мою машину ubuntu из дома, в локальной сети, используя локальный ip-адрес.

но пульт СШ тайм-аут. Я тоже старался онлайн-тестер переадресации портов (https://www.yougetsignal.com/tools/open-ports/), и когда я указываю его на мой публичный ip-адрес и порт 22, он говорит мне, что порт закрыт.

когда я пытаюсь удаленно ssh, я получаю следующее:

~ $ ssh -vvv myusername@xx.xxx.xxx.xx
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /etc/ssh/ssh_config
debug2: resolving "xx.xxx.xxx.xx" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to xx.xxx.xxx.xx [xx.xxx.xxx.xx] port 22.
debug1: connect to address xx.xxx.xxx.xx port 22: Operation timed out
ssh: connect to host xx.xxx.xxx.xx port 22: Operation timed out

обновления

следуя некоторым советам, перечисленным ниже, я сделал несколько изменений. Я изменил переадресацию портов, так что теперь он использует порт 8022 в качестве внешнего порта, но по-прежнему порт 22 в качестве внутренний порт. Я также включил опцию в настройках маршрутизатора, которая отвечает на пинг.

теперь, если я пропингую свой публичный IP, он отвечает.
Однако, если я проверю, открыт ли порт 8022 через веб-сайт yougetsignal, указанный выше, он по-прежнему говорит, что он закрыт.

если я попытаюсь SSH:

> ssh -vvv username@xx.xxx.xxx.xx -p 8022
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /etc/ssh/ssh_config
debug2: resolving "xx.xxx.xxx.xx" port 8022
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to xx.xxx.xxx.xx [xx.xxx.xxx.xx] port 8022.
debug1: connect to address xx.xxx.xxx.xx port 8022: Operation timed out
ssh: connect to host xx.xxx.xxx.xx port 8022: Operation timed out

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

следуя предложению ниже, я побежал sudo nmap --packet-trace --traceroute --reason xx.xxx.xxx.xx. Вот подмножество выходных данных. Порта 8022 нет в списке, но я предполагаю, что он должен быть:

Host is up, received reset ttl 253 (0.0028s latency).
Not shown: 996 filtered ports
Reason: 996 no-responses
PORT     STATE  SERVICE      REASON
135/tcp  closed msrpc        reset ttl 253
139/tcp  closed netbios-ssn  reset ttl 253
445/tcp  closed microsoft-ds reset ttl 253
1025/tcp closed NFS-or-IIS   reset ttl 253

Я не уверен, где проблема... машина ubuntu? роутер?
Есть идеи, как это выяснить?

спасибо!

2
задан tent
11.04.2023 10:25 Количество просмотров материала 3342
Распечатать страницу

4 ответа

У меня была похожая проблема несколько дней назад. Возможно, модем или маршрутизатор не настроен в качестве моста. Это зависит от провайдера. В обычном режиме он будет блокировать все входящие соединения, но переключение его в режим моста дает всем доступ. Мне пришлось позвонить своему провайдеру, чтобы изменить это, так что я бы иметь публичный IP-адрес (не так давно, но этого достаточно для меня) и мой роутер сейчас работает как мост для всех связей.

Это все о том, что провайдер не хватает IP-адресов и скрыть пользователей рядом с несколькими другими материалами маршрутизации. Вы должны действительно иметь общедоступный IP-адрес.

1
отвечен pbies 2023-04-12 18:13

(3) на моем маршрутизаторе Netgear C3700-100NAS я зарезервировал ip-адрес для своей машины ubuntu, чтобы он не менялся.

(4) я настроил переадресацию портов, тип службы TCP/UDP, внешние и внутренние порты установлены на 22, и это указывает на мой внутренний IP-адрес.

из вашего описания похоже, что ваш маршрутизатор не слушает порт 22.

Я хотел бы проверить несколько вещей

  1. можно ли ping на публичный IP-адрес? В противном случае можно активировать прослушивание ping/ICMP на маршрутизаторе?
  2. проверьте, работает ли он, когда вы слушаете свой маршрутизатор на порту 8022 и перенаправляете его на порт 22. В Linux непривилегированным пользователям запрещено использовать порт от 1 до 1024, так что, возможно, что-то подобное.
  3. Я дальше проверю, если а оно будет работать с портом 80 или 8080 и http. Возможно, маршрутизатор почему-то не разрешает SSH.
0
отвечен chloesoe 2023-04-12 20:30

Я бы посмотрел сначала, если проблема на каком-то сетевом устройстве вашего интернет-провайдера, а затем на маршрутизаторе, а затем на ПК.

не могли бы вы попробовать еще раз и переместить порт с 8022 на 443?

иногда некоторые ISP могут иметь очень ограничительную фильтрацию портов. Но 443 часто не фильтруется. Кроме того, порты выше 10000 могут иметь больше шансов, но я вижу из вашего nmap, что вы можете добраться до 445 или около того: вы делали nmap из-за пределов вашей локальной сети? Лучшее доказательство если бы вы могли запустить Nmap из вне домашней сети К ваш публичный IP.

Kr,

Компания Cisco

0
отвечен tent 2023-04-12 22:47

Я бы предложил проверить таблицы NAT на вашем маршрутизаторе. Таблицы NAT должны позволить вашему маршрутизатору слушать любой запрос на том Порту и передавать запрос к назначенному порту на целевой машине (они могут быть тем же портом при желании). Порты от 1024 до 49151 доступны для использования пользователем. Если используется нестандартный порт, используйте флаг-p в команде ssh.

0
отвечен Calvin Wels 2023-04-13 01:04

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

firewall
networking
port-forwarding
ssh
ubuntu
Вверх