Sicurezza · 5 min read · Dec 30, 2025

Autenticazione a Due Fattori per ownCloud

illuminare il tuo ownCloud utilizzando due fattori per autenticare

di arnobabotte @pixabay

In questo tutorial, ti mostrerò come proteggere la tua installazione di ownCloud con privacyIDEA, che può essere utilizzato per gestire i secondi fattori di autenticazione dei tuoi utenti.

ownCloud è un sistema per memorizzare i tuoi dati o quelli della tua azienda non su un computer di qualcun altro (alias “il Cloud”) ma sul tuo computer, sotto il tuo controllo. privacyIDEA è un sistema per gestire i dispositivi di autenticazione per l’autenticazione a due fattori nella tua rete - non presso alcun Identity Provider - mantenendo così la tua identità e le identità dei tuoi utenti sotto il tuo controllo.

Se vuoi sapere come apparirà, puoi dare un’occhiata a questo video su youtube.

Requisiti

Presumo che tu abbia già un sistema ownCloud 8 attivo e funzionante. Ci sono alcuni esempi piuttosto buoni là fuori. Puoi anche dare un’occhiata a come installare ownCloud 8 con nginx qui su questo sito.

Inoltre, presumo che tu stia eseguendo un sistema privacyIDEA. Questo howto non copre l’installazione di privacyIDEA. Puoi anche trovare un howto qui su Howtoforge per installare privacyIDEA su CentOS oppure puoi utilizzare le istruzioni di installazione nella documentazione.

Si prega di notare: Non è necessario eseguire privacyIDEA e ownCloud sullo stesso server. Sfrutterai appieno la potenza di una tale configurazione, installando privacyIDEA come sistema di autenticazione su un server e configurando le altre applicazioni come ownCloud contro questo privacyIDEA. Questo comporta anche il vantaggio di non dover gestire i dispositivi di autenticazione per ownCloud, i dispositivi di autenticazione per la tua seconda applicazione e i dispositivi di autenticazione per la tua terza applicazione e così via. Vedi, questa soluzione dimostra i suoi punti di forza se hai diverse applicazioni e più di due utenti. Ma funzionerà anche in scenari più piccoli.

Si prega di notare: L’app ownCloud privacyIDEA è in una fase di sviluppo iniziale. Pertanto, qualsiasi feedback che fornisci è molto apprezzato e aiuterà a migliorare questo strumento. Puoi dare feedback qui su howtoforge, tramite gli issue di github o tramite il gruppo Google.

Collegare privacyIDEA al database di ownCloud

Preparazione del database

C’è una condizione per privacyIDEA. Gli utenti di ownCloud devono essere noti a privacyIDEA o viceversa, gli utenti a cui assegni i token in privacyIDEA devono essere disponibili anche in ownCloud.

Potresti avere una configurazione in cui i tuoi utenti si trovano in una directory LDAP, ma in questo esempio utilizziamo semplicemente la tabella utenti SQL esistente di ownCloud.

Si prega di notare: Se stai eseguendo privacyIDEA e ownCloud su server diversi, devi concedere l’accesso al database SQL. In caso di MySQL/MariaDB, devi modificare il bind-address in /etc/mysql/my.cnf di conseguenza come:

bind-address = 0.0.0.0

Inoltre, devi aggiungere il diritto di accesso basato su MySQL:

grant all privileges on owncloud.* to "ocuser"@"privacyIDEA-Server" identified by "password";

Ora l’utente MySQL “ocuser” può accedere al database sul server ownCloud dal server privacyIDEA.

ATTENZIONE: Il traffico di rete verso il server MySQL non è crittografato. Ti consigliamo vivamente di configurare TLS se stai eseguendo questo scenario. Puoi anche trovare alcuni howto su questo sito per configurare MySQL con SSL.

Collegare privacyIDEA a ownCloud

Creare un Risolutore Utente

Ora colleghiamo privacyIDEA a ownCloud, in modo che privacyIDEA conosca gli utenti. Creiamo un nuovo risolutore utente in Config → Users.

