Secure Shell: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Hce (discussione | contributi) →Meccanismi di autenticazione: autenticazione |
|||
Riga 28:
Come risultato, il client RDP verrà messo in comunicazione con la terza macchina. La connessione tra ssh server e terza macchina non sarà criptata, percui è opportuno che la comunicazione tra queste due macchine non sia a rischio di intercettazione. La terza macchina vedrà la connessione TCP provenire dal server ssh invece che dal client.
==Meccanismi di autenticazione del client==
* username/password▼
Esistono principalmente due metodi autenticazione per controllare l'accesso ad un server ssh:
* chiave pubblica▼
L'utente fornisce un nome utente ed una password, che vengono validati dal server. Questo scambio avviene all'interno di un canale cifrato, percui non è a rischio di intercettazione.
L'utente genera una coppia di [[Crittografia_asimmetrica|chiavi asimmetriche]]. La chiave pubblica è copiata sul server, tipicamente in un apposito file nella home directory dell'utente. La chiave pubblica deve essere conservata dall'utente, ed è consigliabile proteggerla con una parola chiave (passphrase). Nella fase di accesso, il client ssh prova al server di essere in possesso della chiave privata, e in caso di successo viene consentito l'accesso. In questo modo, all'utente non è richiesto di fornire la propria password ad ogni connessione.
==Autenticazione del Server==
SSH prevede anche la verifica dell'autenticità del server. Questo serve ad evitare che un utente malizioso "impersoni" il server, facendosi fornire le credenziali dell'utente (attacco [[man-in-the-middle]]). A questo scopo, per ciascun server viene generata una coppia di chiavi asimmetriche. La chiave privata rimane sul server. La chiave pubblica deve essere installata sui client. Quando un client si collega ad un server di cui conosce la chiave pubblica, verifica che il server sia ancora in possesso della chiave privata. Se questa verifica fallisce, la connessione viene abbattuta, evitando di fornire credenziali al server.
Nella pratica, quando ci si collega ad un server per la prima volta, il client chiede se si vuole accettare la chiave pubblica di questo server, e se l'utente risponde positivamente memorizza questa chiave e prosegue nella connessione. Alle connessioni successive con lo stesso server, il client ne verifica l'autenticità, e in caso la chiave privata non corrisponda impedisce di proseguire la connessione.
[[Categoria:Protocolli di rete]]
|