Potrzebuję stałego dostępu SSH do hosta w naszym dziale, którego adres IP jest dynamicznie przydzielany. Skonfigurowałem zdalny tunel SSH od hosta docelowego do jednego z naszych hostów, który ma statyczny adres IP:
ssh -f -N -g -R :22223:localhost:22 tunnelhost
Kiedy wskazuję SSH na port lokalny 22223
na hoście tunelu, tunel działa dobrze. Mój problem polega na tym, że nie wydaje mi się, aby tunel był związany z czymkolwiek innym niż localhost - tzn. Kiedy próbuję SSH zdalnie tunnelhost:12323
, nie ma otwartego portu do jego odbioru. Próbowałem też:
ssh -f -N -R :22223:localhost:22 tunnelhost -o GatewayPorts=yes
Ale wciąż nie ma szczęścia. Netstat pokazuje mi:
[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
Potwierdzenie, że tunel jest powiązany tylko z hostem lokalnym. Dodałem wyjątek portu na hoście tunelu, z firewalld-cmd, i upewniłem się, że żaden sprzęt sieciowy nie zakłóca połączenia. Jakieś pomysły na to, co to może być?
Pozdrawiam, James.
GatewayPorts=clientspecified
jest nieco bezpieczniejszym ustawieniem, patrz askubuntu.com/questions/50064/reverse-port-tunnelling . W takim przypadku:22223:localhost:2
wymagany jest pusty adres powiązania (dwukropek końcowy ).GatewayPorts=clientspecified
samo ustawienie nie jest bezpieczniejsze, ale raczej pozwala na większą kontrolę nad tym, które połączenia będą przypisane do znaku wieloznacznego, zamiast po prostu przypisywać je wszystkie do znaku wieloznacznego.GatewayPorts=yes
otworzy to przekierowane porty na świat.