Vuoi imparare a configurare l’autenticazione Radius del dashboard Kubernetes con Freeradius? In questo tutorial, ti mostreremo come autenticare gli utenti di Kubernetes Dashboard utilizzando il protocollo Radius e il servizio Freeradius su un computer che esegue Ubuntu Linux.

• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18

Questa esercitazione installerà un cluster Kubernetes a nodo singolo.

Nel nostro esempio, l’indirizzo IP del nodo master Kubernetes è 192.168.15.200.

Nel nostro esempio, l’indirizzo IP del server Radius è 192.168.15.10.

Esercitazione – Installazione del server FreeRadius su Ubuntu Linux

• IP – 192.168.15.10
Sistema Operativo – Ubuntu 20
• Hostname – FREERADIUS

Nella console Linux usare i comandi seguenti per installare il servizio FreeRadius.

Copy to Clipboard

A questo punto, è necessario aggiungere i client FreeRadius a clients.conf;.

Individuare e modificare il file clients.conf.

Copy to Clipboard

Aggiungere le righe seguenti alla fine del file clients.conf.

Copy to Clipboard

Nel nostro esempio, stiamo aggiungendo 1 dispositivo client:In our example, we are adding 1 client device:

Il dispositivo è stato denominato KUBERNETES e ha l’indirizzo IP 192.168.15.200.

Nel nostro esempio, abbiamo impostato il segreto: KAMISAMA123.

Ora, abbiamo bisogno di aggiungere gli utenti FreeRadius al file di configurazione USERS.

Trovare e modificare il file di configurazione utente Di Freeradius.

Copy to Clipboard

Aggiungere le seguenti righe alla fine del file

Copy to Clipboard

Nel nostro esempio, creiamo un account utente denominato ADMIN.

Riavviare il server Freeradius.

Copy to Clipboard

Testare il file di configurazione del server radius.

Copy to Clipboard

Hai completato l’installazione di Freeradius su Ubuntu Linux.

Tutorial Kubernetes – Installazione del nodo master

Installare l’elenco dei pacchetti richiesti.

Copy to Clipboard

Installare il servizio Docker.

Copy to Clipboard

Abilitare il servizio Docker durante l’avvio.

Copy to Clipboard

Modificare il file di configurazione del servizio Docker.

Copy to Clipboard

Aggiungere la seguente configurazione alla fine dell’elemento denominato: EXECSTART

Copy to Clipboard

Ecco il file prima della nostra configurazione.

Copy to Clipboard

Ecco il file dopo la nostra configurazione.

Copy to Clipboard

Creare un file di configurazione di sistema.

Copy to Clipboard

Ecco il contenuto del file.

Copy to Clipboard

Abilitare il file di configurazione del sistema.

Copy to Clipboard

Modificare il file di configurazione denominato: MODULES.CONF

Copy to Clipboard

Aggiungere la seguente configurazione alla fine di questo file.

Copy to Clipboard

Modificare il file di configurazione FSTAB e disabilitare l’utilizzo della memoria Swap.

Copy to Clipboard

Ecco il file prima della nostra configurazione.

Copy to Clipboard

Ecco il file dopo la nostra configurazione.

Copy to Clipboard

Impostare un nome host univoco.

Copy to Clipboard

Creare un file per configurare le variabili di ambiente necessarie.

Copy to Clipboard

Ecco il contenuto del file.

Copy to Clipboard

Riavviare il computer.

Copy to Clipboard

Scaricare e installare la chiave del repository Kubernetes.

Copy to Clipboard

Aggiungi il repository ufficiale Kubernetes.

Copy to Clipboard

Installare i pacchetti Kubernetes.

Copy to Clipboard

Scarica le immagini Kubernetes richieste.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Inizializzare il cluster Kubernetes.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Prendere nota del comando per aggiungere nodi al cluster Kubernetes.

Copy to Clipboard

Impostare l’autorizzazione file corretta per il file di configurazione Kubernetes.

Copy to Clipboard

Installare la configurazione di rete richiesta.

Copy to Clipboard

Per impostazione predefinita, al nodo master Kubernetes non è consentito l’esecuzione di PODS.

Facoltativamente, abilitare il nodo master Kubernetes per l’esecuzione di PODS.

Copy to Clipboard

Nel nostro esempio, stiamo usando un cluster Kubernetes a nodo singolo.

Esercitazione – Installazione di Kubernetes Dashboard

Installare l’elenco dei pacchetti richiesti.

