Cos'è un server freeRADIUS?
RADIUS è un protocollo AAA (autenticazione, autorizzazione e contabilità) che aiuta a controllare l'accesso alla rete. In altre parole, il protocollo RADIUS viene utilizzato per la gestione della connessione tra il Network Access Server (NAS) e il server di autenticazione.
La connessione tra due estremità (NAC-NAS o server di autenticazione NAS) viene avviata dopo una negoziazione riuscita sul livello di rete scambiando pacchetti contenenti informazioni necessarie come identificazione NAS, numero di porta di autenticazione, ecc.
In parole semplici, si può dire che RADIUS fornisce autenticazione, autorizzazione e informazioni sull'account da un server di autenticazione a un dispositivo che richiede l'accesso.
FreeRADIUS supporta tutte e tre queste funzionalità del protocollo AAA:autenticazione, autorizzazione e contabilità. Per controllare a quale tipo di accesso alla rete è possibile connettersi, FreeRADIUS utilizza diversi moduli. Ad esempio, se il NAS è un router, non può fornire alcuna autenticazione all'utente, il che significa che in tal caso viene eseguita solo l'autorizzazione dai moduli client PPP o PPTP e il resto dei passaggi viene gestito da altri moduli.
FreeRADIUS fornisce anche supporto per tutti i database importanti utilizzati per account, utenti ecc., inclusi MariaDB/MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database ecc.
Cos'è daloRADIUS?
daloRADIUS è un'interfaccia web avanzata che fornisce una gestione utente completa con le ultime funzionalità come l'automazione sia per gli utenti finali che per gli amministratori di sistema. Semplifica la gestione quotidiana della tua installazione di FreeRADIUS.
daloRADIUS può essere utilizzato per configurare parametri di sistema/NAS, creare nuovi account utente e gestire NAS. È l'unica interfaccia che fornisce una gestione utente completa sia per gli utenti finali che per gli amministratori.
Perché daloRADIUS?
Porta una moderna interfaccia web al server FreeRADIUS con le ultime funzionalità come l'automazione per utenti finali e amministratori, il tutto da un'unica posizione. Semplifica la gestione delle reti da parte degli amministratori di rete da qualsiasi dispositivo che abbia accesso a Internet, fornendo al contempo agli utenti finali il potere sulle proprie credenziali di accesso e sulle preferenze di connessione.
In questa guida imparerai ad installare FreeRADIUS su Ubuntu 20.04 LTS e ad usare daloRADIUS come interfaccia web.
Prerequisiti
- Un nuovo server di Ubuntu 20.04 LTS
- Un utente con privilegi sudo
Aggiornamento del tuo sistema
Connettiti al server come utente root tramite SSH e aggiorna tutti i pacchetti del sistema eseguendo il comando seguente:
sudo apt-get update -y
sudo apt-get upgrade -y
Una volta che il tuo server è aggiornato, puoi procedere al passaggio successivo.
Installazione del server Web Apache
Installa il server Web Apache e i moduli necessari eseguendo il seguente comando:
sudo apt install apache2 -y
Una volta completata l'installazione, avvia il servizio Apache e abilitalo all'avvio con l'avvio del sistema:
sudo systemctl start apache2 sudo systemctl enable apache2
Per verificare l'accesso esterno ad Apache, usa il tuo browser web preferito per accedere alla pagina predefinita di Apache visitando http://your-server-ip in una scheda separata. Dovresti vedere la pagina predefinita di Apache
Installazione del server di database MariaDB per FreeRADIUS
MariaDB è un sistema di gestione di database open source che verrà utilizzato come storage back-end per FreeRADIUS. In questa guida, freeRADIUS utilizzerà MariaDB per memorizzare account utente, impostazioni ecc.
Installa il server MariaDB eseguendo il seguente comando:
sudo apt install software-properties-common mariadb-server mariadb-client -y
Una volta completata l'installazione, avvia il servizio MariaDB e abilitalo all'avvio con l'avvio del sistema:
sudo systemctl start mysql sudo systemctl enable mysql
Per proteggere l'installazione di MariaDB puoi eseguire lo script mysql_secure_installation riportato di seguito fornendo la tua password di root quando richiesto. Ciò rimuoverà gli account utente anonimi, disabiliterà gli accessi root remoti, non consentirà password nulle ecc. Si consiglia di configurare questo in anticipo in modo che le basi di sicurezza siano solide per eventuali implementazioni future.
mysql_secure_installation
Puoi verificare lo stato del server MariaDB eseguendo il comando seguente:
sudo systemctl status mariadb
Installazione di PHP 8 per FreeRADIUS
Abbiamo bisogno di installare PHP 8 che è richiesto per l'interfaccia Web daloRADIUS. Per impostazione predefinita, PHP 7 è disponibile nel repository LTS di Ubuntu 20.04 ma non in PHP 8. Dovremo aggiungere un PPA di terze parti per ottenere l'ultima versione di PHP.
sudo add-apt-repository ppa:ondrej/php
Aggiorna i tuoi repository eseguendo il seguente comando:
sudo apt update -y
Una volta aggiunto il PPA, puoi installare PHP 8 e altri moduli necessari eseguendo il seguente comando:
sudo apt install php8.0 libapache2-mod-php8.0
sudo apt install php-gd php-mail php-mail-mime php-mysql php-pear php-db php-mbstring php-xml php-curl
Verifica la versione di PHP e verifica l'installazione eseguendo il seguente comando:
php -v
Riavvia Apache al termine dell'installazione
sudo systemctl restart apache2
Installazione di FreeRADIUS
Ora che tutti i prerequisiti sono soddisfatti, puoi procedere con l'installazione di FreeRADIUS. Per impostazione predefinita, il pacchetto FreeRADIUS è disponibile nei repository, puoi mostrare le versioni di freeradius disponibili nel tuo Ubuntu eseguendo il seguente comando:
sudo apt policy freeradius
Otterrai un output simile al seguente
Puoi installare il server FreeRADIUS eseguendo il comando seguente:
sudo apt-get install freeradius freeradius-mysql freeradius-utils -y
Per verificare rapidamente che FreeRADIUS sia attivo e funzionante, eseguiremo FreeRADIUS in modalità di debug.
Per eseguire freeRADIUS in modalità debug, usa il comando seguente:
sudo systemctl stop freeradius
sudo freeradius -X
L'output dovrebbe essere simile a questo:
Puoi vedere la riga "Pronto per elaborare le richieste" in basso in modo che l'installazione di FreeRADIUS abbia successo.
Creazione di database per FreeRADIUS
Ora che FreeRADIUS è attivo e funzionante, creiamo un database per FreeRADIUS. Per fare ciò, utilizzeremo la console MariaDB.
Per accedere alla console MariaDB, eseguire il seguente comando:
mysql -u root -p
Immettere la password di root quando viene richiesto di autenticarsi con il server MariaDB.
Esegui il comando seguente per creare un database freeRADIUS:
CREATE DATABASE radius;
Concedi i diritti sul nuovo database creato eseguendo la query seguente, sostituisci [email protected] con la tua password.
GRANT ALL ON radius.* to [email protected] IDENTIFIED BY "[email protected]";
Ricarica i privilegi ed esci dalla console MariaDB eseguendo il comando seguente:
FLUSH PRIVILEGES;
quit;
Una volta creato il database, è necessario importare lo schema del database predefinito che include le tabelle MySQL di FreeRADIUS.
Ora dovresti modificare daloradius.conf per modificare il database MySQL come segue:
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Riavvia il servizio FreeRADIUS usando il seguente comando:
sudo systemctl restart freeradius
Installazione dell'interfaccia Web daloRADIUS
Installeremo l'interfaccia Web daloRADIUS per configurare il server FreeRADIUS utilizzando un browser. Esegui il comando seguente per scaricare daloRADIUS dal repository Github
wget https://github.com/lirantal/daloradius/archive/master.zip
Una volta completato il download, decomprimi l'archivio.
unzip master.zip
Sposta la cartella estratta nella directory principale del tuo sito web.
mv daloradius-master /var/www/html/daloradius
Importa lo schema del database predefinito nel database FreeRADIUS creato sopra
sudo mysql -u root -p radius< contrib/db/fr2-mysql-daloradius-and-freeradius.sql
sudo mysql -u root -p radius< contrib/db/mysql-daloradius.sql
Quindi, imposta le autorizzazioni corrette per il file di configurazione di daloradius e modifica le autorizzazioni della directory di installazione di daloradius.
sudo chown -R www-data:www-data /var/www/html/daloradius
sudo chmod -R 755 /var/www/html/daloradius
sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php
Ora dovresti modificare daloradius.conf file con le impostazioni di configurazione preferite prima di accedere all'interfaccia web di daloRADIUS da un browser.
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Riavvia il servizio FreeRADIUS usando il seguente comando:
sudo systemctl restart freeradius
Accesso all'Interfaccia Web di daloRADIUS
Per accedere all'interfaccia web di daloradius, apri http://indirizzo-ip/daloradius/login.php nel tuo browser. Ti verranno richiesti nome utente e password. Il nome utente predefinito è amministratore, la password predefinita è raggio
Una volta effettuato l'accesso all'interfaccia web di daloradius, puoi iniziare ad aggiungere utenti, server RADIUS virtuali, tipi EAP, ecc. Puoi anche creare nuovi utenti e gruppi che verranno utilizzati per autenticare gli utenti con i tipi di autenticazione EAP disponibili in FreeRADIUS.
Conclusione
In questo tutorial, abbiamo imparato come installare FreeRADIUS con l'interfaccia Web daloRADIUS sul server Ubuntu 20.04 LTS. Inoltre, abbiamo imparato come importare lo schema del database predefinito. Sebbene questo tutorial sia stato scritto per il server Ubuntu 20.04 LTS, dovrebbe funzionare su altre distribuzioni Ubuntu o Debian con poche modifiche.