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]
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.
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
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”
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
So bekommst du die Möglichkeit dich anzumelden.
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
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: