GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Guida completa alla configurazione di SSH in Ubuntu

SSH è diventato il metodo predefinito per accedere a un server Linux remoto in questi giorni.

SSH sta per Secure Shell ed è un protocollo di rete potente, efficiente e popolare utilizzato per stabilire la comunicazione tra due computer in modo remoto. E non dimentichiamo la parte sicura del suo nome; SSH crittografa tutto il traffico per prevenire attacchi come il dirottamento e l'intercettazione offrendo al contempo diversi metodi di autenticazione e una miriade di opzioni di configurazione.

In questa guida per principianti imparerai:

  • Il concetto di base di SSH
  • Configurazione del server SSH (sul sistema a cui desideri accedere in remoto)
  • Connessione al server remoto tramite SSH dalla macchina client (il tuo personal computer)

Le basi assolute di SSH

Prima di vedere qualsiasi processo di configurazione, sarà meglio esaminare il concetto di base assoluto di SSH.

Il protocollo SSH si basa sull'architettura server-client. Il “server” permette al “client” di essere connesso attraverso un canale di comunicazione. Questo canale è crittografato e lo scambio è regolato dall'uso di chiavi SSH pubbliche e private.

OpenSSH è uno degli strumenti open source più popolari che fornisce la funzionalità SSH su Linux, BSD e Windows.

Per una corretta configurazione SSH, devi:

  • Disporre di componenti server SSH sulla macchina che funge da server. Questo è fornito da openssh-server pacchetto.
  • Disponi di un componente client SSH sulla macchina da cui desideri connetterti alla macchina server remota. Questo è fornito da openssh-client pacchetto e la maggior parte delle distribuzioni Linux e BSD sono preinstallati con esso.

È importante mantenere una distinzione tra server e client. Potresti non voler che il tuo personal computer agisca come server SSH a meno che tu non abbia buone ragioni per cui desideri che altri si colleghino al tuo sistema tramite SSH.

In genere, hai un sistema dedicato che funziona come server. Ad esempio, un Raspberry Pi che esegue il server Ubuntu. Abiliti SSH sul Raspberry Pi in modo da poter controllare e gestire il dispositivo dal tuo personal computer principale utilizzando SSH in un terminale.

Con queste informazioni, vediamo come puoi configurare un server SSH su Ubuntu.

Configurazione del server SSH su Ubuntu

La configurazione di SSH non è complicata e richiede solo pochi passaggi per farlo.

Prerequisiti

  • Un utente con sudo privilegi sulla macchina server
  • Connessione Internet per scaricare i pacchetti richiesti
  • Almeno un altro sistema nella tua rete. Può essere un altro computer sulla tua LAN, un server remoto via Internet o una macchina virtuale ospitata nel tuo computer.

Anche in questo caso, l'installazione del server SSH dovrebbe essere eseguita sul sistema che si desidera fungere da server e al quale si desidera connettersi in remoto tramite SSH.

Fase 1:installa i pacchetti richiesti

Iniziamo aprendo una finestra di terminale per inserire i comandi necessari.

Ricorda di aggiornare il tuo sistema Ubuntu prima di installare nuovi pacchetti o software con per assicurarti di eseguire le ultime versioni.

 sudo apt update && sudo apt upgrade 

Il pacchetto necessario per eseguire SSH Server è fornito dal componente openssh-server di OpenSSH:

sudo apt install openssh-server

Fase 2:verifica dello stato del server

Una volta terminato il download e l'installazione del pacchetto, il servizio SSH dovrebbe essere già in esecuzione, ma per essere sicuri lo verificheremo con:

service ssh status

Puoi anche usare i comandi systemd:

sudo systemctl status ssh

Dovresti vedere qualcosa del genere, con la parola Attivo evidenziata. Premi q per tornare al prompt dei comandi.

Se nel tuo caso il servizio non è attivo dovrai attivarlo in questo modo:

sudo systemctl enable --now ssh

Fase 3:Consentire SSH attraverso il firewall

Ubuntu viene fornito con un'utilità firewall chiamata UFW (UncomplicatedFirewall) che è un'interfaccia per iptables che a sua volta gestisce le regole della rete. Se il firewall è attivo, potrebbe impedire la connessione al server SSH.

Per configurare UFW in modo che consenta l'accesso desiderato, è necessario eseguire il comando seguente:

sudo ufw allow ssh

Lo stato di UFW può essere verificato eseguendo sudo ufw status .

In questo momento il nostro server SSH è attivo e funzionante, aspettando solo una connessione da un client.

Connessione al sistema remoto dalla macchina locale

Il tuo sistema Linux locale dovrebbe già avere il client SSH installato. In caso contrario, puoi sempre installarlo utilizzando il seguente comando su Ubuntu:

