GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come configurare server e client Kerberos su Ubuntu 18.04 LTS

Kerberos è un protocollo di autenticazione di rete che utilizza la crittografia a chiave simmetrica e richiede l'autorizzazione di una terza parte affidabile per autenticare le applicazioni client-server. È stato originariamente sviluppato dal Massachusetts Institute of Technology (MIT) per proteggere i servizi di rete forniti dal progetto Athena.

Nel mondo moderno, Kerberos è spesso usato come servizio di autenticazione di terze parti. Ciò significa che tutti i client si fidano del giudizio di Kerberos sull'identità di un altro client.

In questo tutorial, ti mostreremo come configurare l'autenticazione Kerberos tra due server Ubuntu 18.04. Installeremo e configureremo il server Kerberos sul server Ubuntu e quindi installeremo il client Kerberos sull'altro. Infine, testeremo l'autenticazione del servizio SSH con il server Kerberos.

Prerequisiti

  • Server Ubuntu 18.04
    • 10.10.10.15     krb5.ahmad.io   krb5
    • 10.10.10.16     client1.ahmad.io    client1
  • Privilegi di root

Cosa faremo:

  1. Imposta file FQDN
  2. Installa il server Kerberos KDC
  3. Configura il server Kerberos di KDC
  4. Installa e configura il client Kerberos
  5. Test

Passaggio 1 - Impostazione FQDN

Prima di tutto, dobbiamo configurare l'FQDN sul server Kerberos e poi modificare il file '/etc/hosts' del server.

Modificare l'FQDN del server Kerberos utilizzando il comando seguente.

hostnamectl set-hostname krb5.ahmad.io

Successivamente, modifica il file '/etc/hosts' usando l'editor vim.

vim /etc/hosts

Modifica l'indirizzo IP e l'FQDN con il tuo e incollalo.

10.10.10.15     krb5.ahmad.io   krb5

Salva e chiudi.

Ora prova utilizzando il comando 'ping' di seguito e assicurati che l'FQDN sia risolto nell'indirizzo IP corretto.

ping -c 3 $(hostname -f)

Passaggio 2:installazione del server Kerberos KDC

Ora installeremo il server Kerberos sul server "krb5" con l'indirizzo IP "10.10.10.15" e l'FQDN è "krb5.ahmad.io".

Installa il server Kerberos usando il seguente comando apt.

sudo apt install krb5-kdc krb5-admin-server krb5-config -y

Durante l'installazione, ti verrà chiesto informazioni su Kerberos Realm, sul server Kerberos del Realm e sul server Admin.

Per impostazione predefinita, Kerberos utilizzerà il nome di dominio del server Kerberos come REALM, 'AHMAD.IO '.

Il server Kerberos è 'krb5.ahmad.io '.

E il server di amministrazione è lo stesso del server Kerberos 'krb5.ahmad.io '.

Al termine dell'installazione, ti verrà mostrato che il servizio Kerberos non è stato eseguito. Va bene perché configureremo nella fase successiva.

Passaggio 3:configurazione del server Kerberos KDC

Ora genera una nuova password principale per Kerberos REALM usando il comando seguente.

sudo krb5_newrealm

Digita la tua password complessa e la password REALM verrà generata nel file '/etc/krb5kdc/stash'.

Successivamente, è necessario creare l'utente amministratore (principale amministratore) per il server Kerberos KDC, aggiungere il nome host del server Kerberos al database e quindi creare la keytab per il server Kerberos.

Esegui l'interfaccia della riga di comando 'kadmin.local' per il comando di amministrazione Kerberos di seguito.

sudo kadmin.local

Crea una nuova entità utente amministratore denominata "root".

addprinc root/admin

Digita la password complessa per l'entità amministratore 'root'.

Aggiungi il server KDC Kerberos al database e crea il file keytab per l'host KDC.

addprinc -randkey host/krb5.ahmad.io
ktadd host/krb5.ahmad.io

Quindi chiudi l'utilità 'kadmin.local'.

quit

Successivamente, dobbiamo aggiungere il principio di amministrazione "root" all'elenco di controllo degli accessi modificando il file "/etc/krb5kdc/kadm5.acl".

vim /etc/krb5kdc/kadm5.acl

Aggiungi la seguente configurazione.

root/admin * 

Salva e chiudi la configurazione, quindi riavvia il servizio Kerberos.

sudo systemctl restart krb5-admin-server.service

E la configurazione del server KDC Kerberos è stata completata.

Passaggio 4:installazione e configurazione del client Kerberos