Copy to Clipboard

Scaricare il file YAML richiesto.

Copy to Clipboard

Installare il dashboard di Kubernetes.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Creare un account di servizio per il dashboard.

Copy to Clipboard

Configurare il ruolo di amministratore del cluster per l’account del servizio Dashboard.

Copy to Clipboard

Creare un account di servizio per il proxy Apache.

Copy to Clipboard

Configurare il ruolo di amministratore del cluster per l’account proxy Apache.

Copy to Clipboard

Elencare il segreto Apache disponibile sul server Kubernetes.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Nota che il nome del tuo segreto non sarà lo stesso del nostro.

Ottenere il valore del token segreto Apache.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Prendere nota del valore del token Apache.

Nel nostro esempio, questo è il valore del token:

Copy to Clipboard

Elencare l’indirizzo IP del cluster del servizio Dashboard.

Copy to Clipboard

Ecco l’output del comando.

Copy to Clipboard

Prendere nota dell’indirizzo IP del cluster e della porta TCP.

In questo esempio, il cluster Dashboard utilizza la porta TCP 443 e l’indirizzo IP 10.107.55.24.

La configurazione del dashboard richiesta è stata completata.

Proxy Kubernetes – Autenticazione Radius con Apache

Nel nodo Master installare il server Apache.

Copy to Clipboard

Attivare i moduli Apache richiesti.

Copy to Clipboard

Modificare il file di configurazione Apache.

Copy to Clipboard

Aggiungere le righe seguenti alla fine di questo file.

Copy to Clipboard

Creare una chiave privata e un certificato utilizzando il comando OpenSSL.

Copy to Clipboard

Immettere le informazioni richieste.

Copy to Clipboard

Nell’opzione denominata COMMON_NAME, è necessario immettere l’indirizzo IP o il nome host.

Nel nostro esempio, usiamo l’indirizzo IP: 192.168.15.200

Convertire il certificato proxy Kubernetes esistente e la chiave in un singolo file in formato PEM.

Copy to Clipboard

Modificare il file di configurazione Apache per il sito Web predefinito.

Copy to Clipboard

Ecco il file, prima della nostra configurazione.

Copy to Clipboard

Ecco il file, dopo la nostra configurazione.

Copy to Clipboard

Modificare l’indirizzo IP dell’elemento di configurazione denominato ADDRADIUSAUTH con l’indirizzo IP del server Radius.

Modificare l’indirizzo IP degli elementi di configurazione denominati PROXYPASS e PROXYPASSREVERSE con l’indirizzo IP del cluster Dashboard.

Modificare il valore del token CI denominato REQUESTHEADER con il valore del token segreto Apache creato in precedenza.

Nel nostro esempio, abbiamo abilitato l’uso di HTTPS usando certificati autofirmati.

Copy to Clipboard

Nel nostro esempio, abbiamo configurato l’uso dell’autenticazione RADIUS.

Copy to Clipboard

Apache rappresenterà la comunicazione HTTPS tra l’utente e l’indirizzo IP del cluster Dashboard.

Copy to Clipboard

Apache utilizzerà un certificato e una chiave creati automaticamente durante l’installazione del server Kubernetes per eseguire l’autenticazione TLS reciproca sul Dashboard.

Copy to Clipboard

Il server Apache aggiungerà un’intestazione a tutti i pacchetti inviati al Dashboard.

Questa intestazione è denominata AUTHORIZATION BEARER e contiene il token segreto creato in precedenza nel proxy Apache.

Copy to Clipboard

Apache reindirizzerà inoltre gli utenti HTTP alla versione HTTPS dell’URL richiesto.

Copy to Clipboard

Riavviare il servizio Apache.

Copy to Clipboard

Aprire il browser e accedere alla versione HTTPS dell’indirizzo IP del server Apache.

Nel nostro esempio, il seguente URL è stato immesso nel browser:

• https://192.168.15.200

Il server Apache richiederà l’esecuzione dell’autenticazione utente.

Kubernetes Dashboard Proxy Authentication

Dopo un accesso riuscito, il Dashboard Kubernetes dovrebbe essere presentato.

Kubernetes Dashboard

Il proxy Apache si autenticherà automaticamente al Dashboard Kubernetes utilizzando la funzione denominata: AUTH HEADER.

Kubernetes dashboard Authorization bearer

Hai completato con successo la configurazione di Apache come proxy per il Dashboard Kubernetes.