2

Я пытался настроить какую-то конфигурацию на своем ноутбуке, чтобы я мог подключиться к серверу, используя SSH напрямую, к которому у меня есть косвенный доступ, я нашел отличную конфигурацию здесь:https://superuser.com/a/303487/133737 настолько мягко, я сделал эту конфигурацию:

Host terzo , gw02, ipsec

ProxyCommand ssh zenoss nc -w 10 %h %p

но я хочу быть в состоянии ssh для zenipsec zenipsec , и это будет напрямую проходить через zenoss

Я надеюсь создать что-то вроде этого:

Host zen*

ProxyCommand ssh zenoss nc -w 10 %h `echo %h | cut -f2-100 -dn`

я думаю, что последняя часть `echo %h | cut -f2-100 -dn` , не работает. кто-нибудь может помочь?

2 ответа2

2

Полезная конфигурация, которую я использую, такова:

Host *%*
    ProxyCommand ssh $(echo %h | cut -d%% -f2-) nc $(echo %h | cut -d%% -f1) %p

Это позволяет вам устанавливать произвольные прыжки, разделяя хосты знаком % . Например, ssh zenipsec%zenoss будет прыгать через zenoss, чтобы добраться до zenipsec.

1

Вы говорите netcat использовать zenipsec качестве хоста и ipsec качестве порта. Следующее должно быть правильно:

nc -w 10 `echo %h | cut -f2-100 -dn` %p

Гораздо более чистый способ сделать это - написать скрипт, который действует как ProxyCommand; например, ~/bin/proxycommand-zen

#!/bin/sh
host=$1
port=$2
exec ssh zenoss nc -w 10 ${host#zen} $port

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .