So installierst du FreeRADIUS und Daloradius unter Ubuntu 20.04

FreeRADIUS ist ein kostenloser Open-Source-Server für UNIX und Unix-ähnliche Betriebssysteme, mit dem man einen RADIUS-Protokollserver einrichten kann. Außerdem brauchst du einen korrekt konfigurierten Client, der mit dem Server kommuniziert, wenn du ihn nutzen willst. Dieser kann für die Authentifizierung oder die Abrechnung verschiedener Arten von Netzwerkzugängen verwendet werden. Anwendungsbeispiele sind Hotspots, VPN-Protokolle wie OpenVPN, Strongswan oder SoftEther (Wireshark) auf einem Android-Smartphone.

Bereits 1992 begann FreeRADIUS – ein Open-Source-Softwareprojekt, das Netzwerke vor unbefugtem Zugriff und Eindringen schützt – mit kleinen Fortschritten bei der Authentifizierung. Heutzutage unterstützt FreeRADIUS verschiedene kryptografisch gesicherte Methoden (EAP-TLS/ -TTLS, PEAP, LEAP). Und die Methode zur Authentifizierung ist Benutzername/Passwort oder Zertifikate.

Clients, die auf ein Netzwerk zugreifen wollen, müssen sich zuerst beim RADIUS-Server anmelden, bevor sie Zugang erhalten. Das erhöht die Sicherheit und erleichtert die Verwaltung von Netzwerken. Der Client verwendet ein IEEE 802.1X-Protokoll zur Authentifizierung, weshalb dieser Begriff oft als Synonym für diese Art der Netzwerkanmeldung verwendet wird.

FreeRADIUS bezieht sich meistens entweder auf den RADIUS-Server oder auf Komponenten der FreeRADIUS-Suite wie die BSD-lizenzierten RADIUS-Client-Bibliotheken, eine PAM-Bibliothek und ein Apache RADIUS-Modul. Zu den weiteren Bibliotheken gehören zusätzliche Dienstprogramme und Entwicklungsbibliotheken

Was ist das RADIUS-Protokoll?

Remote Authentication Dial-In User Service (RADIUS) ist ein Netzwerkprotokoll, das die Benutzerauthentifizierung, -autorisierung und -abrechnung verwaltet, indem es ein zentrales AAA-Management bereitstellt.

Im Folgenden wird kurz beschrieben, was die einzelnen Begriffe in AAA bedeuten, aber sie bedeuten nicht alle das Gleiche:

  • Authentifizierung: Der Prozess, bei dem festgestellt wird, ob der Client (das kann ein Benutzer, ein Gerät oder ein Prozess sein) berechtigt ist, das System zu nutzen.
  • Autorisierung: Der Prozess, bei dem bestimmt wird, wie viel und wann diese Informationen zur Verfügung gestellt werden, damit die Stromverbrauchskosten berechnet werden können.
  • Abrechnung: Dies ist der zusammenfassende Bericht über die Aktivitäten im Netzwerk für die Abrechnung.

Die Befehlszeilenschnittstelle zur Verwaltung von FreeRADIUS kann selbst für erfahrene Systemadministratoren verwirrend sein. Um ihnen das Problem zu erleichtern, können wir daloRADIUS verwenden, eine webbasierte GUI-Version von FreeRADIUS.

Was ist daloRADIUS?

daloRADIUS ist eine webbasierte GUI zur Verwaltung von FreeRADIUS und ermöglicht es dir, mehrere Server ganz einfach über deinen Browser zu verwalten. Und es funktioniert mit den wichtigsten Linux-Distributionen – CentOS, Red Hat Enterprise Linux, Ubuntu, OpenWrt usw., solange sie die neueste Version von Redis oder Memcached verwenden und SSL unterstützen.

Die daloRADIUS Software Suite bietet zusätzliche Funktionen im Vergleich zur traditionellen Verwaltung von FreeRADIUS über die Kommandozeilenschnittstelle.

In diesem Tutorial installieren wir FreeRADIUS auf einem Server mit Ubuntu 20.04, konfigurieren ihn für die Zusammenarbeit mit MySQL/MariaDB und installieren dann daloRADIUS, ein RADIUS-Webmanagement-Panel, das im Grunde eine GUI für FreeRADIUS ist. Wir werden einen einfachen Test auf dem RADIUS-Server durchführen, um sicherzustellen, dass er funktioniert.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft, mit mindestens 512 MB RAM, mindestens 300 MB Speicherplatz und mindestens 1,4 GHz 64-Bit CPU
  • Du musst als Root-Benutzer oder als Benutzer mit sudo-Rechten eingeloggt sein.

Erste Schritte

Dein System aktualisieren

