Hai bisogno
di assistenza?
Costruiamo insieme il tuo sito web.
Installiamo Joomla!® sul tuo server.
La Verifica in due passaggi
Pubblicato il: 06 Novembre 2015
Questo articolo è obsoleto, la versione 3.x di Joomla!® non è più supportata.
!!! Questo il link dell'articolo aggiornato a Joomla!® 5:
https://www.corsijoomla.com/tutorial/joomla-autenticazione-a-piu-fattori-accesso-tramite-passkey.html
Verifica in due passaggi o Autenticazione in due fattori
Introdotta con la versione 3.2 di Joomla!®, la richiesta di un terzo dato (oltre ad username e password) per consentire l'accesso al sito, è ovviamente legata a questioni di sicurezza. Nel caso venissero compromesse le credenziali di accesso username e password, l'accesso al sito sarà salvaguardato dalla necessità di inserire una terza chiave, una specie di one-time password.
Sono disponibili due modalità di autenticazione:
- Google Authenticator - che usufruisce di un'apposita App (gratuita) disponibile per i più comuni mobile
- YubiKey - una comoda chiavetta che va inserita in una porta usb del computer
L'attivazione di una modalità esclude l'altra e sarà quindi necessario scegliere in base alle nostre esigenze ed abitudini quale sia la più adatta al nostro utilizzo.
In entrambe vengono predisposte, come vedremo poi nel dettaglio, delle chiavi di emergenza che ci garantiranno comunque l'accesso anche quando dovesse ad es. mancare la copertura di rete cellulare (con Google Authenticator) o non avessimo con noi la chiavetta YubiKey.
Il tutto viene gestito da due plugin di Joomla!®:
- Two Factor Authentication - Google Authenticator
- Two Factor Authentication - YubiKey
questi sono disabilitati di default ma attivabili manualmente o direttamente dai messaggi post-installazione.
Abilitazione dei plugin
Nel backend molto probabilmete troveremo un messaggio post-installazione con un bottone Abilita la verifica in due passaggi.
In alternativa possiamo andare in Estensioni --> Plugin e filtrare per Tipo: twofactorauth.
Cliccando sul nome dei plugin potremo entrare nella finestra di configurazione e decidere se attivare la verifica in due passaggi in entrambe le aree del sito (backend e frontend) o in una sola di esse.
Dopo aver abilitato uno o entrambi questi plugin succedono due cose, la maschera di login si arricchirà di un nuovo campo "Chiave segreta" (per ora inattivo) e la maschera del profilo utente di un nuovo tab: Verifica in due passaggi.
Google Authenticator in Joomla!®
Per attivare questa modalità conviene prima installare l'apposita App nel nostro device.
Vedi queste pagine per maggiori dettagli:
https://support.google.com/accounts/answer/1066447?hl=it
https://en.wikipedia.org/wiki/Google_Authenticator#Implementation
Utilizziamo ora questo nuovo tab per configurare l'autenticazione in due fattori.
Entriamo in Utenti --> Gestione, clicchiamo su Super User (utente per il quale decidiamo di attivare l'opzione), sul tab Verifica in due passaggi ed infine, dal menù a tendina, su Google Authenticator
A questo punto si aprirà la pagina di configurazione, andiamo al "Passo2 - Impostazioni".
Il plugin genera un nome account, una chiave ed un codice QR.
Questi dati serviranno per sincronizzare in modo univoco i codici generati dalla App con il nostro specifico sito web.
Nota: sebbene io non abbia mai riscontrato disservizi dovuti all'ora impostata teniamo presente l'avvertimento nella finestra di configurazione: "Ricordati di sincronizzare l'orologio del tuo dispositivo con l'orario del server. Una differenza di orario nel tuo dispositivo può causare l'impossibilità ad accedere al tuo sito."
Attivazione della verifica con Google Authenticator
Se il telefono lo permette è sicuramente più rapido avvicinarsi allo schermo e scansionare il QR code, in alternativa dovremmo immettere i due dati, Account e Chiave manualmente.
Fatto questo si genererà un primo codice che va subito inserito nell'apposita casella al "Passo 3 - Attiva la verifica in due passaggi", poi clic in alto su Salva.
A questo punto prendiamo nota delle 10 password di emergenza che ci vengono riportate nel riquadro sottostante per stamparle e conservarle in un luogo sicuro.
Queste password possono essere utilizzate una sola volta (dopo spariscono dall'elenco) e servono a garantirci comunque l'ingresso al sito in caso fossimo nell'impossibilità di generare il codice di verifica. Quando sono in esaurimento vi consiglio di disabilitare l'autenticazione e rifare la procedura di attivazione per ricrearne di nuove.
Ora chiudiamo la finestra, facciamo logout dal backend e testiamo il tutto. Se tutto è stato fatto correttamente comparirà una nuova casella "Chiave segreta" nella maschera di login
Inseriamo le credenziali username e password e lanciamo la nostra App per ottenere la chiave segreta (ne genera una ogni 30 secondi) per entrare nel sito.
YubiKey in Joomla!®
Un altro sistema di verifica in due passaggi disponibile in Joomla!® è la YubiKey, una comodissima chiavetta che va inserita in una porta USB del computer. Sfiorando la superfice sensibile della chiavetta si genera un codice univoco, una one-time password da utilizzare come Chiave segreta nella finestra di login del nostro sito Joomla!®.
Io ho acquistato il modello standard e devo dire che funziona benissimo.
Maggiori dettagli, documentazione e costi potete ricavarli direttamente dal sito del produttore:
Attivazione della verifica con la YubiKey
Andiamo su Utenti --> Gestione, Super User, andiamo al tab Verifica in due passaggi
e selezioniamo dal menù a tendina: YubiKey
Ora (con la chiavetta inserita nella presa USB) posizioniamo il cursore sulla casella Codice di sicurezza e sfioriamo la parte sensibile dalla YubiKey. Si genera una stringa univoca di caratteri composta da una parte iniziale che identifica l'utente seguita da un'altra che varia di volta in volta.
Cliccando ora in alto su Salva, questa stringa sarà inviata ai server YubiCloud per l'autenticazione.
Il messaggio "Utente salvato correttamente" certificherà la corretta attivazione del servizio.
Apparirà una tabella contenente 10 one-time password da utilizzare in caso non sia possibile autenticarsi con la chiavetta.
Per il loro impiego vale lo stesso discorso fatto poco sopra per Google Authenticator.
Facciamo logout e testiamo questa nuova funzionalità.
Con la chiavetta nella presa USB inseriamo username e password, posizioniamo il cursore nella casella "Chiave segreta" e sfioriamo la lucetta verde. Se tutto va bene ci troveremo proiettati nel backend senza nemmeno cliccare il bottone Accedi.
Aiuto! Non riesco più ad entrare
Se per qualche motivo non dovessimo più riuscire ad entrare nel sito dalla finestra di login c'è la possibilità, accedendo al database, di disabilitare i plugin dell'autenticazione in due fattori in modo che non ci venga più richiesta la chiave segreta.
È un'operazione delicata da fare con molta attenzione e solo in caso di necessità.
Avvertenza: eseguire questa procedura solo se si sa cosa si sta facendo. Alterare il database potrebbe avere conseguenze critiche. In ogni caso predisporre un backup del database prima di operare modifiche.
Lanciamo phpMyAdmin e selezioniamo il database del sito. Cerchiamo la tabella xxxxx_extensions e clicchiamo su Browse
Cerchiamo nella colonna name plg_twofactorauth_totp e plg_twofactorauth_yubikey e verifichiamo dalla colonna enabled quale plugin sia abilitato (valore 1). Nella foto lo sono entrambi.
Clicchiamo su Edit in corrispondenza del/dei plugin da disabilitare e nella riga corrispondente a enabled sostituiamo il valore 1 (abilitato) con 0 (disabilitato). Poi clic su Go per salvare.
Se tutto va bene dovremmo ottenere questo risultato
Usciamo da phpMyAdmin e andiamo al sito, la casella Chiave segreta non sarà più presente. Ovviamente in caso di ripristino della funzione di doppia autenticazione, tutto dovrà essere riconfigurato, le password di emergenza non saranno più valide ecc.