Guida completa a SSH: cos'è e come connettersi a un server da Windows

Ultimo aggiornamento: 3 ottobre 2026
  • Il protocollo SSH stabilisce un canale di comunicazione crittografato per l'amministrazione remota dei sistemi operativi.
  • L'autenticazione può essere gestita utilizzando il metodo tradizionale con nome utente e password oppure tramite coppie di chiavi pubblica e privata.
  • Esistono diversi client Windows che consentono di eseguire comandi in modo sicuro su server Linux o Windows.
  • La crittografia simmetrica, la crittografia asimmetrica e l'hashing garantiscono che le informazioni non vengano intercettate o manipolate.

Primo piano di rack per server in un moderno data center, che rappresentano l'infrastruttura del server remoto a cui ci si connette tramite SSH.

Probabilmente vi sarà capitato di dover gestire un server che non avete fisicamente davanti a voi. Per farlo senza che qualche hacker con un briciolo di buon senso rubi le vostre chiavi, entra in gioco SSH (Secure Shell) , un protocollo che è diventato lo standard assoluto per navigare nella console di macchine remote in tutta sicurezza.

In pratica, è come aprire una finestra magica che permette di digitare comandi su un computer che potrebbe trovarsi dall'altra parte del mondo, garantendo al contempo la crittografia di tutto il traffico dati . Se si utilizza un VPS o si lavora nel cloud, padroneggiare questo strumento è fondamentale per evitare errori.

Che cosa è SSH
Articolo correlato:
Che cos'è SSH? Una guida completa

In cosa consiste esattamente il protocollo SSH?

Ingegnere informatico che utilizza un laptop all'interno di un data center, illustrando la gestione remota di un server.

Per comprendere appieno questo concetto, dobbiamo fare un passo indietro e ricordare Telnet. Telnet veniva utilizzato per lo stesso scopo, ma presentava un grave problema: inviava tutto in chiaro. Se qualcuno intercettava la connessione, poteva leggere la password come se fosse un libro aperto. SSH è stato creato per risolvere questo problema, implementando un robusto sistema di crittografia che rende le informazioni illeggibili a terzi.

Questo protocollo opera secondo un'architettura client-server. Il server SSH è il software che viene eseguito sulla macchina remota e "rimane in ascolto" delle richieste su una porta specifica (22 per impostazione predefinita). Il client SSH , invece, è l'applicazione che si installa sul proprio PC per avviare la connessione e inviare i comandi.

  Come installare Windows 11 su un PC non supportato senza impazzire

I pilastri della sicurezza: crittografia e hashing

Mani che digitano sulla tastiera di un laptop con elementi grafici relativi alla sicurezza informatica, a rappresentare la connessione da un client SSH su Windows.

La magia di SSH sta nel fatto che non utilizza un singolo metodo di protezione, ma una combinazione di tre tecniche matematiche molto potenti:

  • Crittografia simmetrica: Viene utilizzato per la comunicazione costante. Sia il client che il server condividono un chiave segreta per codificare e decodificare i dati. Per impedire che questa chiave si propaghi attraverso la rete, utilizzano algoritmi come Diffie-Hellman.
  • Crittografia asimmetrica: Viene utilizzato principalmente per l'autenticazione. Ecco una coppia di chiavi: una chiave pubblica che può essere ovunque e un chiava privata che solo tu possiedi. Se il server ha la tua chiave pubblica, può inviarti una sfida che solo tu puoi decifrare con la tua chiave privata.
  • Hashing: Questa tecnica viene utilizzata per verificare che nessuno abbia toccato i dati durante il percorso. valore hash univoco (utilizzando MD5 o SHA); se il messaggio viene alterato anche di un solo bit, l'hash cambia e la connessione viene contrassegnata come inaffidabile.
Sicurezza avanzata in Linux
Articolo correlato:
Sicurezza avanzata in Linux: una guida completa alla protezione di sistemi e server

Come connettersi a un server da Windows

Monitor che visualizza il codice di sicurezza digitale in verde, a simboleggiare la crittografia e la protezione del protocollo Secure Shell.

In passato Windows era un vero grattacapo per questo scopo, ma oggi esistono soluzioni per tutti i gusti, da chi preferisce cliccare a chi ama la riga di comando.

Opzione 1: Utilizzo del terminale (OpenSSH)

