class: center, middle # FreeRADIUS mit FreeIPA verwenden ### Hauke Goos-Habermann #### https://goos-habermann.de --- ### Über mich - Entwickler des Softwareverteilungssystems m23 - Organisator der Kieler Open Source und Linux Tage - Dienstleister zu m23, Linux und Freier Software - Softwareentwicklung (PHP, BASH, C/C++, JS, Python und was sonst so gebraucht wird...) - Administration - Schulungen - Support - Beratung - quasi **alles**, *was mit Linux zu tun hat* - Aktuell: Kundenprojekt mit FreeIPA und FreeRADIUS --- ### Das habe ich dieses Mal vor - FreeIPA mit FreeRADIUS verbinden - FreeIPA-Server unter AlmaLinux 8.4 als LDAP-Zugangsdatenspeicher - FreeRADIUS-Server unter Debian 10 - Probleme hierbei - FreeIPAs Paßworthashalgorithmus **PBKDF2_SHA256** wird nicht von FreeRADIUS akzeptiert - **Zugriff** auf userPassword-Attribut standardmäßg **geblockt** - Lösung - FreeIPAs Paßworthashalgorithmus auf SSHA512 **umstellen** - Rolle, Privileg und speziellen **Radius-Benutzer anlegen** --- ### FreeIPA-Server #### Basisinstallation * AlmaLinux 8.4 * Statische IP: 192.168.1.183 * Hostname: srv.alma.local Falls Ihr noch keinen FreeIPA-Server haben solltet, dann schaut Euch einfach den Mitschnitt des Live-Streams der *"Jean und Hauke Show"* vom 25.5.21 oder die dazugehörigen Folien an: *
Folien
*
Mitschnitt auf tube.tchncs.de
#### FreeIPA konfigurieren Mit
FreeIPA-konfig.sh
(als root ausgeführt) stellen wir FreeIPAs Paßworthashalgorithmus auf SSHA512 um und legen einen Radius-Benutzer an, der lesend auf das userPassword-Attribut zugreifen darf. --- ### FreeRADIUS-Server #### Basisinstallation * Debian 10 * Statische IP: 192.168.1.16 * Hostname: radius.alma.local * Paketauswahl: Minimal + SSH Falls Ihr noch keinen Debian-Server haben solltet, dann schaut Euch einfach folgendes Video oder die dazugehörigen Folien an: *
Folien
*
Mitschnitt auf tube.tchncs.de
#### FreeRADIUS einrichten Mit
Radius-install.sh
FreeRADIUS installieren, einrichten und mit FreeIPA-Server verbinden. --- ### Testen/Debuggen #### LDAP-Zugriff (auf FreeRADIUS-Server) ```bash ldapsearch -h srv.alma.local -p 389 -v -b 'dc=alma,dc=local'\ -D "uid=radius,cn=users,cn=accounts,dc=alma,dc=local"\ -w radiusTest | less ``` #### Testbenutzer in FreeIPA erstellen (auf FreeIPA-Server) ```bash yes test | ipa user-add "radiustest" --first=Radius --last=Test\ --shell=/usr/bin/false --password # Ablaufdatum und Authentifizierungsarten setzen ipa user-mod radiustest --password-expiration="2050-01-01Z"\ --user-auth-type=password --user-auth-type=radius ``` --- ### Testen/Debuggen 2 #### Debug-Modus für den FreeRADIUS (auf FreeRADIUS-Server) ```bash systemctl stop freeradius.service sudo -u freerad freeradius -fxX ``` #### Testbenutzer in FreeIPA erstellen (auf FreeRADIUS-Server) ```bash radtest radiustest test 127.0.0.1 0 testing123 ``` **testing123** ist das Paßwort für einen *Network Access Server (NAS)* (z.B. einen AccessPoint oder Switch), der als Beispiel in der *clients.conf* definiert ist. --- class: center, middle ### Informationen zu mir und meinen Dienstleistungen, m23, ... ### https://goos-habermann.de