Um dein System auf dem neuesten Stand zu halten, solltest du zunächst den Befehl update in deinem Terminal ausführen, um die neuesten Pakete und Sicherheitsupdates herunterzuladen und zu installieren:

sudo apt update -y
sudo apt upgrade -y

Das Flag -y wird vom Update-Befehl verwendet, um automatisch mit Ja zu antworten, wenn du gefragt wirst, ob du mit den Änderungen fortfahren möchtest.

Der Befehl apt update aktualisiert die Liste der verfügbaren Pakete aus ihren Quellen. Der Befehl apt upgrade lädt die Aktualisierungen herunter und installiert sie.

Beispielhafte Ausgabe:

Deinen Server aktualisieren

Ubuntu aktualisieren

Nachdem der Aktualisierungsprozess abgeschlossen ist, solltest du dein System neu starten. Führe dazu den folgenden Befehl in deinem Terminal aus:

sudo reboot now

Installieren von Abhängigkeiten

Abhängigkeiten sind Softwareanforderungen, die erfüllt sein müssen, damit ein anderes Programm funktioniert. Als Nächstes musst du die notwendigen Abhängigkeiten installieren. Bei Ubuntu Server ist Apache bereits installiert, aber es gibt noch einige weitere Pakete, die hinzugefügt werden müssen. Um die Abhängigkeiten zu installieren, führe den folgenden Befehl in deinem Terminal aus:

sudo apt-get install apache2 mariadb-server php libapache2-mod-php php-mail php-mail-mime php-mysql php-gd php-common php-pear php-db php-mbstring php-xml php-curl unzip wget -y

Du kannst die auf deinem System installierte Version von php überprüfen, indem du den folgenden Befehl in deinem Terminal ausführst:

php -v

Die Ausgabe sollte ähnlich wie die untenstehende aussehen:

php-Version

Installation von FreeRADIUS

Wenn alle Voraussetzungen und Abhängigkeiten erfüllt sind, können wir jetzt FreeRADIUS installieren. Du kannst die in deinem Ubuntu verfügbaren Versionen von FreeRADIUSanzeigen, indem du den folgenden Befehl in dein Terminal eingibst:

sudo apt policy freeradius

freeradius Version

Um FreeRADIUS und die dazugehörigen Dienstprogramme unter Ubuntu 20.04 zu installieren, führe den folgenden Befehl aus:

sudo apt -y install freeradius freeradius-mysql freeradius-utils

Um schnell zu überprüfen, ob FreeRADIUS funktioniert, müssen wir FreeRADIUS im Debug-Modus ausführen.

Stoppezunächst den FreeRADIUS-Dienst, indem du den folgenden Befehl in deinem Terminal ausführst:

sudo systemctl stop freeradius.service

Führedann den folgenden Befehl aus, um FreeRADIUS im Debug-Modus zu starten:

sudo freeradius -X

Die Ausgabe sollte ähnlich wie die untenstehende aussehen:

FreeRADIUS-Debug-Modus

In der letzten Zeile steht „Ready to process requests“. Das bedeutet, dass FreeRADIUS jetzt auf deinem Server läuft.

Eine Datenbank erstellen

FreeRADIUS braucht eine Datenbank, um seine Einstellungen und andere Informationen über Benutzer, Clients und Netzwerkverbindungen zu speichern. Du kannst eine Datenbank für FreeRADIUS erstellen, indem du dich über das Terminal beim MariaDB-Server anmeldest:

sudo mysql -u root

Erstelle nun eine Datenbank namens radius:

CREATE DATABASE radius;

Erteile als nächstes den Zugriff auf die Radius-Datenbank:

GRANT ALL ON radius.* TO radius@localhost IDENTIFIED BY "yourpassword ";

Mit dem Befehl flush privileges und quit MariaDB aktualisierst du deine Privilegien:

FLUSH PRIVILEGES;
QUIT;

Wir können sehen, dass die Radius-Datenbank erstellt wurde, indem wir den folgenden Befehl im Terminal ausführen:

mysql -u root -p -e "show databases;"

Du solltest die Radius-Datenbank sehen können, wie im Screenshot unten dargestellt:

FreeRADIUS Erstellen einer Datenbank

Installation von Daloradius

Daloradius wird benötigt, um auf die Webadministrationsoberfläche von FreeRADIUS zuzugreifen. Zuerst laden wir die neueste Version von daloRADIUS mit dem Befehl wget aus dem Git-Repository herunter:

wget https://github.com/lirantal/daloradius/archive/master.zip

daloRADIUS herunterladen

Nachdem der Download abgeschlossen ist, entpackst du das Zip-Archiv mit dem Programm unzip, wie unten gezeigt:

unzip master.zip

Als Nächstes verschiebst du den Ordner daloradius-master mit dem Dienstprogramm mv (siehe unten):

mv daloradius-master daloradius

