# Túnels SSH (Local, Remot i Dinàmic) ![imagen](https://hackmd.io/_uploads/HJtNgnBWWg.png) ## 1. Introducció als túnels SSH Els túnels SSH permeten redirigir trànsit de xarxa a través d'una connexió SSH segura. S'utilitzen per accedir a serveis remots, protegir trànsit o superar restriccions de xarxa. Hi ha tres tipus principals: - **Túnel local (-L)**\ - **Túnel remot (-R)**\ - **Túnel dinàmic (-D)** ## 2. Túnel SSH Local (-L) Redirigeix un port **local** cap a un servei **remot**. ### Exemple ssh -L 8080:localhost:80 usuari@servidor Això fa que: - `localhost:8080` al teu equip → `localhost:80` al servidor ## 3. Túnel SSH Remot (-R) Redirigeix un port **del servidor** cap al teu equip **local**. Un túnel invers SSH permet que una màquina remota es connecti al teu equip encara que estigui darrere d'un NAT, firewall o IP privada. ## Explicació breu - Túnel normal (`ssh -L`): obres un port local que apunta a un servei remot. - Túnel invers (`ssh -R`): el servidor remot obre un port que apunta al teu equip local. ## Exemple ràpid Client (local): ssh -R 9000:localhost:22 usuari@45.33.12.8 Servidor remot: ssh -p 9000 usuari@localhost ## Per què és útil? - Accedir a màquines darrere de NAT - Suport remot - Accés a Raspberry Pi o IoT sense ports oberts - Xarxes corporatives restrictives ## Seguretat - Usa claus SSH - Evita deixar túnels oberts molt temps ## Túnel invers persistent autossh -M 0 -R 9000:localhost:22 usuari@45.33.12.8 ### Exemple ssh -R 9000:localhost:22 usuari@servidor El servidor obrirà el port 9000 i l'enviarà al port 22 del teu equip. ## 4. Túnel SSH Dinàmic (-D) Crea un proxy SOCKS per navegar a través del servidor SSH. ### Exemple ssh -D 1080 usuari@servidor Configura el navegador per usar SOCKS a `localhost:1080` i tot el trànsit sortirà pel servidor SSH. ## 5. Casos d'ús habituals - Accedir a serveis remots no exposats - Seguretat i xifrat de trànsit - Bypassar restriccions de xarxa - Accés a serveis interns (bases de dades, pàgines web locals) - Proxy segur per navegar ## 6. Notes de seguretat - Utilitza claus SSH - Revisa `AllowTcpForwarding`, `PermitOpen` i `GatewayPorts` si gestiones un servidor SSH - No deixis túnels oberts més temps del necessari ## 7. Exemple visual ràpid **Túnel local (-L)**\ Port local → Port remot **Túnel remot (-R)**\ Port remot → Port local **Túnel dinàmic (-D)**\ Proxy dinàmic → Navegació segura