Protezione di SSH su RedHat con l'autenticazione a due fattori WiKID
SSH offre un canale altamente sicuro per l'amministrazione remota dei server. Tuttavia, se devi affrontare un audit per requisiti normativi o aziendali, come Visa/Mastercard PCI, devi essere consapevole di alcune potenziali carenze relative all'autenticazione che potrebbero causare mal di testa in un audit. Ad esempio:
- Non c'è modo di controllare quali utenti hanno l'autorizzazione della chiave pubblica
- Non c'è modo di imporre la complessità della passphrase (o anche essere sicuri che ne venga utilizzata una)
- Non c'è modo di far scadere una chiave pubblica
In questo documento dimostreremo come configurare l'autenticazione a due fattori da WiKID su Redhat. Il WiKID Strong Authentication System è una soluzione di autenticazione a due fattori commerciale/open source. Innanzitutto, configureremo un dominio sul server WiKID, quindi aggiungeremo il server di destinazione come client di rete al server WiKID e infine configureremo il box Redhat usando pam-radius.
Presumiamo che il tuo server sia attivo e funzionante e che tu sia pronto per implementare l'autenticazione a due fattori nel tuo ambiente.
Aggiunta di un dominio al server WiKID
Crea un client di rete
Dopo aver salvato le informazioni sul dominio, fai clic su Client di rete scheda e Crea nuovo client di rete . Immettere un nome per questo client e l'indirizzo IP del gateway SSH sulla rete interna. Seleziona Radius come protocollo e il dominio che hai creato sopra come dominio.
Fai clic su Aggiungi per ottenere la pagina successiva e inserire il segreto condiviso per Radius.
Dovrai ripetere questo processo per ogni server sulla tua rete.
Configura SSH sulla tua Redhat Box
Ora configureremo SSH sulla macchina di destinazione. Ogni versione di Linux gestisce PAM in modo leggermente diverso. Questo tutorial spiega come installare pam-radius per l'autenticazione a due fattori su Redhat.
Innanzitutto, scarica il file tar del sorgente. La versione attuale è 1.3.17
$ wget ftp://ftp.freeradius.org/pub/radius/pam_radius-1.3.17.tar.gz
Decomprimi il file:
$ tar -xzvf pam_radius-1.3.17.tar.gz
Installa pam-devel:
$ sudo yum install pam-devel
Passa alla directory creata ed esegui make:
$ make
Potresti vedere alcuni errori, ma se viene creato .so, dovresti andare bene. Copia la libreria nella posizione corretta:
$ sudo cp pam_radius_auth.so /lib/security/
Usa il tuo editor preferito per dire a SSH di utilizzare il raggio per l'autenticazione. Aggiungi questo come prima riga:
auth sufficiente /lib/security/pam_radius_auth.so
Salva il file ed esci.
Ora dobbiamo dire a PAM dove si trova il server radius. In questo caso è il server WiKID. (NB:un altro vantaggio dell'utilizzo di radius è che indirizzi le richieste di autenticazione attraverso la tua directory:LDAP o AD per l'autorizzazione. Lo consigliamo vivamente.)
Modifica o crea il tuo file /etc/raddb/server. C'è un esempio qui .
$ sudo vim /etc/pam_radius_auth.conf
Modifica la riga "altro-server altro-segreto 3" sostituendo "altro-server" con l'indirizzo IP o il nome host del tuo server WiKID Strong Authentication (o server del raggio se ne hai uno impostato tra WiKID e i tuoi server) e cambia "altro -secret' il segreto condiviso per questo client di rete.
Ora sei pronto per il test. Ti consiglio di eseguire 'tail -f /var/log/secure' durante il test.
Nota che non abbiamo apportato modifiche alla configurazione dell'account, quindi l'utente dovrebbe avere un account locale sulla macchina oppure puoi configurare l'account per utilizzare pam_ldap e puntarlo al tuo server AD/LDAP.
SSH remoto ora è estremamente sicuro. Nessun utente può accedere al server senza prima ottenere un passcode monouso dal server WiKID. I due fattori di autenticazione sono il possesso del token WiKID (e la sua chiave crittografica) e la conoscenza del PIN. Poiché il PIN è convalidato sul server WiKID, è molto facile disabilitare un utente. Tutto è registrato e qualsiasi auditor dovrebbe essere molto soddisfatto.
Inoltre, potresti richiedere un passcode monouso WiKID per l'accesso come root sui computer interni. Basta creare creare un nuovo dominio per su e modificare /etc/pam.d/su in modo appropriato. Ciò ti consentirà anche di suddividere i server in diversi gruppi per la gestione. Basta creare Ad esempio, se disponi di un set di server per le risorse umane a cui solo alcuni amministratori hanno accesso come root, possono essere configurati per un dominio WiKID specifico, consentendo un controllo dell'accesso granulare e un'autenticazione avanzata. Ottieni maggiori informazioni sull'autenticazione a due fattori dal sito Web WiKID.