15

Мне требуется постоянный SSH-доступ к хосту в нашем отделе, чей IP-адрес выделяется динамически. Я настроил удаленный SSH-туннель от целевого хоста до одного из наших хостов, который обладает статическим IP-адресом:

ssh -f -N -g -R :22223:localhost:22 tunnelhost

Когда я указываю SSH на локальный порт 22223 на хосте туннеля, туннель работает нормально. Моя проблема в том, что я не могу связать туннель ни с чем, кроме localhost - то есть, когда я пытаюсь удаленно подключиться к SSH к tunnelhost:12323 , нет открытого порта для его приема. Я также попробовал:

ssh -f -N -R :22223:localhost:22 tunnelhost -o GatewayPorts=yes

Но все равно не повезло. Netstat показывает мне:

[me@tunnel_host ~]$ netstat -an | grep 22223
tcp        0      0 127.0.0.1:22223         0.0.0.0:*               LISTEN
tcp6       0      0 ::1:22223               :::*                    LISTEN

Подтверждение того, что туннель привязан только к localhost. Я добавил исключение порта на хосте туннеля с помощью firewalld-cmd и убедился, что сетевое оборудование не мешает соединению. Любые идеи относительно того, что это может быть?

Ура, Джеймс.

1 ответ1

24

Необходимо включить GatewayPorts=yes в конфигурации для SSHd (/etc/ssh/sshd_config), а не клиента, чтобы включить привязку к интерфейсам, отличным от обратной петли, на удаленных портах.

-o GatewayPorts=yes

Работает только для локальных портов при передаче в команду ssh .

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