SSH o conosciuto con il suo nome completo Secure Shell Protocol, è un protocollo di comunicazione di rete crittografica che consente a due computer di comunicare in modo sicuro su una rete non protetta. SSH è molto utilizzato per applicazioni di accesso remoto ed eseguibili da riga di comando come le applicazioni terminali.
Per gli utenti che desiderano connettersi a server o altri computer con SSH, il client e la connessione remota devono avere entrambi SSH installato e abilitato affinché ciò sia possibile.
Nel seguente tutorial imparerai come installare e abilitare SSH su Debian 11 Bullseye Desktop o Server e connetterti a un PC remoto .
Prerequisiti
- Sistema operativo consigliato: Debian 11 Bullseye
- Account utente: Un account utente con accesso sudo o root.
Il tutorial utilizzerà il terminale per l'installazione che si trova in Attività> Mostra applicazioni> Terminale.
Esempio:

Aggiorna sistema operativo
Aggiorna la tua Debian sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:
sudo apt update && sudo apt upgrade -y
Il tutorial utilizzerà il comando sudo e supponendo che tu abbia lo stato sudo .
Per verificare lo stato di sudo sul tuo account:
sudo whoami
Esempio di output che mostra lo stato di sudo:
[joshua@debian~]$ sudo whoami
root
Per configurare un account sudo esistente o nuovo, visita il nostro tutorial su Aggiunta di un utente a Sudoer su Debian .
Installazione di SSH (OpenSSH)
SSH potrebbe essere già presente sul tuo sistema a seconda delle selezioni di installazione di Debian scelte durante l'installazione iniziale della distribuzione, ma per coloro che non sono sicuri o devono essere installati, utilizzare il passaggio seguente.
Innanzitutto, esegui il seguente comando nel tuo terminale per iniziare l'installazione.
sudo apt install open-ssh
Esempio di output:

Digita Y , quindi premi il TASTO INVIO per procedere.
Una volta installato, abilita SSH usando il seguente comando.
sudo systemctl enable --now ssh
Quindi, controlla lo stato dell'istanza SSH per assicurarti che sia in esecuzione e che non si siano verificati errori.
systemctl status ssh
Esempio di output:

Un altro trucco pratico consiste nell'usare il seguente comando per vedere le connessioni aperte.
ss -lt
Esempio di output:

Connessione al server SSH
Con SSH ora installato e abilitato, puoi connetterti a un sistema remoto, un altro PC remoto o un server.
Ricorda, il software SSH deve essere abilitato su entrambe le estremità affinché funzioni.
Innanzitutto, dovrai avere l'indirizzo IP interno/esterno o il nome host e preferibilmente anche il nome utente dell'account che si connette, quindi utilizzare il comando ssh per iniziare la connessione.
ssh username@ip-address/hostname
Quando ti connetti all'istanza SSH remota per la prima volta, riceverai il seguente messaggio.
Esempio:

Digita SI, quindi ti verrà chiesto di inserire la tua password; una volta terminato, premi il TASTO INVIO .
Esempio di output (connessione a Fedora 35 PC remoto):

Come sopra, hai inserito la tua password e ti sei connesso con successo come invece di joshua@debian-11, ora vediamo joshua@fedora-35 poiché la finestra del tuo terminale ha effettuato l'accesso alla sessione remota.
Nota che vedrai quando l'ultimo accesso è stato insieme ai tentativi falliti mostrati sopra. Se ne vedi molti, significa che si stanno verificando attacchi di forza bruta e dovresti guardare a regole firewall più rigide o usare qualcosa come fail2ban.
Disabilitazione di SSH (OpenSSH)
Per i casi in cui non è necessario che SSH sia in esecuzione, dovresti sempre disabilitarlo per motivi di sicurezza. Molti bot dannosi scansionano Internet alla ricerca di istanze SSH e le forzano brute se non sono sicure.
Per disabilitare SSH, usa il seguente comando.
sudo systemctl disable ssh --now
Quando è necessario riattivare SSH, utilizzare il comando seguente.
sudo systemctl enable ssh --now