Як визначити, який порт для входу з SSH?

У мене є віддалено налаштування сервера Ubuntu 10.04, яке я встановлюю деякий час назад. Хоча я записав ім'я користувача і пароль, я, здається, був розумний і змінив звичайний порт ssh з 22 на ... щось ще.

Як дізнатися, що може бути цей порт?

Я маю доступ до сервера через задні двері хостингу компанії, так що я можу виконати всі необхідні команди Unix - але я не можу увійти, використовуючи звичайну оболонку шпателя на своїй машині.

5
Це, мабуть, нерозумно, і у вас вже є хороші відповіді, але якщо ви підключилися раніше, ви можете перевірити історію вашого терміналу та/або ~/.ssh/config .
додано Автор Bryan Ash, джерело

6 Відповіді

Спочатку перевірте конфігураційний файл, який порт налаштовано:

$ sudo grep Port /etc/ssh/sshd_config
Port 22

Потім перезавантажте ssh , щоб переконатися, що він завантажує конфіг, який ви щойно побачили, або дізнайтеся, на якому порту працює ssh

$ sudo netstat -tpln | egrep '(Proto|ssh)'
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      12586/sshd

Це нормальний ssh , що працює на порту 22.

13
додано

Якщо ви маєте доступ до сервера іншими засобами, просто запустіть:

$ sudo grep Port /etc/ssh/sshd_config 
Port NNN

Це поверне рядок, як показано вище, де NNN буде вибраним вами порт.

7
додано

Більш простий спосіб - переглядати файли конфігурації сервера SSH

➜  ~  sudo grep Port /etc/ssh/sshd_config 
   Port 22

Також існує перевірка на прослуховування портів на процес з lsof :

sudo lsof -Pi | grep ssh

або будь-яку іншу команду списку портів, наприклад netstat -lntu .

3
додано

Якщо ви не маєте доступу до консолі сервера, вам доведеться перевірити всі порти від віддаленого вузла. Ці утиліти схожі на nmap , однак мережевий рівень повинен ретранслювати трафік до певної комбінації хосту (IP-адреси) І порту.

3
додано

Якщо ви не маєте доступу до сервера, ви можете знайти порт SSH за допомогою функції nmap у варіанті "сканування версії":

nmap -sV -p- 

Опція -sV означає "сканування версій", а -p- означає "сканувати всі порти". Якщо ви маєте хороше з'єднання і переконайтеся, що ви не засмучуєте чиїсь брандмауер або IDS, ви можете додати -T5 для "сканування якомога швидше". Результати будуть виглядати приблизно так:

PORT     STATE SERVICE VERSION
1422/tcp open  ssh      (protocol 2.0)
2
додано
$ sudo netstat -lntp
[sudo] password for XXX:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address    Foreign Address  State        PID/Program name
tcp   0      0      0.0.0.0:22       0.0.0.0:*        LISTEN       2799/sshd
tcp6  0      0      :::22            :::*             LISTEN       2799/sshd
0
додано