- Registriert
- 03. Juni 2015
- Beiträge
- 2
- Reaktionspunkte
- 2
- Punkte
- 53
Für alle diejenigen, denen der interne RADIUS Server von Synology (per GUI) zu sehr eingeschränkt ist, habe ich in diesem Thema eine Anleitung geschrieben, um einen vollwertigen RADIUS Server in einem Docker-Container auf einer Synology Diskstation (ich habe eine DS920+) einzurichten.
Als Version habe ich "latest" ausgewählt.
Verzeichnisse im Gemeinsamen Ordner (bei mir docker) anlegen:
a) docker/freeradius
b) docker/freeradius/mods-config
c) docker/freeradius/mods-config/files
d) optional: docker/freeradius/log
Folgende Dateien anlegen:
e) im Ordner docker/freeradius -> clients.conf
Beispielinhalt clients.conf:
# Mein RADIUS-Server
client MeinRadiusServer {
ipaddr = 192.168.10.0/24
secret = <mein Geheimnis>
}
f) im Ordner docker/freeradius/mods-config/files -> users
Beispielinhalt clients.conf:
# User Bob
bob Cleartext-Password := "test"
g) Der Benutzergruppe "administrators" muss die Schreibberechtigung für das Verzeichnis 'docker/freeradius/mods-config' und alle Unterverzeichnisse und Dateien genommen werden, sonst startet der Server wegen "unsecure configuration" nicht. Die Flags bei den Volumes "Nur lesen" wurden bei mir ignoriert (siehe Punkt 3c) oder waren nicht ausreichend.
File Station -> /docker/freeradius -> Verzeichnis "mods-config" auswählen -> rechte Maustaste -> Eigenschaften -> Berechtigung
-> Erweiterte Optionen -> Übernommene Berechtigung ausdrücklich machen -> "administrators" auswählen -> Bearbeiten
-> Schreiben komplett abwählen -> OK -> Warnung Bestätigen -> Checkbox "Auf diesen Ordner, die Unterordner und Dateien anwenden" auswählen -> OK
Mein Tipp: Erstmal einen Testserver (den Startbefehl auf "freeradius -X" setzen) starten, um die Einstellungen zu überprüfen, die du haben möchtest. Der Parameter erzeugt in der Detail-Sicht des Containers eine sehr detaillierte Protokollausgabe des Servers. Damit kann man auch komplexere Konfigurationen testen (z.B. LDAP-Anbindung, ...).
a) Container-Name setzen und evtl. nach Wunsch den Container mit hoher Priorität ausführen
b) Erweiterte Einstellungen -> Automatischer Neustart aktivieren
c) Reiter Volume -> Dateien hinzufügen:
'docker/freeradius/mods-config/files/users' mit Mount-Pfad: '/etc/freeradius/mods-config/files/authorize' -> Nur lesen
'docker/freeradius/clients.conf' mit Mount-Pfad: '/etc/freeradius/clients.conf' -> Nur lesen
Optional: Um die vom Server erzeugten Logs außerhalb des Container verfügbar zu machen für den produktiven Radius-Server (ohne Startparameter -X):
-> Ordner hinzufügen:
'docker/freeradius/log' mit Mount Pfad '/var/log/freeradius/' -> mit Schreibberechtigung
d) Reiter Netzwerk -> "Dasselbe Netzwerk wie Docker Host verwenden" aktivieren
e) Reiter Umgebung -> (nur bei Test-Server) Ausführungsbefehl: 'freeradius -X'
Rudimentär testen kann man den Server mit dem Tool nRadius (https://www.heise.de/download/product/nradius-56905).
Fragen bitte hier im Forum plazieren. Ich bin allerdings nicht täglich hier unterwegs ...


1. Docker-Image freeradius/freeradius-server runterladen
Docker -> Registrierung -> nach "freeradius" suchen -> freeradius/freeradius-server -> Download.Als Version habe ich "latest" ausgewählt.
2. Diskstation Verzeichnisse und Dateien vorbereiten
Verzeichnisse im Gemeinsamen Ordner (bei mir docker) anlegen:
a) docker/freeradius
b) docker/freeradius/mods-config
c) docker/freeradius/mods-config/files
d) optional: docker/freeradius/log
Folgende Dateien anlegen:
e) im Ordner docker/freeradius -> clients.conf
Beispielinhalt clients.conf:
# Mein RADIUS-Server
client MeinRadiusServer {
ipaddr = 192.168.10.0/24
secret = <mein Geheimnis>
}
f) im Ordner docker/freeradius/mods-config/files -> users
Beispielinhalt clients.conf:
# User Bob
bob Cleartext-Password := "test"
g) Der Benutzergruppe "administrators" muss die Schreibberechtigung für das Verzeichnis 'docker/freeradius/mods-config' und alle Unterverzeichnisse und Dateien genommen werden, sonst startet der Server wegen "unsecure configuration" nicht. Die Flags bei den Volumes "Nur lesen" wurden bei mir ignoriert (siehe Punkt 3c) oder waren nicht ausreichend.
File Station -> /docker/freeradius -> Verzeichnis "mods-config" auswählen -> rechte Maustaste -> Eigenschaften -> Berechtigung
-> Erweiterte Optionen -> Übernommene Berechtigung ausdrücklich machen -> "administrators" auswählen -> Bearbeiten
-> Schreiben komplett abwählen -> OK -> Warnung Bestätigen -> Checkbox "Auf diesen Ordner, die Unterordner und Dateien anwenden" auswählen -> OK
3. Das Image Starten
Docker -> Abbild -> freeradius/freeradius-server -> Starten.Mein Tipp: Erstmal einen Testserver (den Startbefehl auf "freeradius -X" setzen) starten, um die Einstellungen zu überprüfen, die du haben möchtest. Der Parameter erzeugt in der Detail-Sicht des Containers eine sehr detaillierte Protokollausgabe des Servers. Damit kann man auch komplexere Konfigurationen testen (z.B. LDAP-Anbindung, ...).
a) Container-Name setzen und evtl. nach Wunsch den Container mit hoher Priorität ausführen
b) Erweiterte Einstellungen -> Automatischer Neustart aktivieren
c) Reiter Volume -> Dateien hinzufügen:
'docker/freeradius/mods-config/files/users' mit Mount-Pfad: '/etc/freeradius/mods-config/files/authorize' -> Nur lesen
'docker/freeradius/clients.conf' mit Mount-Pfad: '/etc/freeradius/clients.conf' -> Nur lesen
Optional: Um die vom Server erzeugten Logs außerhalb des Container verfügbar zu machen für den produktiven Radius-Server (ohne Startparameter -X):
-> Ordner hinzufügen:
'docker/freeradius/log' mit Mount Pfad '/var/log/freeradius/' -> mit Schreibberechtigung
d) Reiter Netzwerk -> "Dasselbe Netzwerk wie Docker Host verwenden" aktivieren
e) Reiter Umgebung -> (nur bei Test-Server) Ausführungsbefehl: 'freeradius -X'
4. Speichern und den Container starten
Nach ein paar Sekunden steht der Server zur Verfügung.Rudimentär testen kann man den Server mit dem Tool nRadius (https://www.heise.de/download/product/nradius-56905).
Fragen bitte hier im Forum plazieren. Ich bin allerdings nicht täglich hier unterwegs ...


