Il Raspberry Pi non fa solo bella figura come com­po­nen­te hardware ele­men­ta­re di progetti creativi DIY, ma il mini computer bri­tan­ni­co, grazie alle sue buone pre­sta­zio­ni e a un basso consumo di elet­tri­ci­tà, è richiesto anche molto come base per far fun­zio­na­re server di diversa natura (ad esempio server cloud, DNS o per giocare a Minecraft). Per non dover sempre collegare tastiera e monitor quando devono apportare delle modifiche alle im­po­sta­zio­ni del server, molti utenti si affidano all’accesso remoto tramite SSH (Secure Shell).

Impostare l’accesso SSH sul Raspberry Pi: la si­tua­zio­ne di partenza

Chi gestisce un server sul Raspberry Pi, ricorre nella maggior parte dei casi alla base software Raspbian, con­si­de­ra­ta lo standard per il mini computer. Le versioni più recenti della di­stri­bu­zio­ne Linux hanno già in­stal­la­to un servizio SSH per il Pi, ne­ces­sa­rio per stabilire delle con­nes­sio­ni remote crit­to­gra­fa­te. Per motivi di sicurezza il servizio non è però più attivato di default, quindi è ne­ces­sa­rio attivarlo per poter prendere in con­si­de­ra­zio­ne le pos­si­bi­li­tà offerte dall’accesso remoto. Mentre gli utenti Linux e macOS possono stabilire una con­nes­sio­ne SSH sem­pli­ce­men­te tramite la shell o il terminale, gli utenti Windows hanno bisogno di software ag­giun­ti­vi, come PuTTY o WinSCP.

N.B.

“pi“ è il profilo standard del Raspbian, che ha sempre la stessa password (“raspberry”). Quando il servizio SSH era attivato di default, qualsiasi utente poteva quindi stabilire una con­nes­sio­ne di rete al Raspberry e loggarsi fa­cil­men­te, nel caso in cui i dati del login non fossero stati cambiati. Per questo motivo l’accesso SSH è stato di­sat­ti­va­to dal setup iniziale.

Tutorial: come attivare l’accesso SSH sul Raspberry Pi

Il servizio SSH è stato di­sat­ti­va­to in vista di po­ten­zia­li accessi in­de­si­de­ra­ti troppo facili da compiere. Per fare in modo che questo rischio non si presenti in­vo­lon­ta­ria­men­te al momento dell’at­ti­va­zio­ne manuale, dovreste mo­di­fi­ca­re il prima possibile la password dell’utente “pi”, so­prat­tut­to prima che venga in­stau­ra­ta una con­nes­sio­ne a Internet.

At­tual­men­te per l’at­ti­va­zio­ne dell’accesso SSH ci sono le seguenti quattro pos­si­bi­li­tà:

Prima soluzione: creare il file ssh nella directory boot sulla scheda SD

Se non avete la pos­si­bi­li­tà di con­trol­la­re il Raspberry di­ret­ta­men­te tramite tastiera e schermo, potete ricorrere a un semplice trucco: accedete da un computer esterno alla scheda microSD sulla quale avete in­stal­la­to Raspbian e create nella directory boot un file con il nome ssh. In questo caso è im­por­tan­te che non inseriate nessuna esten­sio­ne del file e che prestiate at­ten­zio­ne al fatto che non venga aggiunta au­to­ma­ti­ca­men­te (come accade spesso su Windows). Dopo aver riavviato il mini computer, l’accesso SSH sarà attivo.

Seconda soluzione: attivare il server SSH tramite desktop

Quando collegate il mini computer alla tastiera, al mouse e allo schermo, potete attivare fa­cil­men­te il servizio SSH sul Raspberry Pi dall’in­ter­fac­cia del desktop. Aprite quindi il menu di avvio e se­le­zio­na­te la voce del menu “Pre­fe­ren­ces” sotto “Raspberry Pi Con­fi­gu­ra­tion”. Alla tab “In­ter­fa­ces” trovate anche la voce relativa all’SSH con l’im­po­sta­zio­ne standard (“disabled“ = di­sat­ti­va­to), che in questo caso invertite. Infine con­fer­ma­te la modifica cliccando su “OK”.

Terza soluzione: attivare l’accesso SSH tramite il terminale nel file raspi-config

Una volta che avete collegato la tastiera e lo schermo al vostro Raspberry Pi, potete attivare l’accesso SSH anche dal terminale. Avviate quindi la riga di comando e digitate il seguente comando:

sudo raspi-config

Nel menu del tool di con­fi­gu­ra­zio­ne che si apre se­le­zio­na­te prima il punto 7 (“Advanced Options“) e dopo A4 (“SSH“). Lo strumento vi chiede se volete attivare il server SSH: con­fer­ma­te la richiesta e poi cliccate su “Finish”.

Quarta soluzione: avviare il servizio SSH con systemctl

In al­ter­na­ti­va al raspi-config potete uti­liz­za­re lo strumento della riga di comando systemctl per con­fi­gu­ra­re l’accesso SSH sul Raspberry Pi. Inserite quindi i seguenti due comandi nel terminale:

sudo systemctl enable ssh
sudo systemctl start ssh

