Надежно туннельный порт через промежуточный хост

Попробуйте это:

for f in *.txt; do echo ${f%.*};done

23
05.07.2014, 02:06
6 ответов

В итоге я использовал SSH ~ / .ssh / config хаки, чтобы это произошло:

Host hopper
    User naftuli
    ForwardAgent yes

Host overthere
    User naftuli
    ForwardAgent yes
    ProxyCommand ssh -q hopper nc overthere 22

Это означает, что когда я пытаюсь подключиться к ssh через из , находящегося здесь , он подключается к загрузчику а затем проксирует SSH-соединение на порт 22 на поверх (то есть: SSH на поверх ).

У этого есть потрясающие побочные эффекты:

ssh -L 5900:localhost:5900 overthere "x11vnc -display :0 -localhost"

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

18
27.01.2020, 19:41

Сначала подключайте бункер, пока делаете туннель между рабочим и домом.

ssh -f ismail@hopper -L 2222:overthere:22 -N

затем делайте ssh ro через vnc туннель

ssh -p 2222 -f ismail@localhost -L 5900:localhost:5900

Теперь вы можете соединяться с vnc. Кстати, измените конфигурацию vnc для прослушивания localhost

.
1
27.01.2020, 19:41
[

] Если вы используете VNC клиент []vncviewer[] из командной строки, вы можете использовать переключатель []-via[], чтобы сказать ему, что нужно туннелировать через []user@host[] перед подключением к другому VNC серверу хоста.[

] [

]Пример[

] [
$ vncviewer -via user@host localhost:0
] [

]Вы также можете использовать []vinagre[] для подключения через SSH туннель, подобно тому, как это делается через GUI. Для этого настройте ваше соединение подобным образом через диалог подключения в []vinagre[]:[

] [

] [ss #1][

] [

], в результате чего ваше соединение будет туннелироваться через хост туннеля SSH.[

] [

] [ss #2][

] [

]References[

] []
0
27.01.2020, 19:41
[

]Используя встроенную возможность SSH перенаправлять порты. Из []места расположения [] выполните:[

] [
 ssh -v -N -L 5900:overthere:5900 user@hopper
] [

]Направьте VNC-клиента на []localhost:5900[] и трафик будет туннелироваться на [] через него: 5900[] через SSH-соединение, установленное на [] бункер[][

]
18
27.01.2020, 19:41
[

] Вы можете перенаправить порт из [] sithere[] в [] через [] SSH порт через [] бункер[]. Затем вы можете использовать этот порт для достижения [] над [] прямо из [] сидящего места []. В этом втором сеансе SSH вы можете переадресовать VNC или любые другие порты, которые вам нравятся, в то время как []hopper[] видит только зашифрованный сеанс SSH.[

] [

]Первый сеанс SSH:[

] [
ssh -f -N -L 7022:overthere:22 hopper
] [

]Теперь скажите клиенту SSH, как он может достигнуть []поверх [], добавив эту конфигурацию в []~/. ssh/config[] на []sithere[][

] [
Host overthere
    HostName hopper
    Port 7022
    HostKeyAlias overthere
] [

]Second SSH session:[

] [
ssh -f -N -L 5900:localhost:5900 overthere
] [

]Или просто обычный интерактивный сеанс SSH без туннеля порта VNC:[

] [
ssh overthere
] [

]Если вы не хотите утруждать себя добавлением строк в []~/. ssh/config[] вы все еще можете сказать ему, как подключиться к []поверх [] из командной строки:[

] [
ssh -p 7022 hopper
] [

]... но без []HostKeyAlias[] SSH не проверит правильность отпечатка ключа []поверх []. [

] [

] Все командные строки должны быть запущены из [] сидящего места []. [

] [

] Кстати, я думаю, что вам, вероятно, не нужно использовать опцию []ssh[] []-t[]. [

].
1
27.01.2020, 19:41

Следующая команда также должна работать идеально

ssh -f -N -J hopper overthere -L 5900:localhost:5900

Было протестировано с дополнительным параметром для подключения к серверу PostgreSQL на postgres-serverчерез настроенный порт(-pкоммутатор ), а также с использованием настроенного имени пользователя.

ssh -f -N -J user1@jumphost -p 2222 user2@postgres-server -L 5432:localhost:5432

Как видите, решение простое и не требует каких-либо изменений конфигурации ssh или каких-либо промежуточных шагов.

0
27.01.2020, 19:41

Теги

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