JumalaSika ltd - Fotolia
So nutzen Sie FreeAPI als Open-Source-Alternative für AD
FreeIPA ist ein Open-Source-Projekt, das auf dem 389 Directory Server basiert. Es ermöglicht den Betrieb von Active-Directory-Domänen-Controllern ohne Windows Server.
FreeIPA ist ein Open-Source-Projekt, mit dem sich unter Linux, genauer Red Hat, CentOS und Rocky Linux, ein Active Directory (AD) ohne Windows-Server aufbauen lässt. Dabei kommt LDAP zum Einsatz, genauso wie in AD-Umgebungen. Die Installation von FreeIPA erfolgt über das Terminal, die Verwaltung kann zum großen Teil über eine Weboberfläche durchgeführt werden.
Einfaches Identity,-Policy-and-Audit-System aufbauen
Im Fokus von FreeIPA steht der Aufbau eines Identity,-Policy-and-Audit-System (IPA), das einfach zu verwalten ist. Dabei nutzt die Lösung verschiedene Open-Source-Komponenten und setzt auf keine proprietäre Software.
Wichtigste Basis von FreeIPA ist der 389 Directory Server, den FreeIPA als LDAP-Server nutzt. Zertifikate setzt das System wiederum mit dem Dogtag Certificate System um. Auch dabei handelt es sich um ein Open-Source-Projekt. Ebenfalls zum Einsatz kommen Certmonger und noch weitere Lösungen, die auf der Projektseite zu finden sind.
Eigenes Active Directory und Trust zu vorhandenen Umgebungen
FreeIPA ermöglicht den Aufbau eines eigenen Active Directory, kann aber auch Trusts mit anderen AD-Umgebungen aufbauen, die auf Basis von Windows-Servern aufgebaut wurden. DNS-Zusammenarbeit mit Windows-Servern ist ebenfalls möglich. Ideal ist der Betrieb auf einem aktuellen Red-Hat- oder CentOS-System.
Namensauflösung vorbereiten um FreeIPA in Betrieb zu nehmen
Vor der Installation von FreeIPA sollte in der Datei /etc/hostname der Name des Servers inklusive FQDN stehen, also den DNS-Namen, den später das Active Directory bekommt. Wichtig sind auch die Einträge der DNS-Server in der Datei /etc/resolv.conf. Generell schadet es auch nicht in der Datei etc/hosts den Namen die IP-Adresse des Servers sowie den FQDN und den NetBIOS-Namen einzutragen, damit die Namenauflösung optimal gesetzt ist. Der Befehl hostname sollte den FQDN des Servers zurückgeben. Bei Änderungen muss der Server neu gestartet werden.
Wir zeigen im unteren Abschnitt die Installation der rng-Tools für Ubuntu. Diese sollten mit yum auch auf Red Hat und CentOS installiert werden, da dadurch die Berechnung der Schlüssel und weitere Verbesserungen für die Kryptografie integriert werden.
FreeIPA herunterladen und Installation beginnen.
Beim Einsatz von CentOS und Red Hat erfolgen Download und Installation von FreeIPA mit:
sudo yum install ipa-server ipa-server-dns bind-dyndb-ldapI.
Um danach FreeIPA einzurichten, DNS zu konfigurieren und ein Verzeichnis für neue Benutzer bei der Anmeldung anzulegen, kommt der folgende Befehl zum Einsatz:
sudo ipa-server-install.
Die Einrichtung erfolgt über einen Assistenten, indem der Name des Servers und der Domäne festgelegt werden.
Im Rahmen der Installation legt FreeIPA den Benutzer admin an. Dabei handelt es sich um den Admin-Benutzer der FreeIPA-Umgebung. Das Kennwort für den Benutzer lässt sich im Rahmen der Installation ebenfalls anpassen. Nach dem Abschluss des Assistenten führt der Assistent die Einrichtung fort. Diese kann mehrere Minuten dauern, da hier auch alle notwendigen Dienste, Zertifikate und Einstellungen erstellt, konfiguriert und miteinander verbunden werden.
Anpassungen nach der Installation
Danach ist es wichtig, dass die DNS-Einstellungen passen, denn diese übernimmt der Einrichtungs-Assistent aus den oben genannten Dateien. Generell sollte darauf geachtet werden, dass die notwendigen Firewall-Ports für FreeIPA geöffnet sind:
- TCP 80,443, 389, 636, 88, 464, 53
- UDP 88, 464, 53, 123
Die Freischaltung kann durch manuelle Konfiguration erfolgen, oder über die Befehle:
sudo firewall-cmd --add-service freeipa-ldap --permanent
sudo firewall-cmd --add-service freeipa-ldaps --permanent
sudo firewall-cmd --add-service dns --permanent
sudo firewall-cmd --reload
Die Integration kann aber auch durch direkte Eingabe aller Ports erfolgen, wie in der nächsten Abbildung zu sehen ist.
Da der DNS-Server in FreeIPA innerhalb des Netzwerks zur Namensauflösung genutzt werden soll, ist es sinnvoll, in den Einstellungen des Servers die lokale IP-Adresse des FreeIPA-Servers einzutragen. Der interne DNS-Server leitet Anfragen für Domänen, die der nicht selbst verwaltet, nach außen. Das Forwarding dazu wird im Rahmen der Einrichtung von FreeIPA vorgenommen.
Während der Einrichtung von FreeIPA ist es darüber hinaus möglich eine Reverse-Lookup-Zone für den DNS-Server anzulegen. Dadurch können in Zukunft IP-Adressen zu Servernamen aufgelöst werden. Ohne diese Zone können die Forward-Lookup-Zonen nur die Servernamen nach IP-Adressen auflösen.
FreeIPA-Installation nach der Einrichtung testen
Ob die Benutzeranmeldung funktioniert, lässt sich mit kinit admin testen und mit klist zeigt das Terminal das Kerberos-Ticket an. Die Verwaltung von FreeIPA kann nach der Installation mit der Weboberfläche aufgerufen werden. Diese startet über die URL https://<FQDN des Servers>/ipa/ui.
Die Anmeldung erfolgt auch in diesem Fall mit dem Benutzer admin und dem Kennwort, das während der Installation der Umgebung eingerichtet wurde.
Natürlich kann die Weboberfläche auch über das Netzwerk aufgerufen werden, sodass in vielen Fällen keine weiteren Verwaltungs-Tools mehr notwendig sind. Über die Menüpunkte im oberen Bereich wird zwischen den Funktionen umgeschaltet. Hier stehen zum Beispiel Identität, Regeln, Authentifizierung, Netzwerkdienste und IPA-Server zur Verfügung. Für jeden Menüpunkt stehen anschließend unten weitere Untermenüs zur Verfügung, um die Einstellungen zu spezifizieren. Hierüber erfolgt zum Beispiel die Verwaltung von DNS, der Benutzer und den Gruppen.
Ubuntu kennt auch FreeIPA
Die Installation von FreeIPA ist auch auf Ubuntu möglich, allerdings ist die Lösung für Red Hat und CentOS besser geeignet. Hier ist es im Vorfeld sinnvoll, die rng-Tools zu installieren, damit die verschiedenen kryptografischen Funktionen von FreeIPA funktionieren. Die Installation dazu erfolgt mit:
sudo apt -y install rng-tools.
Die Konfiguration der Tools erfolgt über die Datei /etc/default/rng-tools. Hier sollte für die Installation noch die folgende Zeile hinzugefügt werden:
HRNGDEVICE=/dev/urandom
Danach erfolgen Aktivierung und Start der Tools mit:
sudo systemctl enable rng-tools
sudo systemctl start rng-tools
Die Installation von FreeIPA erfolgt danach mit:
sudo apt -y install freeipa-server
oder
sudo apt -y install freeipa-client-epn.