0Pricing
Linux Server Deployment & SSH Mastery · Lezione

SSH Agent e connessioni multi-hop

Utilizzate SSH Agent per gestire le chiavi senza interruzioni e configurate connessioni SSH multi-hop per accedere a reti profondamente annidate.

SSH Agent e connessioni multi-hop è una lezione Linux Server Deployment & SSH Mastery gratuita su CoddyKit. Questa è la lezione 3 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.

SSH Agent: la chiave della comodità

È stanco di digitare la passphrase della chiave SSH ogni volta che si connette a un server? Lo SSH agent è qui per aiutarLa!

  • È un programma in background che memorizza in modo sicuro le chiavi private.
  • Sblocca le chiavi con la relativa passphrase una sola volta per sessione.
  • Può così connettersi a più server senza reinserire la passphrase, aumentando praticità e sicurezza.

Avviare lo SSH agent

Prima di aggiungere le chiavi, deve avviare lo SSH agent. Di solito viene eseguito come processo in background.

Può avviarlo e configurare la shell per utilizzarlo con questo comando:

eval "$(ssh-agent -s)"

Aggiungere le chiavi all'agent

Quando l'agent è in esecuzione, può aggiungervi le chiavi private. Il comando ssh-add esegue questa operazione:

  • Le chiederà la passphrase della chiave.
  • La chiave resterà caricata finché l'agent non verrà arrestato o finché non la rimuoverà esplicitamente.

Per vedere quali chiavi sono caricate, usi ssh-add -l.

ssh-add ~/.ssh/id_rsa
ssh-add -l

Agent forwarding: il concetto

A volte è necessario connettersi da un server (Server A) a un altro server (Server B) usando la chiave SSH locale, senza memorizzarla su Server A.

Agent forwarding consente all'agent SSH locale di gestire l'autenticazione per le connessioni avviate da un server remoto. È come estendere temporaneamente l'agent locale all'host remoto.

Usare l'agent forwarding

Per abilitare l'agent forwarding, aggiunga semplicemente l'opzione -A quando si connette al primo server, ovvero l'host intermedio.

In seguito, dall'host intermedio potrà connettersi a un altro server usando le chiavi locali, senza mai memorizzarle sull'host intermedio. È una potente funzionalità di sicurezza!

ssh -A user@jump_host
# Now, from jump_host, connect to target_server
ssh user@target_server

SSH multi-hop: accesso a reti profonde

Cosa succede se il server di destinazione non è direttamente accessibile dalla macchina locale, ma solo tramite un server intermedio (un «jump host»)?

SSH multi-hop, noto anche come concatenamento SSH, consente di stabilire una connessione attraverso uno o più server intermedi per raggiungere la destinazione finale.

Multi-hop con ProxyJump

Il modo più semplice e consigliato per configurare SSH multi-hop consiste nell'usare la direttiva ProxyJump nel file ~/.ssh/config.

In questo modo, il client SSH si connette prima a JumpHost e stabilisce quindi, da lì, una connessione a TargetServer.

Host TargetServer
  HostName 192.168.1.100
  User myuser
  ProxyJump jump_host_user@jump.example.com

Multi-hop con ProxyCommand

Per i client SSH meno recenti o per gli scenari più complessi, ProxyCommand offre una maggiore flessibilità. Esegue un comando per stabilire una connessione al server di destinazione.

La parte ssh -W %h:%p indica a SSH di inoltrare lo standard input/output all'host e alla porta di destinazione.

Host TargetServer
  HostName 192.168.1.100
  User myuser
  ProxyCommand ssh jump_host_user@jump.example.com -W %h:%p

Combinare l'inoltro dell'agent e il multi-hop

È possibile combinare queste potenti funzionalità. Usi l'inoltro dell'agent con la configurazione multi-hop per evitare di reinserire le passphrase.

Aggiunga semplicemente ForwardAgent yes alla configurazione del jump host in ~/.ssh/config, oppure usi ssh -A per connettersi al jump host. In questo modo, il Suo agent locale potrà autenticarLa anche sul server di destinazione finale.

Host JumpHost
  HostName jump.example.com
  User jump_user
  ForwardAgent yes

Host TargetServer
  HostName 192.168.1.100
  User target_user
  ProxyJump JumpHost

Verifica rapida: funzionalità SSH

Consideri le seguenti affermazioni relative a SSH Agent e SSH multi-hop. Quali sono VERE?

Riepilogo: accesso semplice e sicuro

In questa lezione ha acquisito familiarità con due tecniche SSH avanzate:

  • SSH Agent: memorizza le chiavi sbloccate, evitando di inserire ripetutamente le passphrase e migliorando praticità e sicurezza.
  • Inoltro dell'agent: estende in modo sicuro le funzionalità del Suo agent locale ai server remoti, consentendo di autenticarsi da un jump host usando le chiavi locali.
  • SSH multi-hop: consente di accedere a reti profondamente annidate tramite jump host intermedi, configurandosi facilmente con ProxyJump o ProxyCommand.

Questi strumenti sono essenziali per gestire in modo efficiente e sicuro infrastrutture di server complesse.

Domande Frequenti

La lezione «SSH Agent e connessioni multi-hop» è gratuita?

Sì — il testo completo di «SSH Agent e connessioni multi-hop» è 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 «SSH Agent e connessioni multi-hop»?

Utilizzate SSH Agent per gestire le chiavi senza interruzioni e configurate connessioni SSH multi-hop per accedere a reti profondamente annidate. 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 3 di 4.

Quanto tempo richiede la lezione «SSH Agent e connessioni multi-hop»?

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