Le versioni moderne di Windows 10 e 11 includono già un client OpenSSH integrato. È sufficiente aprire il Prompt dei comandi (CMD) o PowerShell e digitare il comando. ssh utente@indirizzo-ipAd esempio, se vuoi accedere come root a un server, dovresti digitare ssh [email protected]Il sistema ti chiederà se ti fidi dell'host; digita sì e poi inserisci la password (nota che quando la digiti non vedrai asterischi o punti, è normale per motivi di sicurezza).

  Windows 11: Come funzionano gli aggiornamenti senza riavviare il computer tramite hotpatch

Opzione 2: PuTTY (Il classico)

PuTTY è il leggendario strumento per Windows. Per utilizzarlo, scarica il file eseguibile, inserisci l' indirizzo IP del server nel campo "Nome host" e verifica che la porta sia la 22. Cliccando su "Apri" si aprirà una console in cui ti verrà richiesto di inserire nome utente e password. È l'ideale se cerchi uno strumento leggero e semplice.

Opzione 3: Strumenti avanzati

Se gestisci molti server, potresti preferire MobaXterm o Termius . Queste applicazioni ti permettono di salvare le sessioni, gestire le chiavi SSH in modo visivo e includono persino SFTP per il trasferimento di file tramite trascinamento, facendoti risparmiare molto tempo.

Server Ubuntu
Articolo correlato:
Guida completa alla configurazione e alla gestione di un server Ubuntu

Metodi di autenticazione: password vs. chiavi SSH

Dettaglio dei cavi Ethernet collegati a uno switch di rete su un server, che rappresentano la connettività e il trasporto di dati crittografati.

Sebbene l'accesso tramite nome utente e password sia il metodo più comune, non è il più sicuro. Gli attacchi di forza bruta sono costanti e possono mandare in tilt il server. Pertanto, si consiglia vivamente di utilizzare una coppia di chiavi SSH.

Per creare queste chiavi in ​​Windows, puoi usare il comando ssh-keygenQuesto genererà due file: uno privato (id_rsa) e uno pubblico (id_rsa.pub). Devi caricare la chiave pubblica al server, solitamente salvandolo nel file ~/.ssh/authorized_keysUna volta fatto ciò, potrai accedere al server senza inserire password, poiché l'autenticazione viene effettuata tramite stretta di mano crittografica tra le tue due chiavi.

Gestione dei file e tunnel sicuri

SSH non serve solo per impartire comandi. Permette anche di trasferire file in modo sicuro tramite SFTP (Secure FTP) o SCP. Mentre il tradizionale FTP non è sicuro, SFTP sfrutta il canale SSH per proteggere i file durante la trasmissione.

  Come integrare Docker, Traefik e Portainer in uno stack completo

Un'altra potente funzionalità è il port forwarding . Questo permette di creare un tunnel crittografato per accedere ai servizi interni su una rete privata (come un database MySQL) senza esporre direttamente tali porte all'intera Internet, evitando così vulnerabilità critiche nella propria infrastruttura.

Configurazione avanzata del firewall del server
Articolo correlato:
Configurazione avanzata del firewall sui server

Consigli per proteggere il tuo server SSH

Se hai appena configurato il tuo VPS, non lasciarlo con le impostazioni di fabbrica, perché in questo modo sarai vulnerabile agli attacchi. Ecco alcuni consigli per stare tranquillo:

  • Cambia la porta 22: I bot scansionano costantemente la porta 22. Cambiandola con una porta casuale (come la 2200) si ridurrà drasticamente il rumore nei log.
  • Disabilita l'accesso root: È meglio accedere con un account utente normale e utilizzare sudo. Puoi configurare PermitRootLogin prohibit-password nel file sshd_config, applicando tecniche di gestione dei privilegi di root.
  • Implementa un timeout: configura ClientAliveInterval in modo che le sessioni inattive si chiudano automaticamente e non rimangano aperte porte posteriori per disattenzione.

Padroneggiare il protocollo Secure Shell è il primo passo per chiunque voglia assumere il pieno controllo della propria infrastruttura remota. Dall'installazione di un semplice client su Windows alla configurazione di tunnel e chiavi asimmetriche, questo strumento garantisce una gestione efficiente del server e, soprattutto, un accesso impenetrabile da occhi indiscreti.

sistemi di hardening per script
Articolo correlato:
Scripting e hardening dei sistemi: una guida completa per rafforzare i server