RaspberryPI als Windows Domain Controller

Wie vielseitig der Raspberry Pi sein kann, wissen wir alle. Genauso wissen wir um die
Leistungsfähigkeit von Linux. Zu Hause, wo nicht so viel Authentifizierungsverkehr läuft,
benötigt man keine teure Windows Server Lizenz. Ein Raspberry und ein wenig Zeit reichen
bereits aus.
Der Server selbst läuft auf Niveau von Windows Server 2008r2. Wenn man bedenkt, dass nun
Server 2019 vor der Tür steht, ist es natürlich nicht 100% aktuell. Für zu Hause und kostenlos
aber auf jeden Fall ein gutes Angebot.

Vorbereitung

Ich setze vorraus, dass du Raspbian lite 9 installiert hast und du bereits eine fixe IP sowie
Internetverbindung hast. Natürlich hast du bereits die Regionseinstellungen, Zeitzone, das
erweitern der SD Karte per raspi-config erledigt und bist als root angemeldet (sudo su).
Deinen Hostnamen hast du bereits vergeben, unter Umständen hast du sogar bereits
Vorsorglich die /etc/hosts bearbeitet und deinen FQDN vergeben. Auf jeden Fall hast du dich
um die Sicherheit deines Servers gekümmert und die Zugänge zu diesem (ssh, usw.)
gesichert.

Installation

Der AD-DC wird auf Samba Basis funktionieren, natürlich benötigt man Kerberos für die
Authentifizierung sowie winbind und den smbclient

apt install samba krb5-config winbind smbclient

Bei der Installation werden die Parameter für den Domaincontroller abgefragt. Bei der ersten
Frage (Realm) den gewünschten Domainnamen eingeben.
z.B.: magicdungeon.homenet
Bei den beiden nächsten Fragen den ganzen FQDN eingeben. Hat der Server also den
Hostnamen “domaincontroller” und wir verwenden die obengenannte Domain wäre das dann
“domaincontroller.magicdungeon.homenet”

Konfiguration

Zunächst werden wir die Samba Konfiguration umbenennen, diese wird später automatisch
mit unseren Parametern neu erzeugt

mv /etc/samba/smb.conf /etc/samba/smb.conf.OLD

Danach können wir schon die Einstellungen für unseren Domaincontroller festlegen. Dies
kann man mit dem samba-tool durchführen.

samba-tool domain provision

Folgende Einstellungen werden hierbei abgefragt:

•Realm (Deine Domain inkl. TLD) [magicdungeon.homenet]
• Domain (Deine Domain) [magicdungeon]
• Server Rolle (DC) [dc]
• DNS Backend (Samba Internal) [Samba Internal]
• DNS Forwarder (Dein bevorzugter DNS Server) [IP.DES.DNS.SRV]
• Administrator Passwort (deinedomain\administrator) [AdmPwrt]

Output

Kerberos Config nach /etc kopieren

cp /var/lib/samba/private/krb5.conf /etc/

relevante Dienste stoppen

systemctl stop smbd nmbd winbind

und “disablen”

systemctl disable smbd nmbd winbind

Danach führt man folgendes aus

systemctl unmask samba-ad-dc
systemctl start samba-ad-dc.service
systemctl enable samba-ad-dc.service

Die unterstützte Version des Domaincontrollers sieht man wenn man “samba-tool domain
level show” eingibt

Das war auch bereits die Einrichtung des Servers, alles weitere kann bereits über die Clients
eingestellt werden.

Einstellungen Clients / Netzwerk

Um hier nicht in die typische DNS Problematik zu laufen was darin resultiert, dass du deiner
Domain nicht beitreten kannst empfehle ich dir die DNS Server Einstellungen in deinem
DHCP Server auf den Domaincontroller als DNS1 zu ändern, dieser kann die Domain und
deren Clients auflösen. Alles was ausserhalb ist, wird er den vorher eingegebenen DNS Server
(DNS Forward) fragen. Aufgrund des Raspberry-Pi Settings eignet sich hier natürlich ein
PiHole. Auch ein Bind(9) läuft auf einem Raspi gut genug für ein Heimnetz. Dieser 2te DNS
Server wird als DNS2 eingestellt

Solltest du den DNS Server deines DHCP (Verteilung der richtigen Einstellungen im ganzen Netz) nicht bearbeiten können, kannst du am Client selbst in den Netzwerkeinstellungen deinen DNS Server auf den Domaincontroller festlegen.

Nun solltest du bereits sehen, dass du im Domain-Netzwerk bist, sobald du deinen Netzwerkadapter neu startest oder den Rechner rebootest.

Netzwerkname bei “Mouseover”

Einloggen auf dem Windows Client

Zunächst mal mit einem lokalen Administrator einloggen um den Client der Domain hinzuzufügen.
Drücke Strg + Pause um das Systemfenster zu öffnen und gehe zu den Hostname / Computername -Einstellungen

Hier kannst du deiner Domain beitreten

Danach kannst du der Domain beitreten indem du deinen Domainnamen (z.B.: magicdungeon.homenet) eingibst und dich mit den Administrator -Daten anmeldest.

Es kann sein, dass sich Windows hier widerspenstig gestaltet, wenn du versuchst den Namen “Administrator” zu verwenden. Du kannst dies umgehen indem du den Domainnamen ohne TLD-Angabe vorstellst. .z.B.: “magicdungeon\administrator”

auf “Change” klicken um der Domain beizutreten
Domaindaten eingeben

Du wirst aufgefordert neu zu starten. Dadurch hast du deinen Rechner der Domain hinzugefügt.
Nach einem erneuten Start des Rechners kannst du dich mit Benutzernamen “domainname\administrator” an deiner Domain anmelden.

Verwaltung

Du kannst die Domain entweder vom Admin Account aus oder auch gleich vom lokalen Windows Account aus verwalten (oder danach vom Domainaccount)

Dies kannst du mit den RemoteServerAdministationTools von Microsoft tun

Vom Admin Account aus verwalten

Vom Admin Account aus kannst du die Domaintools von Microsoft herunterladen um deine Domain zu verwalten.
Hier kannst du dann neue User hinzufügen, Computerkonten verwalten und Richtlinien einstellen, wie man das halt von einem Windows Domaincontroller her kennt.

Über lokalen oder Domainaccount verwalten

Wenn du die Servertools heruntergeladen hast kannst du die “Administration Tools” auf deinem Client suchen. Dort solltest du dann auch “Active Directory User and Computer” finden.
Mit gedrückter “Shift-Taste” und rechtsklick bekommst du “run as different user” angezeigt

Als anderer Benutzer ausführen

So bekommst du die Möglichkeit dich anzumelden.

Mit Domaindaten anmelden

Achte darauf dich mit Domainnamen anzumelden (Domainname\Username) sonst wird oft der lokale Admin verwendet.

Daraufhin kannst du wie gewohnt deine Benutzerkonten, Computerkonten und Gruppen verwalten

Active Directory “Benutzer und Gruppen”

Aus der Shell heraus verwalten

Natürlich kannst du auch per SSH am Server selbst neue User für deine Domain hinzufügen:

samba-tool user create USERNAME

DNS & GPO’s

DNS sowie deine Gruppenrichtlinien kannst du ebenfalls über die Windows Admin Tools bearbeiten da diese ebenfalls auf dem DNS Server laufen:

Windows DNS Manager
Windows Gruppenrichtlienmanager

Viel Spass mit deiner Domain!