Как узнать активы пересылки через ssh порт

Я настроил в ~/.ssh/config много переадресацию портов для VNC с разными портами для каждого сервера.

Существует ли команда, которая может помочь мне узнать, на какой порт выполняется переадресация при открытии сеанса SSH?

11
задан 13 August 2015 в 19:05

1 ответ

Если Вы используете -v опция к ssh это покажет Вам, что Вы передаете (но это покажет Вам набор других сообщений отладки, также):

ssh -v -L2222:localhost:22 remotehost

Покажет Вам:

...debug messages...
debug1: Authentication succeeded (publickey).
Authenticated to remotehost ([10.0.0.23]:22).
debug1: Local connections to LOCALHOST:2222 forwarded to remote address localhost:22
debug1: Local forwarding listening on ::1 port 2222.
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on 127.0.0.1 port 2222.
...debug messages...

И затем когда Вы подключены к той удаленной оболочке, можно ввести специальное сочетание клавиш:

~#

который перечислит соединения как это:

The following connections are open:
  #3 client-session (t4 r0 i0/0 o0/0 fd 7/8 cc -1)
  #4 direct-tcpip: listening port 2222 for localhost port 22, connect from 127.0.0.1 port 59742 (t4 r1 i0/0 o0/0 fd 10/10 cc -1)

Обратите внимание, однако, что это только перечислит переданные порты, которые на самом деле используются другой программой (в этом случае, я просто сделал telnet localhost 2222 на моей локальной машине, чтобы передать его remotehost.

Если у Вас нет соединений, которые в настоящее время передаются, можно все еще видеть то, к чему команда ssh прислушивается локально при помощи netstat управляйте как это:

% netstat -tpln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:2222          0.0.0.0:*               LISTEN      28995/ssh       
tcp6       0      0 ::1:2222                :::*                    LISTEN      28995/ssh       

netstat команда также, вероятно, перечислит другие вещи, но что Вы хотите искать в выводе, PID/Program столбец для поиска ssh процессы, и Local Address столбец, который покажет Вам, какие порты слушают. В этом примере это слушает на port 2222 и для IPv4 и для IPv6 взаимодействует через интерфейс на моей машине.

12
ответ дан 13 August 2015 в 19:05

Другие вопросы по тегам:

Похожие вопросы: