alphasec academy

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

Dodatkowe informacje

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).

Czy to bezpieczne?

Kluczową opcją po stronie serwera ssh jest GatewayPorts. Może przyjąc 3 wartości:
  • 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

Subskrybuj

Jeśli chcesz otrzymywać nowe, mięsiste protipy na maila, a także zostać czasem powiadomiony o wartościowych wydarzeniach - dołącz do subskrybentów.