ALPHACON BBSGość · pl
← Protipy

Protipy / Bash / Unix

ssh -R :8080:localhost:80 aptm.in - udostępnij lokalny port 80 na aptm.in:8080

ssh -R :8080:localhost:80 aptm.in

Wstęp

Opcja -R pozwala tunelować port TCP z wewnętrznej sieci do zdalnego hosta. Składnia jest następująca:

        -R [bind_address:]port:host:hostport
        -R [bind_address:]port:local_socket
        -R remote_socket:host:hostport
        -R remote_socket:local_socket
        -R [bind_address:]port

czyli -R 8080:localhost:80 uruchomi tunel na aptm.in:8080 do localhost:80. Oczywiście zamiast localhost:80 mógłby być inny host (w szczególności dostępny tylko wewnętrznie), który zostanie udostępniony zdalnie (w szczególności do Internetu).

Breakdown

no

(wartość domyślna) - uruchamiaj takie tunelowanie wyłącznie na 127.0.0.1, co powoduje, że tylko serwer ma dostęp do drugiej końcówki tunelu,

yes

uruchamiaj takie tunelowanie na wszystkich interfejsach sieciowych (binduj na 0.0.0.0) w wyniku czego zdalne hosty mogą również skorzystać,

clientspecified

(polecana przeze mnie;) - niech klient zadecyduje na jakich adresach tunel ma nasłuchiwać, a zatem:

  • -R 127.0.0.1:8080:localhost:80 - słuchaj tylko na 127.0.0.1
  • -R 8080:localhost:80 - słuchaj tylko na 127.0.0.1 - jak wyżej
  • -R 0.0.0.0:8080:localhost:80 - słuchaj na wszystkich interfejsach
  • -R :8080:localhost:80 - słuchaj na wszystkich interfejsach - jak wyżej