У меня есть сервер Linux под управлением Ubuntu 16.04. Я установил на него ssh-сервер, и он запустился с запуском sudo ssh service start и могу увидеть его с помощью ps aux | grep ssh . Я хочу подключиться к нему с моего ноутбука (также работающего под управлением Ubuntu 16.04). Они оба подключены к одному и тому же Wi-Fi. Когда я ssh с моего ноутбука на сервер, используя ssh username@serverIP , я получаю

ssh: connect to host <serverIP> port 22: Connection timed out

Поскольку некоторые из рекомендаций здесь заключались в использовании другого номера порта, а не 22, я изменил порт на 2220 в /etc/ssh/sshd_config на сервере. Затем я ssh со своего ноутбука, используя ssh username@serverIP -p 2220 и я получаю то же соединение отказано ошибка.

Затем я пошел и вручную изменил IP-адрес и маску сети одного из интерфейсов на сервере, используя ifconfig eth0 <laptopIP + 1> netmask <laptop_subnet> чтобы он попадал в ту же подсеть, что и мой ноутбук. Затем я попытался ssh, используя ssh ssh username@LaptopIP+1 -p 2220 и я получаю

ssh: connect to host <laptopIp+1> port 2220: Connection refused

Я слишком усложняю это? Как мне подключиться к этому серверу?

2 ответа2

0

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

Вот одна ссылка: https://askubuntu.com/questions/9206/is-there-a-preinstalled-or-automatic-firewall

0

Это очень вероятно, брандмауэр блокирует соединение. Вы должны посмотреть, какие у вас политики брандмауэра, с помощью команды sudo ufw status . Вы можете получить вывод, который выглядит примерно так (но, вероятно, меньше открытых портов):

Status: active

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

25,53,80,110,443/tcp       ALLOW OUT   Anywhere                  
53,67,68/udp               ALLOW OUT   Anywhere                  
51413/tcp                  ALLOW OUT   Anywhere                  
51413/udp                  ALLOW OUT   Anywhere                  
6969/tcp                   ALLOW OUT   Anywhere                  
25,53,80,110,443/tcp (v6)  ALLOW OUT   Anywhere (v6)             
53,67,68/udp (v6)          ALLOW OUT   Anywhere (v6)             
51413/tcp (v6)             ALLOW OUT   Anywhere (v6)             
51413/udp (v6)             ALLOW OUT   Anywhere (v6)             
6969/tcp (v6)              ALLOW OUT   Anywhere (v6) 

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

sudo ufw allow 22

или если вы хотите придерживаться альтернативного порта, измените приведенную выше команду, чтобы разрешить 2220(изменение порта по умолчанию, конечно, рекомендуется, если это производственный или "публичный" сервер). После того, как вы разрешили порт, проверьте статус ufw еще раз, затем попробуйте подключиться удаленно через ssh.

Смотрите также: https://www.digitalocean.com/community/tutorials/ufw-essentials-common-firewall-rules-and-commands

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