La sicurezza per qualsiasi sistema operativo è sempre un punto dolente cruciale. Sebbene i sistemi Linux abbiano varie misure di sicurezza integrate e disponibili opzionalmente, nessun sistema operativo (SO) è veramente sicuro. Esistono diversi metodi necessari per proteggere il tuo sistema operativo, ma in questo articolo non parlerò della sicurezza di base. In questo articolo, parlerò del Pluggable Authentication Module (PAM) e di come PAM aiuta a fornire una maggiore sicurezza.
PAM fornisce un meccanismo di autenticazione centralizzato e fornisce un modo generico per le applicazioni di implementare il supporto per l'autenticazione. Consente a un'applicazione di chiamare la libreria PAM, libpam , per eseguire tutte le attività di autenticazione per suo conto e restituire una risposta con esito positivo o negativo all'applicazione.
[ Potrebbe interessarti anche: Configurare l'autenticazione a più fattori su sistemi Linux ]
In qualità di amministratore di sistema, puoi utilizzare PAM per l'autenticazione dinamica dall'utente all'applicazione. Integra un'autenticazione di basso livello con un'API di alto livello. PAM è collegabile perché ci sono moduli PAM per diversi tipi di origini di autenticazione, come Kerberos, SSSD, NIS o file system locali. Esistono diversi casi d'uso per PAM, ma qui discuterò i vantaggi e gli utilizzi di PAM per gli amministratori di sistema.
- PAM si basa su schemi di autenticazione comuni che possono essere utilizzati con un'ampia varietà di applicazioni.
- PAM offre notevole flessibilità e controllo sull'autenticazione per l'amministrazione del sistema.
- PAM è uno dei metodi più diffusi per consentire agli amministratori di sistema di impostare criteri di autenticazione.
In PAM, il /etc/pam.d
directory contiene tutti i file relativi ai servizi. Prendi un esempio di un programma di accesso. Nel /etc/pam.d
directory, il nome del file che contiene il programma di login è login
. In questo modo, tutti i file hanno configurazioni di nomi. In PAM, ogni file ha un formato standard per le sue regole. È necessario seguire lo stesso formato per la creazione delle regole di autenticazione. Puoi fare riferimento alla pagina man di pam.d, dove tutte le regole di sintassi sono ben spiegate.
Esempio di gestione delle password
Gli esempi in questo articolo sono correlati all'autenticazione della password utente in PAM. Per prima cosa ho impostato una regola PAM per la qualità della password forte in modo che se si tenta di impostare una password debole per un utente, il sistema non la accetterà. Puoi impostare una norma per la password come la lunghezza della password deve essere maggiore di sette e deve contenere lettere minuscole, maiuscole e caratteri speciali . È inoltre possibile impostare un requisito per il numero di cifre nella password. Utilizzando questi parametri, puoi creare una password complessa per l'utente per rafforzare l'autenticazione.
Il file che contiene le informazioni sulla qualità della password si trova all'interno di /etc/security
directory. In questa directory, pwquality.conf
è il file di configurazione per i limiti di qualità delle password.
Ci sono alcuni valori che puoi usare per una password di qualità e sono:
- difok :Indica il numero di caratteri della nuova password che non devono essere presenti nella vecchia password.
- minore :imposta la lunghezza minima della nuova password.
- credito :Imposta le cifre massime e minime nella nuova password. Se imposti
-ve
valore in questo parametro, utilizzerà quel valore come numero minimo di cifre nella password. - ucredito :Imposta il massimo carattere maiuscolo nella password. Se usi
-ve
valore, utilizzerà quel valore come limite minimo di caratteri maiuscoli. - credito :imposta un limite di caratteri minuscoli nella password. Se il valore è maggiore di 0, mostra i valori massimi, ma se viene utilizzato con
-ve
o inferiore a 0, quindi configura i caratteri minuscoli minimi in una nuova password. - ocredito :imposta i requisiti per altri personaggi. Puoi impostare il massimo di altri caratteri assegnando valori maggiori di 0. Se i valori sono inferiori a 0, verrà considerato come valore minimo di credito.
- controllo :controlla se le parole della password provengono da cracklib dizionario. Se un valore è impostato su diverso da zero, questa opzione è abilitata.
- controllo utente :Aiuta a verificare se una password contiene un nome utente in qualsiasi forma. Se il valore non è zero, questa opzione è abilitata.
Quindi questi sono alcuni parametri che puoi utilizzare per impostare una password complessa. Durante l'assegnazione di una password, se il requisito non corrisponde, verrà visualizzato un chiaro messaggio di errore.
Nel mio esempio, ora devo impostare i parametri per la password. Requisiti come la lunghezza della password dovrebbero essere sette dove la cifra minima e il carattere maiuscolo dovrebbero essere uno. Gli altri valori dei caratteri devono essere almeno uno nella nuova password. Quindi i valori saranno simili a questo:
minlen=7
dcredit=-1
ucredit=-1
ocredit=-1
Qui la maggior parte dei valori sono impostati per il minimo. Il minimo uno è un requisito, quindi è necessario utilizzare questi parametri nella nuova password. Non c'è limite al valore massimo. La lunghezza minima della password è di sette caratteri e questi sette caratteri includono cifre e caratteri non alfanumerici. Puoi impostare tutti questi valori all'interno di /etc/security/pwquality.conf
file. Puoi inserire questi valori direttamente alla fine del file. Per verificare se le regole che hai impostato funzionano o meno, prova a impostare una varietà di password diverse per un account.
Qui, minlength è sette, quindi se inserisci una password con meno di sette caratteri, ti verrà chiesto un errore. Se non hai inserito almeno una cifra, una lettera maiuscola e altri caratteri come @ o # , ti chiederà anche un errore specifico.
Gli errori saranno simili a questo:
Questo è un esempio di come puoi creare restrizioni per le password in modo che siano più forti. Utilizzando questi moduli PAM, puoi personalizzare la qualità della tua password per rendere più sicuri i tuoi account utente. Puoi anche negare l'accesso a qualsiasi utente su qualsiasi macchina utilizzando PAM. Esistono diversi tipi di operazioni che puoi eseguire con PAM.
Authconfig
Gli amministratori possono utilizzare authconfig
per la configurazione di PAM. Fornisce strumenti da riga di comando e un'interfaccia grafica tramite authconfig-gtk
comando. Questo comando funziona in due modalità:
- Aggiorna :aggiorna i file di configurazione PAM con le opzioni che fornisci.
- Test :stampa le configurazioni senza applicarle effettivamente.
Se questo comando non è installato sul tuo computer, installalo utilizzando:
$ dnf install authconfig
Puoi anche fare un backup del file di configurazione PAM usando authconfig
comando. Usa il comando seguente per creare un backup:
$ authconfig --savebackup=/root/pambackupfile
Questo comando genera un backup per PAM. Creerà un pambackup
directory contenente i file di backup. Puoi anche ripristinare dal backup utilizzando --restorebackup
opzione.
[ Vuoi saperne di più sulla sicurezza? Consulta la checklist di sicurezza e conformità IT. ]
Concludi
In questo articolo hai imparato a conoscere PAM, che ti aiuta a proteggere i processi di autenticazione. Negli esempi, ti ho mostrato come puoi migliorare la qualità della tua password. Gli amministratori di sistema si concentrano molto sulla sicurezza dell'autenticazione perché password utente complesse aiutano a rendere più sicuri gli account utente. In questo articolo hai anche scoperto authconfig
utilità della riga di comando per PAM. Spero che questi ti aiutino mentre ti occupi della sicurezza di Linux.