как решить «открыть не удалось: административно запрещено: открыть не удалось» при использовании туннельного прокси SSH

16

Я некоторое время использовал SSH туннель в Windows (используя Putty).

В Windows с замазкой это всегда нормально, но на Mac или Cygwin иногда выдается предупреждающее сообщение:

open failed: administratively prohibited: open failed

AGamePlayer
источник
Если вы переадресовываете порт как обычный пользователь и пытаетесь использовать номер привилегированного порта <1024, это сообщение будет отображаться. Это тот случай?
cormpadre
Если это вызвано неправильной вводом домена и разрешением DNS не удается, соединение может зависнуть до истечения времени ожидания. superuser.com/a/700677
user423430

Ответы:

15

Я считаю, что вы отключили пересылку TCP на сервере. На вашем сервере /etc/ssh/sshd_configубедитесь, что следующая строка либо отсутствует, либо закомментирована, в противном случае оставьте комментарий.

AllowTcpForwarding no
Харикришнан
источник
6
Только что искал и этоAllowTcpForwarding yes
AGamePlayer
5

Существует более широкое обсуждение этой ошибки с SSH-туннелями в Unix StackExchange. В двух словах, это неспецифическая ошибка; Есть множество возможностей, которые следует изучить.

глаз
источник
1

Просто для потомков, даже если это не полезно для вас конкретно

Ошибки выводятся на вашу консоль через stderr, поэтому, если вы просто хотите их игнорировать, добавление 2>/dev/nullв конец вашего sshвызова будет работать отлично. Например:

ssh -C -D 3210 example@connexion 2>/dev/null

Это полезно, если прокси-туннель действительно работает нормально, но вы просто не хотите видеть ошибки.

В моем случае; машина, к которой я туннелирую, не моя, поэтому я не могу изменить sshd_config(не в этом твоя проблема), и я также использую то же соединение для оболочки. Когда эти сообщения об ошибках записываются в мою консоль во время открытого окна vim, дисплей начинает раздражать.

Hashbrown
источник
4
Это не отвечает на вопрос.
Sebix
2
Текст open failed: administratively prohibited: open failedвыводится в stderr, «на mac или cygwin», вы можете скрыть это предупреждение (о чем оно предупреждает, на самом деле ничего не нарушает), отправив этот текст в null (добавив 2>/dev/nullв команду). Это абсолютно отвечает на вопрос, особенно если у вас нет доступа администратора к другому компьютеру, чтобы исправить основную проблему
Hashbrown
5
Вопрос был в том, как решить проблему, чтобы не скрывать сообщение об ошибке.
Sebix
2
в зависимости от человека, сообщение является проблемой. Как я уже сказал, это на самом деле ничего не ломает большую часть времени, так что можно спрятаться. Вы когда-нибудь пытались использовать ssh, когда очень часто гигантскую строку рвало по всей интерактивной оболочке вашего сеанса? Это решает это, вот почему это здесь.
Hashbrown