0Pricing
Linux Server Deployment & SSH Mastery · Lezione

Port forwarding SSH (locale/remoto)

Imparate a usare il port forwarding locale e remoto per accedere in sicurezza ai servizi interni o esporre servizi locali a una rete remota.

Port forwarding SSH (locale/remoto) è una lezione Linux Server Deployment & SSH Mastery gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Server Deployment & SSH Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Tunnel sicuri con SSH

SSH non serve solo per accedere a un sistema! Può creare "tunnel" sicuri per inoltrare il traffico di rete.

Questa tecnica, chiamata port forwarding, consente di accedere a servizi normalmente irraggiungibili o non sicuri.

È come creare un ponte privato e crittografato tra porte di rete diverse.

Perché usare il port forwarding?

Il port forwarding è molto utile per sviluppatori e amministratori di sistema:

  • Accedere ai servizi interni: raggiungere un database o un'interfaccia web su una rete privata dal proprio computer.
  • Esporre servizi locali: condividere un server di sviluppo locale con altre persone su una rete remota.
  • Superare i firewall: connettersi in modo sicuro a servizi protetti da firewall restrittivi.

Port forwarding locale (L)

Il port forwarding locale crea un tunnel dal computer locale a un server remoto e poi verso un'altra destinazione.

È come dire: "Qualsiasi traffico inviato a localhost:8000 dal mio computer venga inoltrato tramite SSH a remote-server e, da lì, a internal-db:5432."

Sintassi del forwarding locale

Il comando per il port forwarding locale usa l'opzione -L:

ssh -L [LOCAL_PORT]:[REMOTE_HOST]:[REMOTE_PORT] [SSH_USER]@[SSH_SERVER]

  • LOCAL_PORT: una porta del proprio computer.
  • REMOTE_HOST: l'host a cui si connette il server SSH.
  • REMOTE_PORT: la porta su REMOTE_HOST.
  • SSH_SERVER: il server a cui ci si connette tramite SSH.

Scenario di forwarding locale

Immagini un database in esecuzione su db.internal.network:5432. Il server SSH (my-server.com) può raggiungerlo, ma il Suo laptop no.

Desidera connettersi a questo database usando uno strumento locale come DBeaver o psql.

Il forwarding locale Le permette di farlo!

Forwarding locale in azione

Apriamo un tunnel dalla porta locale 5432 al database remoto db.internal.network:5432 tramite my-server.com.

ssh -L 5432:db.internal.network:5432 user@my-server.com

Ora ogni connessione a localhost:5432 dal Suo computer raggiungerà in modo sicuro db.internal.network:5432.

Port forwarding remoto (R)

Il port forwarding remoto è l'opposto: crea un tunnel da un server remoto al computer locale e poi verso una destinazione.

È come dire: "Qualsiasi traffico inviato a my-server.com:8080 venga inoltrato tramite SSH al mio laptop e, da lì, a localhost:3000."

Sintassi del forwarding remoto

Il comando per il port forwarding remoto usa l'opzione -R:

ssh -R [REMOTE_PORT]:[LOCAL_HOST]:[LOCAL_PORT] [SSH_USER]@[SSH_SERVER]

  • REMOTE_PORT: una porta del server SSH.
  • LOCAL_HOST: l'host a cui si connette il server SSH, generalmente localhost.
  • LOCAL_PORT: la porta su LOCAL_HOST.
  • SSH_SERVER: il server a cui ci si connette tramite SSH.

Scenario di forwarding remoto

Sta sviluppando un'app web sul Suo laptop, all'indirizzo localhost:3000. Desidera mostrarla a un collega, ma si trova su una rete diversa.

Può usare il forwarding remoto per rendere accessibile la Sua app locale tramite una porta del server SSH pubblico, ad esempio my-server.com:8080.

Forwarding remoto in azione

Rendiamo accessibile la Sua app web locale, in esecuzione su localhost:3000, tramite la porta 8080 di my-server.com.

ssh -R 8080:localhost:3000 user@my-server.com

Ora il Suo collega può accedere all'app visitando http://my-server.com:8080 nel browser.

Quiz sul port forwarding

Il port forwarding di SSH è uno strumento potente. Quali affermazioni ne descrivono correttamente l'utilizzo?

Tunnel protetti!

Ha acquisito padronanza del port forwarding di SSH!

  • Forwarding locale (-L) collega la porta locale a un servizio remoto.
  • Forwarding remoto (-R) collega la porta di un server remoto al servizio locale.

Queste tecniche creano tunnel sicuri e crittografati, permettendoLe di gestire efficacemente l'accesso alla rete. Continui a esercitarsi per integrarle nel Suo flusso di lavoro!

Domande Frequenti

La lezione «Port forwarding SSH (locale/remoto)» è gratuita?

Sì — il testo completo di «Port forwarding SSH (locale/remoto)» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Server Deployment & SSH Mastery, passa a CoddyKit PRO. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Cosa imparerò in «Port forwarding SSH (locale/remoto)»?

Imparate a usare il port forwarding locale e remoto per accedere in sicurezza ai servizi interni o esporre servizi locali a una rete remota. Eserciti Linux Server Deployment & SSH Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Linux Server Deployment & SSH Mastery?

Non è richiesta alcuna esperienza precedente. Linux Server Deployment & SSH Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Port forwarding SSH (locale/remoto)»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Linux Server Deployment & SSH Mastery?

Sì. Ogni lezione Linux Server Deployment & SSH Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Port forwarding SSH (locale/remoto)
  2. Tunnel SSH e proxy SOCKS
  3. SSH Agent e connessioni multi-hop
  4. Trasferimento sicuro dei file con SCP, SFTP e rsync
← Torna a Linux Server Deployment & SSH Mastery