Come configurare il server e il 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 attendibile 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 viene spesso utilizzato come servizio di autenticazione di terze parti. Ciò significa che tutti i clienti si fidano del giudizio di Kerberos sull’identità di un altro cliente.

In questo tutorial, vi mostreremo come impostare 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

  • Ubuntu server 18.04
    • 10.10.10.15 krb5.ahmad.io krb5
    • 10.10.10.16 client1.ahmad.io client1
  • privilegi di Root

Cosa faremo:

  1. Configura file FQDN
  2. Installa KDC Kerberos Server
  3. Configura KDC Kerberos Server
  4. Installa e configura Kerberos Client
  5. Testing

Passo 1 – Imposta FQDN

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

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

hostnamectl set-hostname krb5.ahmad.io

Successivamente, modifica il file ‘/etc/hosts’ usando vim editor.

vim /etc/hosts

Cambia l’indirizzo IP e l’FQDN con il tuo e incollalo.

10.10.10.15 krb5.ahmad.io krb5

Salva e chiudi.

Ora prova usando il comando’ ping ‘ qui sotto e assicurati che l’FQDN sia risolto al giusto indirizzo IP.

ping -c 3 $(hostname -f)

Passo 2-Installare KDC Kerberos Server

Ora stiamo andando a installare il server Kerberos sul server ‘krb5’ con indirizzo IP ‘10.10.10.15’ e il FQDN è ‘krb5.ahmad.io’.

Installa Kerberos server usando il seguente comando apt.

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

Durante l’installazione, ti verrà chiesto informazioni sul reame Kerberos, sul server Kerberos del Reame e sul server Admin.

per impostazione predefinita, il Kerberos utilizzare il server Kerberos nome di dominio come un REGNO, ‘AHMAD.IO’.

Il server Kerberos ‘krb5.ahmad.io’.

E l’Admin del server stesso come server Kerberos ‘krb5.ahmad.io’.

una Volta terminata l’installazione, vi verrà mostrato il servizio Kerberos non è riuscito a eseguire. Va bene perché configureremo nella fase successiva.

Passo 3 – Configurare KDC Kerberos Server

Ora generare una nuova password principale forte per il REAME Kerberos utilizzando il seguente comando.

sudo krb5_newrealm

Digitare la password complessa e la password del REALM verrà generata nel file ‘/etc/krb5kdc/stash’.

Successivamente, è necessario creare l’utente admin (admin principal) per il server KDC Kerberos, aggiungere il nome host del server Kerberos al database e quindi creare la scheda chiave per il server Kerberos.

Eseguire il ‘kadmin.interfaccia a riga di comando locale per il comando di amministrazione Kerberos di seguito.

sudo kadmin.local

Crea un nuovo principal utente amministratore chiamato ‘root’.

addprinc root/admin

Digitare la password complessa per l’amministratore principale “root”.

Aggiungere il server Kerberos KDC al database e creare il file keytab per l’host KDC.

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

Quindi chiudere il ‘kadmin.locale’ utilità.

quit

Successivamente, dobbiamo aggiungere il principio di amministratore ‘ root ‘all’elenco di controllo degli accessi modificando’ /etc/krb5kdc/kadm5.file acl.

vim /etc/krb5kdc/kadm5.acl

Aggiungere la seguente configurazione.

root/admin * 

Salvare e chiudere la configurazione, quindi riavviare il servizio Kerberos.

sudo systemctl restart krb5-admin-server.service

E la configurazione del server KDC Kerberos è stata completata.

Passo 4-Installare e configurare Kerberos Client

In questo passaggio, stiamo andando a installare il client Kerberos su Ubuntu server con l’indirizzo IP ‘10.10.10.16’ e il nome host ‘client1’.

– Configurare FQDN

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

hostnamectl set-hostname client1.ahmad.io

Successivamente, modifica il file ‘/etc/hosts’ usando vim editor.

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 Kerberos Client

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 sul reame Kerberos, sul server Kerberos del reame e sul server Admin.

Per impostazione predefinita, Kerberos utilizzerà il nome di dominio del server Kerberos come REAME, ‘AHMAD.IO’.

Il server Kerberos è ‘krb5.ahmad.io’.

E il server di amministrazione come il server Kerberos ‘krb5.ahmad.io”.

E l’installazione per il client Kerberos è terminata.

– Configurare il client Kerberos

Dalla macchina client, connettersi al server KDC Kerberos utilizzando il comando ‘kadmin’.

kadmin

E ti verrà richiesta la password del principio “root/admin”. Digitare la password per accedere al sistema di amministrazione KDC Kerberos.

Ora aggiungi il client FQDN ‘client1.ahmad.io’ al database Kerberos e aggiungere il file keytab per il client.

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

Quindi chiudere l’interfaccia di amministrazione kadmin Kerberos.

quit

E la configurazione del client Kerberos è completata.

Passo 5-Testing

Per questo scopo di test, stiamo andando a configurare l’autenticazione SSH utilizzando il Kerberos. La macchina client ‘client1.ahmad.io’ si connetterà al server ‘krb5.ahmad.io’ attraverso SSH con l’autenticazione Kerberos.

– Configurazione ‘krb5.ahmad.io’ Server

Crea un nuovo utente di sistema chiamato ‘ammar’.

useradd -m -s /bin/bash ammar

Accedere all’amministrazione KDC Kerberos e aggiungere un nuovo utente principale chiamato ‘ammar’.

kadmin.local
addprinc ammar

Chiudere l’interfaccia di amministrazione Kerberos e modificare la configurazione ssh ‘/etc/ssh/sshd_config’.

vim /etc/ssh/sshd_config

Decommentare il ‘GSSAPIAuthentication’ e abilitarlo modificando il valore in “.

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

Salvare e chiudere la configurazione, quindi riavviare il servizio ssh.

systemctl restart sshd

– Configurazione ‘client1.ahmad.io’ Machine

Aggiungi un nuovo utente di sistema ‘ammar’ sul computer client e accedi ad esso.

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

Successivamente, inizializzare il principal utente Kerberos ‘ammar’.

kinit ammar

Digitare la password dell’utente e successivamente controllare il Ticket disponibile utilizzando il seguente comando.

klist

E ti verrà mostrato il seguente risultato.

Ora è possibile collegare il ‘krb5.ahmad.io’ server che utilizza l’autenticazione SSH Kerberos.

ssh krb5.ahmad.io

E sarai connesso al ‘krb5.ahmad.io’ server 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 sono state completate con successo.

Write a Comment

Il tuo indirizzo email non sarà pubblicato.