Что делает номера каналов в ssh сообщении об ошибке относятся к?

Измерение процесса потребления возможно измерить потребление Пользователя на сервере. Для измерения потребления процесса я рекомендую использовать программное обеспечение Atop.

12
09.08.2013, 21:12
2 ответа

Из документации Протокола SSH, относительно каналов:

Все терминальные сеансы, переданные соединения, и т.д., являются каналами. Любая сторона может открыть канал. Несколько каналов мультиплексируются в единственное соединение.

Каналы определяются числами в каждом конце. Число, относящееся к каналу, может отличаться на каждой стороне. Запросы для открытия канала содержат номер канала отправителя. Любые другие похожие сообщения канала содержат номер канала получателя для канала.

Каналы управляются потоком. Никакие данные не могут быть отправлены на канал, пока сообщение не получено, чтобы указать, что место окна является свободным.

Перенаправление портов

Команда, которую Вы имеете, выглядит хорошо. Вы уверены, что сервис, с которым Вы пытаетесь соединиться, закончился и соединения принятия? Ошибки канала, казалось бы, указали бы, что это не.

Каковы мои активные каналы?

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

Сдвиг + ~ сопровождаемый Сдвигом +?

$ ~?
Supported escape sequences:
  ~.  - terminate connection (and any multiplexed sessions)
  ~B  - send a BREAK to the remote system
  ~C  - open a command line
  ~R  - Request rekey (SSH protocol 2 only)
  ~^Z - suspend ssh
  ~#  - list forwarded connections
  ~&  - background ssh (when waiting for connections to terminate)
  ~?  - this message
  ~~  - send the escape character by typing it twice
(Note that escapes are only recognized immediately after newline.)
debug2: channel 2: written 480 to efd 8

Можно затем использовать это сочетание клавиш для получения списка активных каналов:

Сдвиг + ~ сопровождаемый Сдвигом +#

$ ~#
The following connections are open:
  #2 client-session (t4 r0 i0/0 o0/0 fd 6/7 cc -1)
debug2: channel 2: written 93 to efd 8
21
27.01.2020, 19:54

Если кот не слушает на обратной петле (127.0.0.1) затем, порт передает этому, даст сообщение об ошибке, которое Вы получали.

Если я делаю ssh, с портом передают непорту прослушивания (например: ssh -L1234:127.0.0.1:9999 10.0.0.1 - где никакой процесс на 10.0.0.1 не обязан портировать 9999 на 127.0.0.1), я получаю ту же ошибку:

channel 2: open failed: administratively prohibited: open failed

Можно узнать то, что канал упоминается путем добавления -vvv к Вашему ssh

ssh -vvv -L1570:127.0.0.1:8899 root@thehost

Какой порт является "другим процессом", слушающим на (и на какой IP-адреса), netstat -tulpn подтвердит то, что используют порты и процессы дюйм/с на Ваших серверах,-L должен будет указать на адрес и порт, на котором он слушает.

4
27.01.2020, 19:54
  • 1
    я не могу воспроизвести вышеупомянутое. Вы позволяете ssh параметрам в любом клиент и/или сервер получить это? –  slm♦ 09.08.2013, 21:59
  • 2
    Нет (стандарт 'из поля' конфигурируется с обеих сторон). Насколько я могу решить, что Вы добираетесь connect failed: Connection refused когда брандмауэр отклоняет соединение. administratively prohibited: open failed находится на хосте без брандмауэра. –  Drav Sloan 09.08.2013, 22:41

Теги

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