Wechsle dann in das daloradius-Verzeichnis für die Konfiguration:

cd daloradius

Jetzt müssen wir die Datenbank mit dem daloRADIUS-Schema befüllen. Die .sql-Datei befindet sich im Ordner „/contrib/db/“. Du musst diesen Pfad eventuell ändern, wenn du sie nicht im Stammverzeichnis installiert hast.

Um zu importieren, führe aus:

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

Verlasse als nächstes das daloradius-Verzeichnis und verschiebe dendaloradius-Ordner in das Stammverzeichnis des Dokuments:

cd
sudo mv daloradius /var/www/html/

Benenne dann die Beispieldatei um, indem du die Erweiterung .example mit dem Dienstprogramm mv entfernst, wie unten gezeigt:

sudo mv /var/www/html/daloradius/library/daloradius.conf.php.sample /var/www/html/daloradius/library/daloradius.conf.php

Führe dann den folgenden Befehl aus, um dem Apache die Rechte an den daloRADIUS-Webkonfigurationsdateien zu übertragen:

sudo chown -R www-data:www-data /var/www/html/daloradius/

Als Nächstes konfigurierst du die Berechtigungen deiner Hauptkonfigurationsdatei auf 664, wie unten gezeigt:

sudo chmod 664 /var/www/html/daloradius/library/daloradius.conf.php

Damit die DaloRADIUS-Weboberfläche auf FreeRADIUS zugreifen kann, müssen wir die Datenbankdetails in der Konfigurationsdatei für DaloRADIUS angeben. Öffne die Datei .daloradius.conf.php, die du unter ./www/library/daloradius.conf.php findest, und füge die Datenbankdetails hinzu(Benutzername, Passwort und db name):

sudo nano /var/www/html/daloradius/library/daloradius.conf.php

Ändere die folgenden Werte so ab, dass sie mit deinen Datenbankdaten übereinstimmen:

$configValues['FREERADIUS_VERSION'] = '2';
$configValues['CONFIG_DB_ENGINE'] = 'mysqli';
$configValues['CONFIG_DB_HOST'] = 'localhost';
$configValues['CONFIG_DB_PORT'] = '3306';
$configValues['CONFIG_DB_USER'] = 'howtoforge';
$configValues['CONFIG_DB_PASS'] = 'Str0ngpass@howtoforge';
$configValues['CONFIG_DB_NAME'] = 'howtoforge';

Speichere und beende die Datei, um sicherzustellen, dass alles richtig konfiguriert ist. Ein Neustart von FreeRADIUS und Apache stellt sicher, dass alles richtig funktioniert:

sudo systemctl restart freeradius
sudo systemctl restart apache2

Firewall konfigurieren

Da FreeRADIUS und Daloradius auf Port 1812 auf RADIUS-Pakete warten, musst du eventuell die Firewall-Ports öffnen, um den Datenverkehr durchzulassen:

sudo ufw enable
sudo ufw allow 1812

FreeRADIUSverwendet die UDP-Ports 1813 für Access-Request-Pakete und Accounting-Request-Pakete, also müssen wir auch diese Ports öffnen.

sudo ufw allow 1813

Beispielhafte Ausgabe:

Konfigurieren der Firewall FreeRADIUS

Wenn du den aktuellen Status der UFW-Firewall sehenwillst , kannst du den unten stehenden Befehl eingeben:

sudo ufw status

Du solltest eine ähnliche Ausgabe wie unten sehen:

ufw status FreeRADIUS

Der Screenshot der UFW oben zeigt, dass sie aktiv ist, und ihr Status zeigt eine Liste von Regeln, die wir gerade hinzugefügt haben.

Zugriff auf das daloRADIUS Web Interface

Nachdem du DaloRADIUS und FreeRADIUS installiert hast, ist es an der Zeit, das daloRADIUS Web Interface aufzurufen. Öffne den Browser deiner Wahl unter http://ip-address/daloradius/login.php. Vergiss nicht, „ip-address“ durch die IP-Adresse deines aktuellen Servers zu ersetzen.

Du solltest den Standard-Anmeldebildschirm sehen:

daloRADIUS Web Interface

Auf dem Anmeldebildschirm meldest du dich mit dem Standardbenutzernamen und -passwort „administrator“ und dem Passwort „radius“ an. Nach dem Einloggen solltest du die Standard-DaloRADIUS-Webschnittstelle sehen:

DaloRADIUS daskboard

Du kannst das Passwort eines Benutzers ändern, indem du dich bei DaloRadius anmeldest und dann das Menü Config in der oberen Leiste auswählst. Wähle Operatoren im Untermenü und Operatoren auflisten in der grauen Seitenleiste unter der Liste der Operatoren in deinem aktuellen Ordner. Klicke mit der rechten Maustaste auf Administrator und wähle in diesem Fenster Passwort ändern. Im nächsten Fenster gibst du ein neues Passwort für das Administratorkonto ein und klickst auf Übernehmen, um die Änderungen zu speichern.“

