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.
Kubernetes – Tutorial
In questa pagina, offriamo un rapido accesso a un elenco di tutorial relativi a Kubernetes.
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.
A questo punto, è necessario aggiungere i client FreeRadius a clients.conf;.
Individuare e modificare il file clients.conf.
Aggiungere le righe seguenti alla fine del file clients.conf.
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.
Aggiungere le seguenti righe alla fine del file
Nel nostro esempio, creiamo un account utente denominato ADMIN.
Riavviare il server Freeradius.
Testare il file di configurazione del server radius.
Hai completato l’installazione di Freeradius su Ubuntu Linux.
Tutorial Kubernetes – Installazione del nodo master
Installare l’elenco dei pacchetti richiesti.
Installare il servizio Docker.
Abilitare il servizio Docker durante l’avvio.
Modificare il file di configurazione del servizio Docker.
Aggiungere la seguente configurazione alla fine dell’elemento denominato: EXECSTART
Ecco il file prima della nostra configurazione.
Ecco il file dopo la nostra configurazione.
Creare un file di configurazione di sistema.
Ecco il contenuto del file.
Abilitare il file di configurazione del sistema.
Modificare il file di configurazione denominato: MODULES.CONF
Aggiungere la seguente configurazione alla fine di questo file.
Modificare il file di configurazione FSTAB e disabilitare l’utilizzo della memoria Swap.
Ecco il file prima della nostra configurazione.
Ecco il file dopo la nostra configurazione.
Impostare un nome host univoco.
Creare un file per configurare le variabili di ambiente necessarie.
Ecco il contenuto del file.
Riavviare il computer.
Scaricare e installare la chiave del repository Kubernetes.
Aggiungi il repository ufficiale Kubernetes.
Installare i pacchetti Kubernetes.
Scarica le immagini Kubernetes richieste.
Ecco l’output del comando.
Inizializzare il cluster Kubernetes.
Ecco l’output del comando.
Prendere nota del comando per aggiungere nodi al cluster Kubernetes.
Impostare l’autorizzazione file corretta per il file di configurazione Kubernetes.
Installare la configurazione di rete richiesta.
Per impostazione predefinita, al nodo master Kubernetes non è consentito l’esecuzione di PODS.
Facoltativamente, abilitare il nodo master Kubernetes per l’esecuzione di PODS.
Nel nostro esempio, stiamo usando un cluster Kubernetes a nodo singolo.
Esercitazione – Installazione di Kubernetes Dashboard
Installare l’elenco dei pacchetti richiesti.
Scaricare il file YAML richiesto.
Installare il dashboard di Kubernetes.
Ecco l’output del comando.
Creare un account di servizio per il dashboard.
Configurare il ruolo di amministratore del cluster per l’account del servizio Dashboard.
Creare un account di servizio per il proxy Apache.
Configurare il ruolo di amministratore del cluster per l’account proxy Apache.
Elencare il segreto Apache disponibile sul server Kubernetes.
Ecco l’output del comando.
Nota che il nome del tuo segreto non sarà lo stesso del nostro.
Ottenere il valore del token segreto Apache.
Ecco l’output del comando.
Prendere nota del valore del token Apache.
Nel nostro esempio, questo è il valore del token:
Elencare l’indirizzo IP del cluster del servizio Dashboard.
Ecco l’output del comando.
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.
Attivare i moduli Apache richiesti.
Modificare il file di configurazione Apache.
Aggiungere le righe seguenti alla fine di questo file.
Creare una chiave privata e un certificato utilizzando il comando OpenSSL.
Immettere le informazioni richieste.
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.
Modificare il file di configurazione Apache per il sito Web predefinito.
Ecco il file, prima della nostra configurazione.
Ecco il file, dopo la nostra configurazione.
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.
Nel nostro esempio, abbiamo configurato l’uso dell’autenticazione RADIUS.
Apache rappresenterà la comunicazione HTTPS tra l’utente e l’indirizzo IP del cluster Dashboard.
Apache utilizzerà un certificato e una chiave creati automaticamente durante l’installazione del server Kubernetes per eseguire l’autenticazione TLS reciproca sul Dashboard.
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.
Apache reindirizzerà inoltre gli utenti HTTP alla versione HTTPS dell’URL richiesto.
Riavviare il servizio Apache.
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.
Dopo un accesso riuscito, il Dashboard Kubernetes dovrebbe essere presentato.
Il proxy Apache si autenticherà automaticamente al Dashboard Kubernetes utilizzando la funzione denominata: AUTH HEADER.
Hai completato con successo la configurazione di Apache come proxy per il Dashboard Kubernetes.