Устранение неполадок динамического туннеля

Оператор обратной кавычки Perl вернет (в переменную результата $curl _)STDOUT команды, которую вы запускаете. STDERR из этой команды перенесет в вызывающую программу/терминал из ваш perl-скрипт --, возможно, на ваш экран, как если бы вы сами вызвали curl.

Чтобы захватить STDERR, вы должны (как вы начали воображать, )отбросить STDOUT или смешать их.

Вот пример удаления STDOUT и перенаправления STDERR в STDOUT, чтобы он (вместо «обычного» STDOUT )захватывался переменной perl:

my $curl_result = `curl... 2>&1 1>/dev/null`;

В качестве альтернативы можно объединить два:

my $curl_result = `curl... 2>&1`;

Я опустил середину основной команды curl, чтобы было понятно, какую часть я изменил. В первом примере STDERR изменяется так, чтобы он указывал на то место, где STDOUT в настоящее время указывает , а затем сообщает STDOUT, что он должен уйти. Во втором примере STDERR указывает на STDOUT, смешивая их.

0
23.02.2020, 15:32
2 ответа

Если вашей целью является доступ к графическому интерфейсу конфигурации маршрутизатора на том же маршрутизаторе, на котором вы используете ssh (dropbear ), тогда вам нужно не socks proxy, а переадресация локального порта . ].

Настройте ssh-туннель на хосте Firefox (, предполагая, что ваш веб-интерфейс обслуживает порт 80):

ssh -L 3000:localhost:80 user@myrouter.mydomain.com

и укажите Firefox на http://localhost:3000.

(Примечание для лучшего понимания:localhostв приведенной выше команде относится к вашему маршрутизатору, т. е. сервер ssh перенаправляет на localhost:80из своего локального контекста.)

Это открывает локальный порт 3000 и туннелирует его через установленное соединение ssh с маршрутизатором и подключает его к службе, работающей на порту 80 маршрутизатора.

РЕДАКТИРОВАТЬ :вы должны дополнительно убедиться, что dropbear работает с опцией -a, чтобы разрешить переадресацию портов. (См. опции dropbear . )Этого можно добиться в веб-интерфейсе, как показано в этом ответе

.

ХТХ,

пингвин

1
28.04.2021, 23:22

Динамическая переадресация портов SSH настроена правильно. Для достижения этой цели маршрутизатор Asus имеет настройку, разрешающую переадресацию портов SSH, которая должна быть включена :

.

enter image description here

ppenguin рекомендует :Для дополнительной безопасности рассмотрите возможность добавления/обновления authorized_keysфайла (, обычно в /root/.ssh/authorized_keys), содержащего ваш открытый ключ. После проверки вы можете войти в систему без пароля (с помощью пары открытого и закрытого ключей ), отключить Allow Password Login.

0
28.04.2021, 23:22

Теги

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