sudo apt install openssh-client

Per connetterti al tuo sistema Ubuntu devi conoscere l'indirizzo IP del computer e utilizzare il ssh comando, in questo modo:

ssh [email protected] 

Cambia nome utente al tuo utente effettivo nel sistema e all'indirizzo all'indirizzo IP della tua macchina Ubuntu.

Se non conosci l'indirizzo IP del tuo computer puoi digitare ip a nel terminale del server e controllare l'output. Dovresti avere qualcosa del genere:

Come si può vedere qui il mio indirizzo IP è 192.168.1.111 . Proviamo a connetterci utilizzando [email protetta] formato.

ssh [email protected]

La prima volta che ti connetti a un server SSH, ti verrà chiesto il permesso di aggiungere l'host. Digita yes e premi Invio per continuare.

Immediatamente SSH ti dice che l'host è stato aggiunto in modo permanente e quindi chiede la password assegnata al nome utente. Digita la password e premi Invio ancora una volta.

E voilà! Verrai connesso al tuo sistema Ubuntu da remoto!

Ora puoi lavorare normalmente nel terminale del tuo sistema remoto.

Chiusura della connessione SSH

Per chiudere la connessione è sufficiente digitare exit e lo chiuderà subito, senza chiedere conferma.

Interruzione e disabilitazione di SSH in Ubuntu

Se vuoi interrompere il servizio SSH avrai bisogno di questo comando:

sudo systemctl stop ssh

Ciò interromperà il servizio fino al riavvio o fino al riavvio del sistema. Per riavviarlo, digita:

sudo systemctl start ssh

Ora, se vuoi disabilitarne l'avvio durante l'avvio del sistema, usa questo:

sudo systemctl disable ssh

Ciò non interromperà l'esecuzione del servizio durante la sessione corrente, ma solo il caricamento durante l'avvio. Se vuoi riavviarlo durante l'avvio del sistema, digita:

sudo systemctl enable ssh

Altri client SSH

Lo strumento ssh è incluso nella maggior parte dei sistemi *nix, da Linux a macOS, ma queste non sono le uniche opzioni esistenti, ecco un paio di client che possono essere utilizzati da altri sistemi operativi:

  • PuTTY è un client SSH gratuito e open source molto popolare tra gli utenti Windows. Puoi anche installare PuTTY su Ubuntu. È pieno di funzionalità e molto facile da usare. Se ti stai connettendo alla tua macchina Ubuntu da una stazione Windows, PuTTY è un'ottima opzione.
  • JuiceSSH è uno strumento straordinario per gli utenti Android. Se sei in viaggio e hai bisogno di un client mobile per connetterti al tuo sistema Ubuntu, ti consiglio vivamente di provare JuiceSSH. È in circolazione da quasi 10 anni ed è gratuito.
  • E infine, Termius è disponibile per Linux, Windows, macOS, iOS e Android. Ha una versione di livello gratuito e anche diverse opzioni premium. Se utilizzi molti server e lavori con team che condividono connessioni, Termius è una buona opzione per te.

Conclusione

Con queste istruzioni, puoi configurare SSH come servizio server nei nostri sistemi Ubuntu per poterti connettere in remoto e in sicurezza al tuo computer per lavorare con la riga di comando ed eseguire qualsiasi attività richiesta.

Il nostro altro sito Web, Linux Handbook, contiene vari articoli informativi su SSH. Da qui, ti consiglio di leggere quanto segue:

  • Iniziare con SSH su Linux
  • Utilizzo del file di configurazione SSH per gestire più connessioni SSH
  • Aggiunta della chiave pubblica al server SSH per l'autenticazione senza password
  • Suggerimenti per rafforzare SSH per proteggere il tuo server SSH

Se lo trovi travolgente, Linux Handbook ha un corso video premium che spiega SSH per i principianti insieme a laboratori pratici da seguire. Questo ti darà una conoscenza più snella dell'argomento.

Buon lavoro a distanza!



Ubuntu
  1. Come generare chiavi SSH su Ubuntu 18.04

  2. Consenti l'accesso root ssh sul server Linux Ubuntu 14.04

  3. Guida di Ubuntu 20.04

  4. Abilita SSH su Ubuntu 20.04 - Guida passo passo?

  5. Installa Zabbix su Ubuntu Server 16.04 LTS - Guida completa

Come installare il server SSH in Ubuntu 20.04

Come abilitare il server SSH su Ubuntu 22.04

Come installare il server SSH su Ubuntu 18.04 LTS

Come installare il server SSH su Ubuntu 20.04 LTS

Come installare il server SSH su Ubuntu 22.04 LTS

Ubuntu Firewall UFW – Una guida completa