Come Installare e usare SSH su Windows
Aggiornato il:
Come creare un server SSH su Windows o Linux e connettersi al computer da smartphone o tablet via SSH
Quando utilizziamo un programma sul nostro computer, siamo abituati a utilizzare un'interfaccia grafica per poter gestire tutte le sue funzioni. Ma se possediamo un server dati o un server di hosting per il nostro sito Web difficilmente applicheremo le impostazioni da un'interfaccia, visto che nella maggior parte dei casi dovremo digitare dei comandi da prompt o da terminale per poter amministrare correttamente il nostro server.
Se il server è posizionato fuori dalla nostra rete domestica (per esempio su un server offerto da un provider, oppure siamo fuori casa e vogliamo accedere al nostro server personale) o vogliamo accedervi senza interfaccia grafica, dovremo realizzare una connessione sicura e cifrata per poter inviare i comandi da prompt.
In questa guida vi mostreremo come utilizzare SSH per inviare comandi da terminale a distanza su qualsiasi server. Vista la difficoltà dell'argomento, cercheremo di essere i più chiari e semplici possibili, così che anche un utente alle prime armi possa imparare ad utilizzare SSH per controllare a distanza il proprio server.
Se non conosciamo l'origine del servizio SSH, vi rimandiamo alla lettura della pagina Wikipedia dedicata.
Nella pagina che comparirà facciamo clic su Aggiungi una funzionalità, scorriamo l'elenco delle funzioni quindi assicuriamoci di selezionare la voce Server OpenSSH.
Al termine dell'installazione del server, apriamo nuovamente il menu Start, cerchiamo l'app Windows PowerShell, facciamo clic destro su di essa e selezioniamo Esegui come amministratore. Nella finestra a riga di comando che comparirà, effettuiamo le configurazioni iniziali del server SSH digitando i seguenti comandi da terminale (digitiamoli una riga alla volta):
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Get-NetFirewallRule -Name *ssh*
Dopo aver avviamo questi comandi, il PC con Windows 10 o Windows 11 che stiamo utilizzando può accettare connessioni SSH sulla porta 22, utilizzando le credenziali d'accesso configurate sull'account Windows (dovremo ovviamente inoltrare questa porta nel router o nel modem, così da poterla raggiungere quando siamo fuori dalla rete personale).
Nota: se la porta 22 non è configurabile o non è accessibile dalla nostra rete, basterà aprire il file C:\Windows\System32\OpenSSH\sshd_config e modificare la voce relativa alla porta 22, impostando una porta a piacere.
sudo apt-get install openssh-server
Confermiamo dove necessario per completare l'installazione del server OpenSSH. Per avviare subito il servizio è sufficiente lanciare seguente il comando da terminale:
sudo /etc/init.d/ssh restart
Il sistema utilizzerà le credenziali dell'account utente per l'accesso e la porta 22 per accettare le connessioni dall'esterno.
Se vogliamo modificare la porta d'ingresso per le connessioni SSH (per le stesse motivazioni viste su Windows), basterà digitare nel terminale il comando:
sudo vi /etc/ssh/sshd_config
Dall'edito di testo navighiamo tra le varie opzioni fino a trovare la voce Port, così da poter configurare una nuova porta per le connessioni SSH.
ssh username@hostname -p portnumber
il comando è composto dal nome utente (username) che richiede l'accesso, dal nome del server (servername) e dal numero di porta da contattare.
Come username basterà utilizzare quello dell'account utente configurato sul server, mentre come servername possiamo inserire direttamente l'indirizzo IP pubblico della connessione Internet utilizzata dal server o il nome del domino (se registrato). La porta di default è 22, ma possiamo cambiarla senza problemi se il server SSH è stato configurato con una porta diversa. Ad ogni connessione verrà richiesta la password d'accesso, coincidente con la password dell'account di sistema (o dell'account amministratore).
Se utilizziamo altre versioni di Windows (7 e 8.1) oppure vogliamo ottenere maggior controllo sulla connessione cifrata, vi suggeriamo di installare il programma gratuito e open source PuTTY.
Con questo programma riusciremo a connettersi velocemente a qualsiasi server SSH, basterà inserire il nome utente nel campo Host Name, configurare la porta nel campo Port, apporre il segno di spunta sulla voce SSH e infine fare clic in basso su Open.
Con quest'app potremo accedere alla shell protetta di qualsiasi server in maniera rapida e veloce, oltre ad accedere al servizio SFTP, che permette di visualizzare tutte le cartelle del server con i permessi d'amministratore (ottimo per gestire file e cartelle di sistema senza essere fisicamente presenti davanti al server).
Per utilizzare l'app è sufficiente avviarla, indicare le informazioni d'accesso al server come già visto in precedenza e inserire la password quando richiesto; in maniera automatica l'app si connetterà al server e ci offrirà la shell da cui impartire i comandi, con la possibilità di salvare le credenziali per un futuro accesso.
In alternativa possiamo utilizzare su Android l'app gratuita JuiceSSH - SSH Client.
Potremo sia inviare comandi su shell sicura sia controllare le performance del nostro server, grazie al plugin di connessione che mostrerà in tempo reale il consumo da parte di CPU, RAM, rete, disco e il carico medio (davvero molto utile se abbiamo un sito con molte visite o u server con poche capacità).
Una volta installato basta aprire il programma, digitare l'indirizzo e la porta del server e procedere con l'autenticazione; al termine otterremo una comoda interfaccia di controllo e un terminale SSH da cui lanciare i nostri comandi. Il programma permette anche di salvare le configurazioni SSH sul desktop, così da poter accedere subito ai nostri server senza dover digitare a mano ogni volta l'indirizzo e la porta.
Attualmente PuTTY è anche l'unico modo per gestire le connessioni SSH sui sistemi operativi Microsoft meno recenti come Windows 7 e Windows 8.1; in questi casi conviene usare sempre PuTTY per l'accesso ai server o, in alternativa, aggiornare il prima possibile a Windows 10 e usare i metodi visti in alto. A tal proposito possiamo leggere la nostra guida Come Installare Windows 10 da Windows 7 senza perdere file personali.
Le uniche alternative valide a PuTTY sono KiTTY (una versione open source di PuTTY), OpenSSH (di cui possiamo scaricare la versione più aggiornata rispetto a quella disponibile su Windows) e Bitvise SSH Client (disponibile gratuitamente a uso personale).
Gestire un server SSH e inviare comandi su shell sicura sono sicuramente operazioni da esperti del settore e da amministratori di sistema, ma se desideriamo controllare ogni aspetto del nostro server per il sito Web che stiamo gestendo, SSH è sicuramente uno degli strumenti che dovete imparare ad utilizzare fin da subito.
Se desideriamo imparare nuovi comandi da prompt o per PowerShell, vi invitiamo a leggere la nostra guida ai Trucchi per il prompt dei comandi (CMD).
Se invece vogliamo connetterci ad un server FTP, possiamo trovare tutte le informazioni necessarie nella nostra guida su Come connettersi ad un server FTP da PC e smartphone.
Per creare un nuovo server dati da utilizzare come cloud personale e sicuro, possiamo leggere il nostro approfondimento su come Creare un Cloud Server personale sul PC illimitato e gratuito.
Se il server è posizionato fuori dalla nostra rete domestica (per esempio su un server offerto da un provider, oppure siamo fuori casa e vogliamo accedere al nostro server personale) o vogliamo accedervi senza interfaccia grafica, dovremo realizzare una connessione sicura e cifrata per poter inviare i comandi da prompt.
In questa guida vi mostreremo come utilizzare SSH per inviare comandi da terminale a distanza su qualsiasi server. Vista la difficoltà dell'argomento, cercheremo di essere i più chiari e semplici possibili, così che anche un utente alle prime armi possa imparare ad utilizzare SSH per controllare a distanza il proprio server.
Se non conosciamo l'origine del servizio SSH, vi rimandiamo alla lettura della pagina Wikipedia dedicata.
INstallare SSH su Windows
Se utilizziamo Windows 10 o Windows 11 sul nostro computer, possiamo installare il modulo OpenSSH. Per fare ciò apriamo il menu Start in basso a sinistra, apriamo l'app Impostazioni, apriamo il menu App -> App e funzionalità e facciamo infine clic su Funzionalità facoltative.Nella pagina che comparirà facciamo clic su Aggiungi una funzionalità, scorriamo l'elenco delle funzioni quindi assicuriamoci di selezionare la voce Server OpenSSH.
Al termine dell'installazione del server, apriamo nuovamente il menu Start, cerchiamo l'app Windows PowerShell, facciamo clic destro su di essa e selezioniamo Esegui come amministratore. Nella finestra a riga di comando che comparirà, effettuiamo le configurazioni iniziali del server SSH digitando i seguenti comandi da terminale (digitiamoli una riga alla volta):
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
Get-NetFirewallRule -Name *ssh*
Dopo aver avviamo questi comandi, il PC con Windows 10 o Windows 11 che stiamo utilizzando può accettare connessioni SSH sulla porta 22, utilizzando le credenziali d'accesso configurate sull'account Windows (dovremo ovviamente inoltrare questa porta nel router o nel modem, così da poterla raggiungere quando siamo fuori dalla rete personale).
Nota: se la porta 22 non è configurabile o non è accessibile dalla nostra rete, basterà aprire il file C:\Windows\System32\OpenSSH\sshd_config e modificare la voce relativa alla porta 22, impostando una porta a piacere.
Come creare un server SSH su Linux
Su un server con Linux configurare SSH è molto più semplice, visto che OpenSSH è ben integrato con gli altri strumenti di sistema. Dopo aver configurato la macchina o il server online con Ubuntu (preso come esempio in questa guida), apriamo l'app Terminale, quindi digitiamo il seguente comando:sudo apt-get install openssh-server
Confermiamo dove necessario per completare l'installazione del server OpenSSH. Per avviare subito il servizio è sufficiente lanciare seguente il comando da terminale:
sudo /etc/init.d/ssh restart
Il sistema utilizzerà le credenziali dell'account utente per l'accesso e la porta 22 per accettare le connessioni dall'esterno.
Se vogliamo modificare la porta d'ingresso per le connessioni SSH (per le stesse motivazioni viste su Windows), basterà digitare nel terminale il comando:
sudo vi /etc/ssh/sshd_config
Dall'edito di testo navighiamo tra le varie opzioni fino a trovare la voce Port, così da poter configurare una nuova porta per le connessioni SSH.
Come connettersi ad un server SSH da Windows
Dopo aver configurato il server SSH, potremo accedervi da qualsiasi altro PC Windows 10 connesso a Internet semplicemente aprendo il programma Windows PowerShell e digitando il seguente comando da terminale:ssh username@hostname -p portnumber
il comando è composto dal nome utente (username) che richiede l'accesso, dal nome del server (servername) e dal numero di porta da contattare.
Come username basterà utilizzare quello dell'account utente configurato sul server, mentre come servername possiamo inserire direttamente l'indirizzo IP pubblico della connessione Internet utilizzata dal server o il nome del domino (se registrato). La porta di default è 22, ma possiamo cambiarla senza problemi se il server SSH è stato configurato con una porta diversa. Ad ogni connessione verrà richiesta la password d'accesso, coincidente con la password dell'account di sistema (o dell'account amministratore).
Se utilizziamo altre versioni di Windows (7 e 8.1) oppure vogliamo ottenere maggior controllo sulla connessione cifrata, vi suggeriamo di installare il programma gratuito e open source PuTTY.
Con questo programma riusciremo a connettersi velocemente a qualsiasi server SSH, basterà inserire il nome utente nel campo Host Name, configurare la porta nel campo Port, apporre il segno di spunta sulla voce SSH e infine fare clic in basso su Open.
Come connettesi ad un server SSH da smartphone o tablet
Se vogliamo controllare il nostro server SSH da smartphone o da tablet, vi raccomandiamo di installare l'app gratuita Termius, disponibile sia per Android che per iOS.Con quest'app potremo accedere alla shell protetta di qualsiasi server in maniera rapida e veloce, oltre ad accedere al servizio SFTP, che permette di visualizzare tutte le cartelle del server con i permessi d'amministratore (ottimo per gestire file e cartelle di sistema senza essere fisicamente presenti davanti al server).
Per utilizzare l'app è sufficiente avviarla, indicare le informazioni d'accesso al server come già visto in precedenza e inserire la password quando richiesto; in maniera automatica l'app si connetterà al server e ci offrirà la shell da cui impartire i comandi, con la possibilità di salvare le credenziali per un futuro accesso.
In alternativa possiamo utilizzare su Android l'app gratuita JuiceSSH - SSH Client.
Potremo sia inviare comandi su shell sicura sia controllare le performance del nostro server, grazie al plugin di connessione che mostrerà in tempo reale il consumo da parte di CPU, RAM, rete, disco e il carico medio (davvero molto utile se abbiamo un sito con molte visite o u server con poche capacità).
Come usare SSH con programmi di terze parti
Se vogliamo utilizzare un'interfaccia per salvare al volo le configurazioni SSH di vari server, il nostro consiglio è di usare sempre PuTTY, disponibile gratuitamente per qualsiasi versione di Windows.Una volta installato basta aprire il programma, digitare l'indirizzo e la porta del server e procedere con l'autenticazione; al termine otterremo una comoda interfaccia di controllo e un terminale SSH da cui lanciare i nostri comandi. Il programma permette anche di salvare le configurazioni SSH sul desktop, così da poter accedere subito ai nostri server senza dover digitare a mano ogni volta l'indirizzo e la porta.
Attualmente PuTTY è anche l'unico modo per gestire le connessioni SSH sui sistemi operativi Microsoft meno recenti come Windows 7 e Windows 8.1; in questi casi conviene usare sempre PuTTY per l'accesso ai server o, in alternativa, aggiornare il prima possibile a Windows 10 e usare i metodi visti in alto. A tal proposito possiamo leggere la nostra guida Come Installare Windows 10 da Windows 7 senza perdere file personali.
Le uniche alternative valide a PuTTY sono KiTTY (una versione open source di PuTTY), OpenSSH (di cui possiamo scaricare la versione più aggiornata rispetto a quella disponibile su Windows) e Bitvise SSH Client (disponibile gratuitamente a uso personale).
Gestire un server SSH e inviare comandi su shell sicura sono sicuramente operazioni da esperti del settore e da amministratori di sistema, ma se desideriamo controllare ogni aspetto del nostro server per il sito Web che stiamo gestendo, SSH è sicuramente uno degli strumenti che dovete imparare ad utilizzare fin da subito.
Se desideriamo imparare nuovi comandi da prompt o per PowerShell, vi invitiamo a leggere la nostra guida ai Trucchi per il prompt dei comandi (CMD).
Se invece vogliamo connetterci ad un server FTP, possiamo trovare tutte le informazioni necessarie nella nostra guida su Come connettersi ad un server FTP da PC e smartphone.
Per creare un nuovo server dati da utilizzare come cloud personale e sicuro, possiamo leggere il nostro approfondimento su come Creare un Cloud Server personale sul PC illimitato e gratuito.
Posta un commento