
Используя Ubuntu Server 14.04, я запустил ssh-сервер на порту 2222 (они так и просили при сборке). Я уже проверил все настройки, и, похоже, ничего не в порядке.
Вот что установлено:
- При сборке они перенаправляют TCP-соединения на порт 2222 на мой IP.
- То же самое касается порта 80, до которого я могу добраться.
- Когда я пытаюсь подключиться через SSH на порт 2222, я вижу входящую сетевую активность с помощью
iftop
. я получил
ufw
работающий с надлежащими правилами:2222/TCP ALLOW Anywhere
В
sshd.conf
файл, который я получил:У меня есть SSH-сервер, прослушивающий порт 2222.
- Я установил SSH-сервер в режим ведения журнала, но при попытке подключения
AUTH
ничего не вижу ./var/log/auth.log
- Это мой файл sshd.conf.
- Да, демон ssh запущен и был перезапущен.
Поэтому всякий раз, когда я пытаюсь подключиться, я получаю сообщение вроде:
ssh: connect to host <publicbuildingip> port 2222: Connection refused
Запуск клиента в подробном режиме выводит:
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to <publicip> [<publicip>] port 2222.
debug1: connect to address <publicip> port 2222: Connection refused
ssh: connect to host <publicip> port 2222: Connection refused
То же самое произойдет, если я попытаюсь войти с хоста в той же сети.
Бегnetstat
на сервере как sudo netstat -tulpn | grep ssh
выходы:
tcp 0 0 127.0.0.1:2222 0.0.0.0:* LISTEN 969/sshd
Бегnmap
против публичного IP из-за пределов сети выводит:
Host is up (0.051s latency).
Not shown: 996 filtered ports
PORT STATE SERVICE
21/tcp closed ftp
80/tcp open http
2222/tcp closed unknown
8080/tcp closed http-proxy
Nmap done: 1 IP address (1 host up) scanned in 5.31 seconds
Попытка telnet <publicip>
2222
Выходы:
telnet: Unable to connect to remote host: Connection refused
То же самое происходит, если попытаться использовать сетевой IP-адрес внутри здания.
Но iftop, запущенный на сервере, показывает, что при попытке входа в систему действительно наблюдается сетевая активность.
Бегtcpdump
на сервере типа: tcpdump -vniay port 2222 -i eth0
выведет это при попытке входа в систему:
15:53:36.812402 IP (tos 0x0, ttl 64, id 56954, offset 0, flags [DF], proto TCP (6), length 60)
192.168.1.86.39822 > 192.168.1.90.2222: Flags [S], cksum 0xa1b8 (correct), seq 3966921350, win 292000, options [mss 1460,sackOK,TS val 308476 ecr 0,nop,wscale 7], lenght 0
Что может быть неисправным?
решение1
На основе этого netstat
вывода и вашего sshd
файла конфигурации (особенноэта линия) ваш демон SSH прослушивает только локальный IP-адрес (127.0.0.1), а не IP-адрес, который фактически взаимодействует с вашей локальной сетью или исходит через маршрутизатор/шлюзовое устройство в сети.
Убедитесь, что у вас sshd_config
настроена ListenAddress
линия, которая находится в вашей локальной сети, например, частный IP-адрес локальной сети, назначенный серверу. Если у вас его нет, добавьте его после директивы порта с синтаксисом, например, ListenAddress 0.0.0.0
или ListenAddress ::
, заменив эти элементы фактическими адресами IPv4 или IPv6.
И помните, что привязка к любому IP-адресу в диапазоне 127.0.0.0/8 приведет только к локальному компьютеру, а не к любому адресу, который может фактически маршрутизироваться в вашу локальную сеть / локальную сеть / куда-либо еще.