Mentre il primo comando si assicura che d’ora in poi il server SSH si avvii au­to­ma­ti­ca­men­te quando il mini computer viene avviato, il secondo attiva il server nella sessione corrente.

Come funziona l’accesso al server SSH attivato sul Raspberry Pi

Dopo che avete avviato il servizio SSH sul Raspberry Pi, il mini computer è pronto per l’accesso remoto tramite il pro­to­col­lo di rete. Le altre procedure si dif­fe­ren­zia­no a seconda del tipo di sistema operativo in­stal­la­to sul computer esterno. Le istru­zio­ni seguenti mostrano come gli utenti Windows, Linux e macOS ge­sti­sco­no la con­nes­sio­ne sicura e con quali dif­fi­col­tà devono fare i conti.

Come stabilire una con­nes­sio­ne SSH al Raspberry Pi con Linux e macOS

Le di­stri­bu­zio­ni macOS e Linux, come Ubuntu o Debian, sup­por­ta­no au­to­ma­ti­ca­men­te la con­nes­sio­ne tramite il pro­to­col­lo SSH per via dell’im­ple­men­ta­zio­ne standard del software libero OpenSSH. Dovete quindi solo as­si­cu­rar­vi che il computer si trovi nella stessa rete del Raspberry Pi. Se è così, avete solo bisogno del relativo indirizzo IP per avviare la con­nes­sio­ne. Per scoprire quale sia, avete due pos­si­bi­li­tà:

  1. Nel caso in cui uti­liz­zia­te il Raspberry di­ret­ta­men­te tramite tastiera e monitor, ricorrete al terminale del mini computer e date il comando
hostname -I
  1. Cercate l’indirizzo nella lista dei di­spo­si­ti­vi sul vostro router o uti­liz­za­te sul computer esterno un tool come Nmap [Nmap: strumento di rete per Windows, Linux e macOS] (https://nmap.org), se gestite il Raspberry nella modalità headless.

Cercate di stabilire una con­nes­sio­ne SSH tramite il terminale del di­spo­si­ti­vo Unix, dando il comando apposito che segue una struttura di questo tipo:

ssh Nomeutente@Indirizzo IP

Nel parametro “Nome utente“ inserite il profilo standard “pi” o il nome del vostro profilo (se ne avete creato uno). Durante il primo tentativo di creare una con­nes­sio­ne SSH tra il Pi e un di­spo­si­ti­vo esterno ricevete un avviso di sicurezza/au­ten­ti­fi­ca­zio­ne. Dopo averne preso atto, inserite “yes” sul terminale per pro­se­gui­re. Infine inserite la password per l’utente scelto per col­le­gar­vi alla riga di comando del Raspberry.

N.B.

Può succedere che al Raspberry Pi venga assegnato un indirizzo IP al quale il computer esterno si è già collegato una volta (anche se si trattava di un’altra rete). In questo caso ricevete al momento di stabilire una con­nes­sio­ne un avviso con la richiesta di eliminare il relativo IP dalla lista dei di­spo­si­ti­vi co­no­sciu­ti. Perciò at­te­ne­te­vi alle istru­zio­ni date, prima di eseguire di nuovo il comando SSH.

Come impostare l’accesso SSH su Windows con PuTTY

A dif­fe­ren­za della maggior parte dei sistemi com­pa­ti­bi­li con Unix, Windows non dispone di default di un client SSH. Il primo passaggio consiste quindi nel download di un’ap­pli­ca­zio­ne apposita, tra cui abbiamo scelto PuTTY. Tuttavia esistono anche dei client simili per funzioni e uso, per cui potete ricorrere so­stan­zial­men­te anche a un altro software.

Sul sito del progetto di PuTTY potete scaricare il pacchetto di in­stal­la­zio­ne o di­ret­ta­men­te il file exe del programma (putty.exe). Optando per quest’ultima variante vi ri­spar­mie­re­te il processo di in­stal­la­zio­ne e potrete avviare subito PuTTY. Se avete avviato il client con un doppio clic, dovete solamente inserire il nome host nel campo previsto e cliccare sul pulsante “Open”.

N.B.

In alcuni casi è ne­ces­sa­rio indicare l’indirizzo IP al posto del nome host. Nel caso in cui non sappiate quale sia, potete uti­liz­za­re i metodi pre­sen­ta­ti sopra (Nmap, la lista dei di­spo­si­ti­vi del router, il controllo del terminale).

Ora PuTTY mostra un messaggio in cui vi viene richiesto di con­fer­ma­re l‘af­fi­da­bi­li­tà del server SSH sul Raspberry Pi e le chiavi SSH, cliccando su “Yes”. Come avviene su Unix, questo avviso di sicurezza compare solo quando in­stau­ra­te una con­nes­sio­ne per la prima volta. In una nuova finestra si apre infine la riga di comando tramite la quale potete com­ple­ta­re il login remoto sul terminale del Raspberry inserendo i dati necessari.

Consiglio

Se durante il tentativo di login si verifica un timeout, quindi si supera il tempo massimo di richiesta per la con­nes­sio­ne, è probabile che l’indirizzo IP inserito non coincida con quello reale del Raspberry Pi.

Vai al menu prin­ci­pa­le