In questo passaggio, installeremo il client Kerberos sul server Ubuntu con l'indirizzo IP "10.10.10.16" e il nome host "client1".

- Configura FQDN

Configurare l'FQDN sulla macchina client utilizzando il comando seguente.

hostnamectl set-hostname client1.ahmad.io

Successivamente, modifica il file '/etc/hosts' usando l'editor vim.

vim /etc/hosts

Incolla sia il server KDC Kerberos che il client come di seguito.

10.10.10.15     krb5.ahmad.io   krb5
10.10.10.16     client1.ahmad.io    client1

Salva e chiudi.

- Installa il client Kerberos

Installa i pacchetti client Kerberos eseguendo il seguente comando apt.

sudo apt install -y krb5-user libpam-krb5 libpam-ccreds auth-client-config

Durante l'installazione, ti verrà chiesto informazioni su Kerberos Realm, sul server Kerberos del Realm e sul server Admin.

Per impostazione predefinita, Kerberos utilizzerà il nome di dominio del server Kerberos come REALM, 'AHMAD.IO '.

Il server Kerberos è 'krb5.ahmad.io '.

E il server di amministrazione è lo stesso del server Kerberos 'krb5.ahmad.io '.

E l'installazione del client Kerberos è terminata.

- Configura client Kerberos

Dalla macchina client, connettiti al server KDC Kerberos usando il comando 'kadmin'.

kadmin

E ti verrà richiesta la password del principio 'root/admin'. Digita la password e verrai connesso al sistema di amministrazione Kerberos di KDC.

Ora aggiungi l'FQDN del client 'client1.ahmad.io' al database Kerberos e aggiungi il file keytab per il client.

addprinc -randkey host/client1.ahmad.io
ktadd host/client1.ahmad.io

Quindi chiudi l'interfaccia di amministrazione di kadmin Kerberos.

quit

E la configurazione del client Kerberos è completata.

Fase 5 - Test

A tale scopo, configureremo l'autenticazione SSH utilizzando Kerberos. La macchina client 'client1.ahmad.io' si connetterà al server 'krb5.ahmad.io' tramite SSH con l'autenticazione Kerberos.

- Imposta il server 'krb5.ahmad.io'

Crea un nuovo utente di sistema chiamato 'ammar'.

useradd -m -s /bin/bash ammar

Accedi all'amministrazione Kerberos di KDC e aggiungi un nuovo utente principale chiamato 'ammar'.

kadmin.local
addprinc ammar

Chiudi l'interfaccia di amministrazione di Kerberos e modifica la configurazione ssh '/etc/ssh/sshd_config'.

vim /etc/ssh/sshd_config

Decommenta 'GSSAPIAuthentication' e abilitalo modificando il valore in ''.

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

Salva e chiudi la configurazione, quindi riavvia il servizio ssh.

systemctl restart sshd

- Imposta la macchina 'client1.ahmad.io'

Aggiungi il nuovo utente di sistema 'ammar' sul computer client e accedi ad esso.

useradd -m -s /bin/bash ammar
su - ammar

Successivamente, inizializza l'entità utente Kerberos 'ammar'.

kinit ammar

Digitare la password dell'utente e successivamente verificare il Ticket disponibile utilizzando il comando seguente.

klist

E ti verrà mostrato il seguente risultato.

Ora puoi connettere il server 'krb5.ahmad.io' usando l'autenticazione SSH Kerberos.

ssh krb5.ahmad.io

E sarai connesso al server 'krb5.ahmad.io' tramite SSH con autenticazione Kerberos.

Di seguito è riportato il registro SSH dopo aver effettuato l'accesso al server.

Infine, l'installazione e la configurazione del server e del client Kerberos su Ubuntu 18.04 è stata completata con successo.


Ubuntu
  1. Come configurare e utilizzare il server FTP in Ubuntu Linux

  2. Come installare e proteggere Redis su Ubuntu 18.04 LTS

  3. Come installare server e client NTP su Ubuntu 18.04 LTS

  4. Come configurare il server Rsyslog su Ubuntu 18.04 LTS

  5. Come configurare server e client NFS su Ubuntu 20.04

Come configurare l'ultimo MySQL su Ubuntu 20.04 LTS

Come configurare un server e un client NTP su Ubuntu 20.04 LTS

Come installare il server e il client UrBackup su Ubuntu 20.04

Come installare server e client Telnet su Ubuntu

Come installare server e client NTP su Ubuntu 20.04 LTS

Come configurare server e client NTP su Ubuntu 20.04 LTS