Skip to main content
Skip table of contents

FreeRADIUS für die Buchhaltung einrichten

Ziel dieses Tutorials

Dieses Tutorial kann verwendet werden, um Ihr Captive-Portal-Setup mit Radius-Accounting zu testen, es ist nicht für Produktions-Setups gedacht (da wir nur einfache flache Dateien für alles verwenden). Wir haben Ubuntu-Linux für diese Einrichtung verwendet, bei einem anderen Betriebssystem können einige Pfade anders aussehen.

Benutzerlimits auf der Schulrouter Plus-Firewall werden direkt nach der Anmeldung gesetzt, der Radius-Server sollte der Firewall mitteilen, wie viele Ressourcen für den erfolgreich angemeldeten Benutzer noch übrig sind. Eine normale Anmeldesequenz sieht wie folgt aus:

[Login] -> [Abrechnungsstart senden] -> [Zwischenupdates senden während der Verbindung] -> [beim Abmelden Abrechnungsstopp senden]

Einrichtung

Um freeradius in Ubuntu einzurichten, führen Sie den folgenden Befehl aus:

PYTHON
apt-get install freeradius

Client-Zugang einrichten

Bearbeiten Sie die Datei /etc/freeradius/clients.conf und fügen Sie einen Block für Ihr Netzwerk hinzu, als Beispiel verwenden wir 10.211.55.0/24.

PHP
client 10.211.55.0/24 {
    secret      = testing123
    shortname   = test-network
 }

Tägliche Sitzungslimits einschalten

Aktivieren Sie tägliche Sitzungslimits, die eine Abrechnung benötigen, um die Nutzung der Clients zu signalisieren.

  • Entfernen Sie in /etc/freeradius/sites-available/default das Kommentarzeichen daily in den Abschnitten authorize und accounting.

  • in /etc/freeradius/radiusd.conf im Abschnitt instantiate täglich auskommentieren

  • Anhängen an /etc/freeradius/dictionary

CPP
ATTRIBUTE       Daily-Session-Time      3000    integer
ATTRIBUTE       Max-Daily-Session       3001    integer
  • Dekommentieren Sie sradutmp im Abschnitt „Accounting“, um den Befehl radwho verwenden zu können.

Testbenutzer hinzufügen

Sie können Ihre Testbenutzer zu /etc/freeradius/users hinzufügen, sie sollten wie folgt aussehen:

CPP
"test" Cleartext-Password := "test", Max-Daily-Session := 1800
        Framed-IP-Address = 10.211.55.100,
        Reply-Message = "Hello, %{User-Name}"

Achten Sie darauf, dass die zweite und dritte Zeile durch ein einzelnes Tabulatorzeichen eingerückt sind.

Dies sollte zu einem Benutzer mit einer maximalen Nutzung pro Tag von 1800 Sekunden führen.

Test-Radius

Für den ersten Test könnte es praktisch sein, den ein- und ausgehenden Datenverkehr von Freeradius zu debuggen. Die nächsten Schritte helfen Ihnen, Freeradius im Debug-Modus zu starten, ohne Ausgabe auf der Konsole:

CPP
/etc/init.d/freeradius stop
freeradius -X
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.