Herzlichen Glückwunsch! Du hast FreeRADIUS erfolgreich installiert. Vielen Dank, dass du diese Anleitung für die Installation von FreeRADIUS auf einem Ubuntu 20.04 LTS-System genutzt hast. Für weitere Hilfe oder nützliche Informationen empfehlen wir dir, dieoffizielle Seite von FreeRADIUS zu besuchen.

Fehlersuche

Hier sind einige Probleme, die während der Installation von FreeRADIUS/Daloradius auftreten können, und mögliche Lösungen dafür:

1. Fehler bei der Installation von freeradius

Problem: Während du diesem Tutorial folgst, kann es sein, dass du auf ein Problem stößt: „Das Paket `freeradius` hat keinen Installationskandidaten.“ Diese Fehlermeldung zeigt an, dass für deine Ubuntu- oder Debian-Version kein PPA verfügbar ist. Lösung: Normalerweise wird empfohlen, die neueste Version von Ubuntu zu verwenden, wenn du neue Software oder Pakete ausprobierst, da diese stabiler ist als ältere Versionen, die nicht unterstützt werden. Wenn du eine ältere Version auf deinem Server installiert hast, solltest du sie zunächst über den Synaptic Package Manager entfernen, bevor du mit diesem Lernprogramm fortfährst.

2. Falsche Datenbankkonfiguration

Problem: Nach der Installation von FreeRADIUS kann der Befehl „radiusd -X“ eine Meldung wie die obige ausgeben. Das bedeutet, dass MySQL aufgrund eines falschen Passworts oder Benutzernamens nicht in der Lage ist, sich mit deinen Datenbanken zu verbinden.

Lösung: Um dieses Problem zu beheben, öffne die Konfigurationsdatei „mysql-daloradius.sql“ und bearbeite sie mit einem Texteditor wie nano. Ändere dann das Passwort in dein tatsächliches Passwort. Speichere und schließe die Datei nach der Bearbeitung. Starte dann FreeRADIUS neu: sudo service freeradius restart

3. Keine Verbindung nach der Installation von FreeRADIUS und Daloradius

Problem: Nachdem du FreeRADIUS und daloRADIUS installiert hast, wird die Weboberfläche nicht angezeigt. Möglicherweise kannst du dich deshalb nicht über SSH mit deinem Server verbinden.

Lösung: Der wahrscheinlichste Grund für dieses Problem ist, dass etwas in den Konfigurationsdateien von Apache oder Nginx den Port 80 (für HTTP) oder 443 (für HTTPS) blockiert. Überprüfe diese Konfigurationsdateien auf Verweise auf den DaloRADIUS-Webverzeichnispfad (/var/www/html/daloradius) und entferne sie.

4. Kein Daloradius-Symbol in der DaloRADIUS-Weboberfläche

Problem: Nachdem du diese Anleitung befolgt hast, siehst du das Daloradius-Symbol nicht im DaloRADIUS-Webinterface. Das ist ein häufiges Problem, das bei einigen Versionen von Ubuntu und Debian auftritt.

Lösung: Um dieses Problem zu beheben, bearbeite die Datei „daloradius/includes/config_vars.php“ und füge die folgende Zeile hinzu: define(‚DALORADIUS_ENABLED‘, true); Starte dann deinen Apache Webserver über sudo service apache2 restart neu. Jetzt sollte das Daloradius-Symbol im linken Fenster vor dem Bedienermenü erscheinen.

Diese Liste ist unvollständig und möglicherweise nicht 100%ig korrekt. Wenn du auf Fehler oder fehlende Informationen stößt, hinterlasse bitte unten einen Kommentar und wir werden die Liste entsprechend aktualisieren.

Fazit

FreeRADIUS und Daloradius sind eine großartige Kombination aus Open-Source-Software, mit der du einen vollwertigen FreeRADIUS-Server erstellen kannst, der perfekt für dein Heim- oder kleines Unternehmensnetzwerk ist.

Mit seiner wachsenden Community und einer großen Anzahl von Funktionen, die innerhalb der Software konfiguriert werden können, ist Daloradius eine ausgezeichnete Wahl für Nutzer, die ihren eigenen FreeRADIUS-Server einrichten wollen.

Wenn du diesen Artikel nützlich fandest, teile ihn bitte mit deinen Freunden in den sozialen Medien. Wir würden uns auch freuen, von dir zu hören, wenn du Fragen oder Vorschläge hast. Du kannst einen Kommentar hinterlassen oder eine Nachricht über das Kontaktformular am Ende dieser Seite schicken. Danke, dass du das gelesen hast.

Das könnte dich auch interessieren …