Puoi cliccare il pulsante ownCloud che dovrebbe preimpostare tutti i campi necessari nella mappatura degli attributi del database.

Poi puoi cliccare Test SQL Resolver per vedere se tutto è andato bene.

Creare un Realm

Ora puoi andare su Config → Realms per creare un realm predefinito dal risolutore.

Dovresti ora vedere gli utenti di ownCloud nella scheda Users e essere in grado di registrare token per questi utenti.

Registrare un Google Authenticator

privacyIDEA supporta una vasta gamma di token, che puoi trovare qui.

Registreremo rapidamente un Google Authenticator come semplice esempio.

Vai alla vista utenti e scegli un utente per vedere i dettagli dell’utente. Qui puoi cliccare il pulsante Enroll New Token.

Nella finestra di registrazione puoi scegliere il tipo di token e, a seconda del tipo di token, dovrai inserire dettagli diversi. Ma in questo esempio, stiamo utilizzando il tipo di token predefinito HOTP. In fondo alla pagina puoi inserire un OTP PIN.

Clicca Enroll Token.

Il token è registrato e ti viene presentato un codice QR, che puoi scansionare con la tua app Google Authenticator.

Altri tipi di token vengono registrati in altri modi, che esulano dall’ambito di questo tutorial. Per ulteriori informazioni, consulta la documentazione di privacyIDEA.

Ora abbiamo finito, poiché l’utente di ownCloud ha un token assegnato. Puoi ripetere questo processo per ulteriori utenti di ownCloud.

Ottenere l’App ownCloud

Prima di tutto, devi scaricare l’App privacyIDEA per ownCloud.

Puoi scaricare l’App qui. Devi copiare la directory user_privacyidea nella tua directory ownCloud apps/. Supponiamo che tu abbia installato ownCloud in /var/www/owncloud, in modo che tu finisca con una struttura come

root@owncloud:~# ls /var/www/owncloud/apps/user_privacyidea/ -l  
 -rw-rw-r-- 1 root root 1671 Jun 25 15:05 adminSettings.php  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 appinfo  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 img  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 js  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 lib  
 drwxrwxr-x 2 root root 4096 Jun 25 15:17 templates

L’App privacyIDEA è implementata come un backend utente di ownCloud e agirà come un sovrapposto ai tuoi backend utente esistenti per poter intervenire nella richiesta di autenticazione, per aggiungere il secondo fattore al login.

Configurare l’App ownCloud

Vai su Apps → not Enabled e abilita l’App.

Poi puoi andare su Your User → Admin per configurare l’App privacyIDEA.

Devi fornire l’URL del server privacyIDEA. Dovresti eseguire il server privacyIDEA con un certificato affidabile. Se durante il tuo processo di configurazione non hai un certificato affidabile, puoi deselezionare la casella Verifica il certificato SSL del server privacyIDEA.

Per evitare di essere bloccato, puoi selezionare la casella Consenti anche agli utenti di autenticarsi con la loro normale password. In questo caso, se l’autenticazione a privacyIDEA fallisce, l’utente viene autenticato contro il backend utente sottostante di ownCloud. In uso produttivo, dovresti deselezionare questa casella.

I client desktop avranno ovviamente problemi con le password usa e getta. Se stai utilizzando tali client, dovresti selezionare la casella Consenti accesso API a remote.php con password statica. In questo caso, la richiesta di autenticazione proveniente da un client desktop (identificato da remote.php) non sarà autenticata contro privacyIDEA ma contro il backend utente sottostante.

Infine, se tutto è a posto, puoi attivare l’autenticazione a due fattori selezionando la casella Usa privacyIDEA per autenticare gli utenti.

Accedi a ownCloud

Dopo aver attivato l’App privacyIDEA, la schermata di accesso di ownCloud non cambia.

Per accedere, devi inserire il tuo nome utente e nel campo della password devi inserire l’OTP PIN e il valore OTP generato dal tuo Google Authenticator.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.