[Guida] Ubuntu: come attivare l'autenticazione a due fattori con la Yubikey
In questa mini guida vi spiegherò come proteggere un accesso locale ad un sistema GNU/Linux utilizzando una YubiKey o una SecurityKey. Queste particolari chiavette consentono di attivare su un servizio che lo permette l’autenticazione a due fattori, cioè un sistema che crei sicurezza aggiuntiva per un account online. Creando un processo di verifica in due fasi si rende molto complessa la vita dei cybercriminali ai quali non basterà più bucare la vostra password ma devono riuscire a superare anche il secondo step di verifica. Usare una chiavetta come la YubiKey è il metodo 2FA più efficace (rispetto ai classici SMS o alla e-mail di conferma) in quanto per superare lo step di verifica dovrebbero rubarvi (fisicamente) la chiavetta. Vi mostrerò quindi come configurare il modulo PAM necessario per abilitare l’autenticazione a due fattori su Ubuntu.
YubiKey: login a due fattori (2FA) su Ubuntu
Questo articolo è focalizzato sulle connessioni locali, il seguente procedimento, quindi, non funziona con gli accessi remoti tramite SSH o altri metodi. Il sistema preso come riferimento è Ubuntu 20.10, ma le istruzioni possono essere adattate per qualsiasi altra derivata o distribuzione. Per quanto riguarda le chiavi compatibili, specificamente al sistema operativo di Canonical, sono:
- Tutte le Security Key;
- Tutte le YubiKey FIPS. Serie 4 e Serie 5;Ultimo aggiornamento il 29 Ottobre 2024 10:34
- YubiKey NEO, NEO-n, Edge-n ed Edge.
Prima di procedere bisogna ovviamente preparare il sistema con la configurazione di base. Dopo aver abilitato il repository di Yubico tramite la seguente istruzione:
sudo add-apt-repository ppa:yubico/stable && sudo apt-get update
controllate se è presente il pacchetto libu2f-udev. In caso contrario andrà installato. Potete utilizzare le seguenti direttive:
dpkg -s libu2f-udev #per controllare se è installato sudo apt install libu2f-udev #per installarlo se non presente nel sistema
Se avete una YubiKey NEO o una NEO-n, andrà eseguita un’ulteriore procedura per abilitare la modalità U2F. Scaricate il software manager da questo link, aprite il programma, inserite la chiavetta e dal menu Interfaces selezionate quelle che volete abilitare. Salvate per completare la procedura e proseguire con la guida.
Effettuate il download di questo file da GitHub e salvatelo in /etc/udev/rules.d/. Riavviate il sistema, aprite il terminale ed inserite la chiavetta. Create ora la directory di configurazione:
mkdir ~/.config/Yubico
ed eseguite la seguente direttiva:
pamu2fcfg > ~/.config/Yubico/u2f_keys
il dispositivo inizierà a lampeggiare, toccate il contatto metallico per confermare l’associazione.
Configurazione di prova con sudo
- Ultimo aggiornamento il 29 Ottobre 2024 10:34
Dovete ora configurare GNU/Linux affinché richieda la YubiKey quando si utilizza il comando sudo. Questa configurazione va utilizzata come test del corretto funzionamento del sistema. Aprite il terminale e digitate
sudo nano /etc/pam.d/sudo
Dopo la stringa @include common-auth inserite queste istruzioni:
auth required pam_u2f.so
Premete CTRL + O e salvate i file. Fate molta attenzione a non chiudere il terminale altrimenti la modifica sarà irreversibile.
Rimuovete ora la YubiKey dal computer ed aprite una nuova finestra del terminale. Digitate sudo echo test ed inserite la password quando richiesta. La procedura provocherà un errore. Inserite quindi la chiavetta, riaprite il terminale, e dopo aver inserito la password, toccate il contatto metallico sulla chiavetta appena inizia a lampeggiare. Se questa volta la password è stata accettata, il sistema è stato configurato correttamente e si può passare alla sezione successiva per richiedere la chiave U2F per il login. Rimuovete quindi la riga aggiunta al file /etc/pam.d/sudo.
Configurazione del login
Siamo giunti alla conclusione di questa mini guida. Se le precedenti configurazioni sono andate a buon fine, potete adesso impostare la YoubiKey come obbligatoria per il login locale. Aprite il terminale ed eseguite la direttiva:
sudo nano /etc/pam.d/gdm-password
Dopo la stringa @include common-auth aggiungete la riga:
auth required pam_u2f.so
Salvate ed uscite. Potete adesso utilizzare la vostra YubiKey come strumento per l’autenticazione a due fattori su Ubuntu.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.