Was ist ein FreeRADIUS-Server?
RADIUS ist ein AAA-Protokoll (Authentication, Authorization, and Accounting), das bei der Kontrolle des Netzwerkzugriffs hilft. Mit anderen Worten, das RADIUS-Protokoll wird für die Verbindungsverwaltung zwischen dem Netzwerkzugriffsserver (NAS) und dem Authentifizierungsserver verwendet.
Die Verbindung zwischen zwei Enden (NAC-NAS oder NAS-Authentifizierungsserver) wird nach einer erfolgreichen Aushandlung auf der Netzwerkschicht initiiert, indem Pakete ausgetauscht werden, die notwendige Informationen wie NAS-Identifikation, Authentifizierungsportnummer usw. enthalten.
Mit einfachen Worten kann gesagt werden, dass RADIUS Authentifizierungs-, Autorisierungs- und Kontoinformationen von einem Authentifizierungsserver für ein Gerät bereitstellt, das Zugriff anfordert.
FreeRADIUS unterstützt alle diese drei Funktionen des AAA-Protokolls – Authentifizierung, Autorisierung und Abrechnung. Um zu steuern, welche Art von Netzwerkzugang verbunden werden kann, verwendet FreeRADIUS verschiedene Module. Wenn das NAS beispielsweise ein Router ist, kann es dem Benutzer keine Authentifizierung bereitstellen, was bedeutet, dass in diesem Fall nur die Autorisierung von PPP- oder PPTP-Client-Modul(en) durchgeführt wird und die restlichen Schritte von anderen Modulen durchgeführt werden. P>
FreeRADIUS bietet auch Unterstützung für alle wichtigen Datenbanken, die für Konten, Benutzer usw. verwendet werden, einschließlich MariaDB/MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database usw.
Was ist daloRADIUS?
daloRADIUS ist eine fortschrittliche Webschnittstelle, die eine vollständige Benutzerverwaltung mit den neuesten Funktionen wie Automatisierung sowohl für Endbenutzer als auch für Systemadministratoren bietet. Es vereinfacht die tägliche Verwaltung Ihrer FreeRADIUS-Installation.
Mit daloRADIUS können System-/NAS-Parameter konfiguriert, neue Benutzerkonten erstellt und NAS verwaltet werden. Es ist die einzige Schnittstelle, die sowohl Endbenutzern als auch Administratoren eine vollständige Benutzerverwaltung bietet.
Warum daloRADIUS?
Es bringt eine moderne Webschnittstelle zum FreeRADIUS-Server mit den neuesten Funktionen wie Automatisierung für Endbenutzer und Administratoren, alles von einem einzigen Ort aus. Es erleichtert Netzwerkadministratoren die Verwaltung ihrer Netzwerke von jedem Gerät mit Internetzugang und gibt Endbenutzern die Kontrolle über ihre Anmeldeinformationen und Verbindungseinstellungen.
In dieser Anleitung erfahren Sie, wie Sie FreeRADIUS auf Ubuntu 20.04 LTS installieren und daloRADIUS als Weboberfläche verwenden.
Voraussetzungen
- Ein frischer Server mit Ubuntu 20.04 LTS
- Ein Benutzer mit sudo-Berechtigungen
Aktualisieren Ihres Systems
Verbinden Sie sich als Root-Benutzer über SSH mit dem Server und aktualisieren Sie alle Pakete des Systems, indem Sie den folgenden Befehl ausführen:
sudo apt-get update -y
sudo apt-get upgrade -y
Sobald Ihr Server auf dem neuesten Stand ist, können Sie mit dem nächsten Schritt fortfahren.
Apache-Webserver installieren
Installieren Sie den Apache-Webserver und die erforderlichen Module, indem Sie den folgenden Befehl ausführen:
sudo apt install apache2 -y
Sobald die Installation abgeschlossen ist, starten Sie den Apache-Dienst und ermöglichen Sie ihm, mit dem Systemstart zu starten:
sudo systemctl start apache2 sudo systemctl enable apache2
Um den externen Zugriff auf Apache zu überprüfen, verwenden Sie Ihren bevorzugten Webbrowser, um auf die Apache-Standardseite zuzugreifen, indem Sie http://your-server-ip in einem separaten Tab aufrufen. Sie sollten die Apache-Standardseite
sehen
Installation des MariaDB-Datenbankservers für FreeRADIUS
MariaDB ist ein Open-Source-Datenbankverwaltungssystem, das als Backend-Speicher für FreeRADIUS verwendet wird. In diesem Handbuch verwendet freeRADIUS MariaDB, um Benutzerkonten, Einstellungen usw. zu speichern.
Installieren Sie den MariaDB-Server, indem Sie den folgenden Befehl ausführen:
sudo apt install software-properties-common mariadb-server mariadb-client -y
Sobald die Installation abgeschlossen ist, starten Sie den MariaDB-Dienst und ermöglichen Sie ihm, mit dem Systemstart zu starten:
sudo systemctl start mysql sudo systemctl enable mysql
Um die MariaDB-Installation zu sichern, können Sie das folgende mysql_secure_installation-Skript ausführen, indem Sie Ihr Root-Passwort eingeben, wenn Sie dazu aufgefordert werden. Dadurch werden anonyme Benutzerkonten entfernt, Remote-Root-Anmeldungen deaktiviert, Nullpasswörter nicht zugelassen usw. Es wird empfohlen, dies im Voraus zu konfigurieren, damit die Sicherheitsgrundlage für zukünftige Bereitstellungen stark ist.
mysql_secure_installation
Sie können den Status des MariaDB-Servers überprüfen, indem Sie den folgenden Befehl ausführen:
sudo systemctl status mariadb
Installation von PHP 8 für FreeRADIUS
Wir müssen PHP 8 installieren, das für die daloRADIUS-Webschnittstelle erforderlich ist. Standardmäßig ist PHP 7 im Ubuntu 20.04 LTS-Repository verfügbar, aber nicht PHP 8. Wir müssen ein Drittanbieter-PPA hinzufügen, um die neueste Version von PHP zu erhalten.
sudo add-apt-repository ppa:ondrej/php
Aktualisieren Sie Ihre Repositorys, indem Sie den folgenden Befehl ausführen:
sudo apt update -y
Sobald das PPA hinzugefügt wurde, können Sie PHP 8 und andere notwendige Module installieren, indem Sie den folgenden Befehl ausführen:
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
Überprüfen Sie die PHP-Version und überprüfen Sie die Installation, indem Sie den folgenden Befehl ausführen:
php -v
Starten Sie Apache nach Abschluss der Installation neu
sudo systemctl restart apache2
FreeRADIUS installieren
Nachdem alle Voraussetzungen erfüllt sind, können Sie mit der Installation von FreeRADIUS fortfahren. Standardmäßig ist das FreeRADIUS-Paket in den Repositories verfügbar, Sie können die in Ihrem Ubuntu verfügbaren Freeradius-Versionen anzeigen, indem Sie den folgenden Befehl ausführen:
sudo apt policy freeradius
Sie erhalten eine ähnliche Ausgabe wie unten
Sie können den FreeRADIUS-Server installieren, indem Sie den folgenden Befehl ausführen:
sudo apt-get install freeradius freeradius-mysql freeradius-utils -y
Um schnell zu überprüfen, ob FreeRADIUS betriebsbereit ist, führen wir FreeRADIUS im Debugging-Modus aus.
Verwenden Sie den folgenden Befehl, um freeRADIUS im Debug-Modus auszuführen:
sudo systemctl stop freeradius
sudo freeradius -X
Die Ausgabe sollte in etwa so aussehen:
Damit die Installation von FreeRADIUS erfolgreich ist, sehen Sie unten die Zeile „Bereit, Anfragen zu verarbeiten“.
Datenbank für FreeRADIUS erstellen
Nachdem FreeRADIUS nun eingerichtet ist und ausgeführt wird, erstellen wir eine Datenbank für FreeRADIUS. Dazu verwenden wir die MariaDB-Konsole.
Um auf die MariaDB-Konsole zuzugreifen, führen Sie den folgenden Befehl aus:
mysql -u root -p
Geben Sie das Root-Passwort ein, wenn Sie aufgefordert werden, sich beim MariaDB-Server zu authentifizieren.
Führen Sie den folgenden Befehl aus, um eine freeRADIUS-Datenbank zu erstellen:
CREATE DATABASE radius;
Gewähren Sie der neu erstellten Datenbank Rechte, indem Sie die folgende Abfrage ausführen, ersetzen Sie [email protected] durch Ihr Passwort.
GRANT ALL ON radius.* to [email protected] IDENTIFIED BY "[email protected]";
Laden Sie die Berechtigungen neu und verlassen Sie die MariaDB-Konsole, indem Sie den folgenden Befehl ausführen:
FLUSH PRIVILEGES;
quit;
Sobald die Datenbank erstellt ist, müssen Sie das vorgefertigte Datenbankschema importieren, das die FreeRADIUS MySQL-Tabellen enthält.
Sie sollten jetzt die daloradius.conf ändern Datei, um die MySQL-Datenbank wie folgt anzupassen:
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Starten Sie den FreeRADIUS-Dienst mit dem folgenden Befehl neu:
sudo systemctl restart freeradius
DaloRADIUS Webinterface installieren
Wir werden das daloRADIUS-Webinterface installieren, um den FreeRADIUS-Server über einen Browser zu konfigurieren. Führen Sie den folgenden Befehl aus, um daloRADIUS aus dem Github-Repository herunterzuladen
wget https://github.com/lirantal/daloradius/archive/master.zip
Sobald der Download abgeschlossen ist, entpacken Sie das Archiv.
unzip master.zip
Verschieben Sie den extrahierten Ordner in das Stammverzeichnis Ihrer Website.
mv daloradius-master /var/www/html/daloradius
Importieren Sie das vorgefertigte Datenbankschema in die oben erstellte FreeRADIUS-Datenbank
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
Legen Sie dann die richtigen Berechtigungen für die daloradius-Konfigurationsdatei fest und ändern Sie die Berechtigungen des daloradius-Installationsverzeichnisses.
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
Sie sollten jetzt die daloradius.conf ändern Datei mit Ihren bevorzugten Konfigurationseinstellungen, bevor Sie über einen Browser auf die daloRADIUS-Weboberfläche zugreifen.
sudo nano /var/www/html/daloradius/library/daloradius.conf.php
Starten Sie den FreeRADIUS-Dienst mit folgendem Befehl neu:
sudo systemctl restart freeradius
Zugriff auf die daloRADIUS-Webschnittstelle
Um auf die Daloradius-Weboberfläche zuzugreifen, öffnen Sie http://ip-address/daloradius/login.php in Ihrem Browser. Sie werden nach Benutzername und Passwort gefragt. Der Standard-Benutzername ist Administrator, das Standard-Passwort ist Radius
Sobald Sie sich bei der Daloradius-Weboberfläche angemeldet haben, können Sie damit beginnen, Benutzer, virtuelle RADIUS-Server, EAP-Typen usw. hinzuzufügen. Sie können auch neue Benutzer und Gruppen erstellen, die verwendet werden, um die Benutzer mit den in FreeRADIUS verfügbaren EAP-Authentifizierungstypen zu authentifizieren.
Schlussfolgerung
In diesem Tutorial haben wir gelernt, wie man FreeRADIUS mit der daloRADIUS-Webschnittstelle auf einem Ubuntu 20.04 LTS-Server installiert. Außerdem haben wir gelernt, wie man das vorgefertigte Datenbankschema importiert. Obwohl dieses Tutorial für Ubuntu 20.04 LTS-Server geschrieben wurde, sollte es mit wenigen Änderungen auf anderen Ubuntu- oder Debian-Distributionen funktionieren.