GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So erstellen Sie einen Domänencontroller unter Linux für AD

Ein Domänencontroller auf einem Linux-Server?! Unmöglich! Die Reaktion gilt, insbesondere für diejenigen, die das Konzept zum ersten Mal hören. Es stellt sich heraus, dass Sie nicht nur einen Domänencontroller-Linux-Server einrichten können, sondern dies auch kostenlos tun können!

Unabhängig davon, ob Sie sich aus Kostengründen, für die Standardisierung oder für einen umweltfreundlicheren, schlankeren Tech-Stack für Linux entscheiden, das Erlernen der Einrichtung eines Linux-DC ist eine gute Fähigkeit für jeden Administrator.

Lesen Sie weiter, um zu erfahren, wie Sie Samba verwenden als zuverlässiger Domänencontroller-Linux-Server.

Voraussetzungen

Dieses Tutorial wird eine praktische Demonstration sein. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie einen Ubuntu-Server haben. Dieses Tutorial verwendet einen Ubuntu Server 22.04 LTS mit der folgenden Konfiguration.

  • Hostname:oddjobs-dc
  • IP-Adresse:192.168.8.10
  • Domäne:OJI.COM
  • FQDN:oddjobs-dc.oji.com

Den Domänencontroller auf dem Linux-Server vorbereiten

Nachdem Sie alle Voraussetzungen erfüllt haben, müssen Sie sicherstellen, dass keine Standardeinstellungen des Betriebssystems vorhanden sind, die das Funktionieren des DC beeinträchtigen könnten. Mach dir keine Sorgen. Dieser Schritt ist nicht so kompliziert, wie es klingen mag. Führen Sie die folgenden Schritte aus, um diese Aufgabe auszuführen.

Richten Sie den Hosts-Dateieintrag ein

Die erste Aufgabe besteht darin, den Hostnamen und die FQDN-Einträge Ihres Servers in den lokalen Hosts hinzuzufügen (/etc/hosts ) Datei.

1. Öffnen Sie zunächst Ihren bevorzugten SSH-Client und melden Sie sich bei Ihrem Ubuntu-Server an.

2. Öffnen Sie Ihre Hosts (/etc/hosts)-Datei in einem Texteditor wie nano.

sudo nano /etc/hosts

3. Löschen Sie alle Einträge, die Ihren Hostnamen oder FQDN einer anderen IP als der statischen IP zuordnen. Die statische IP-Adresse dieses Servers lautet beispielsweise 192.168.8.10, lassen Sie diesen Eintrag also, falls vorhanden. Siehe Beispiel unten.

4. Fügen Sie als Nächstes einen Eintrag hinzu, um den FQDN und die statische IP-Adresse Ihres Hosts zuzuordnen. In diesem Tutorial lautet der FQDN des Servers oddjobs-dc.oji.com, der hinzuzufügende Eintrag lautet also:

192.168.8.10 oddjobs-dc.oji.com oddjobs-dc

5. Speichern Sie die Hosts (/etc/hosts) Datei und beenden Sie den Editor.

Hostnamen- und FQDN-Auflösung bestätigen

Führen Sie die folgenden Befehle aus, um den Hostnamen des Servers zu bestätigen und dass der FQDN in die richtige IP-Adresse aufgelöst wird.

# verify server FQDN
hostname -A

# verify FQDN resolves to your server IP address
ping -c1 oddjobs-dc.oji.com

Wie Sie unten sehen können, haben die Befehle den erwarteten FQDN und die IP-Adresse zurückgegeben.

Deaktivieren Sie den Netzwerknamenauflösungsdienst

Ubuntu hat einen Dienst namens systemd-resolved , das sich um die Anfragen zur DNS-Auflösung kümmert. Dieser Dienst ist für Samba ungeeignet, und Sie müssen ihn deaktivieren und stattdessen den DNS-Resolver manuell konfigurieren.

1. Deaktivieren Sie den systemd-aufgelösten Dienst, indem Sie den folgenden Befehl ausführen.

sudo systemctl disable --now systemd-resolved

2. Entfernen Sie als nächstes den symbolischen Link zur Datei /etc/resolv.conf.

sudo unlink /etc/resolv.conf

3. Erstellen Sie in Ihrem Texteditor eine neue /etc/resolv.conf-Datei. Dieses Beispiel verwendet nano.

sudo nano /etc/resolv.conf

4. Füllen Sie die Datei /etc/resolv.conf mit den folgenden Informationen. Ersetzen Sie 192.168.8.10 durch die IP-Adresse Ihres Servers und oji.com durch Ihre Domain. Belassen Sie den Nameserver 1.1.1.1 als Fallback-DNS-Resolver, der der öffentliche DNS-Resolver von Cloudflare ist.

# your Samba server IP Address
nameserver 192.168.8.10

# fallback resolver
nameserver 1.1.1.1

# your Samba domain
search oji.com

Ihre /etc/resolv.conf sollte ähnlich wie im Screenshot unten aussehen.

5. Speichern Sie die Datei und beenden Sie den Editor.

Samba installieren

Nach Abschluss der Servervorbereitung ist es an der Zeit, Samba und andere erforderliche Pakete zu installieren, um den Domänencontroller bereitzustellen.

1. Stellen Sie zunächst sicher, dass der Repository-Cache auf dem neuesten Stand ist, indem Sie den folgenden Befehl ausführen.

sudo apt-get update

2. Führen Sie den folgenden Befehl aus, um die erforderlichen Pakete für einen voll funktionsfähigen Domänencontroller zu installieren.

sudo apt install -y acl attr samba samba-dsdb-modules samba-vfs-modules smbclient winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user dnsutils chrony net-tools

3. Geben Sie im Schritt Konfigurieren der Kerberos-Authentifizierung die DNS-Domäne in Großbuchstaben ein. In diesem Beispiel ist die Standardbereichsdomäne OJI.COM. Markieren Sie Ok und drücken Sie die Eingabetaste, um den Wert zu akzeptieren.

4. Geben Sie auf dem nächsten Bildschirm, der nach den Kerberos-Servern für Ihren Bereich fragt, den Server-Hostnamen ein und drücken Sie die Eingabetaste.

5. Geben Sie im nächsten Bildschirm, in dem Sie nach dem Verwaltungsserver für Ihren Kerberos-Realm gefragt werden, den Hostnamen des Servers ein und drücken Sie die Eingabetaste.

6. Deaktivieren Sie nach der Konfiguration die unnötigen Dienste (winbind, smbd und nmbd).

sudo systemctl disable --now smbd nmbd winbind

7. Aktivieren und aktivieren Sie den samba-ad-dc-Dienst. Diesen Dienst benötigt Samba, um als Active Directory-Domänencontroller-Linux-Server zu fungieren.

# unmask the samba-ad-dc service
sudo systemctl unmask samba-ad-dc

# enable samba-ad-dc service
sudo systemctl enable samba-ad-dc

Bereitstellung des Domänencontroller-Linux-Servers

Mit der samba-tool-Binärdatei können Sie jetzt den Domänencontroller bei Ihrer Samba-Installation bereitstellen. Samba-auch l ist ein Konfigurationstool, um mit verschiedenen Aspekten eines Samba-basierten AD zu interagieren und es zu konfigurieren.

1. Sicherheitshalber sichern Sie die bestehenden Dateien /etc/samba/smb.conf und /etc/krb5.conf.

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo mv /etc/krb5.conf /etc/krb5.conf.bak

2. Führen Sie den folgenden Befehl aus, um Samba auf einen Active Directory-Domänencontroller-Linux-Server hochzustufen.

Der Schalter –use-rfc2307 aktiviert die Network Information Service (NIS)-Erweiterung, die es dem DC ermöglicht, UNIX-basierte Benutzerkonten angemessen zu verwalten.

sudo samba-tool domain provision --use-rfc2307 --interactive

3. Beantworten Sie die Eingabeaufforderungen wie folgt.

  • Reich – das Tool erkennt automatisch Ihren Kerberos-Realm. In diesem Beispiel ist der Realm OJI.COM . Drücken Sie die Eingabetaste, um die Standardeinstellung zu akzeptieren.
  • Domain – Das Tool erkennt automatisch den NetBIOS-Domänennamen. In diesem Beispiel ist das NetBIOS OJI . Drücken Sie die Eingabetaste, um fortzufahren.
  • Serverrolle – Das Tool füllt automatisch die Serverrolle als Domänencontroller (dc ). Drücken Sie die Eingabetaste, um fortzufahren.
  • DNS-Backend – der Standardwert ist SAMBA_INTERNAL . Drücken Sie die Eingabetaste, um die Standardeinstellung zu akzeptieren.
  • DNS-Weiterleitungs-IP-Adresse – Geben Sie die Fallback-Resolver-Adresse ein, die Sie in resolve.conf angegeben haben früher, also 1.1.1.1 . Drücken Sie die Eingabetaste, um fortzufahren.
  • Administratorpasswort – Legen Sie das Passwort des Standarddomänenadministrators fest. Das von Ihnen angegebene Kennwort muss die Mindestanforderungen von Microsoft an die Komplexität erfüllen. Drücken Sie die Eingabetaste, um fortzufahren.
  • Passwort erneut eingeben – geben Sie das standardmäßige Domain-Administratorpasswort erneut ein und drücken Sie die Eingabetaste.

Am Ende der Konfiguration sehen Sie die folgenden Informationen.

4. Der samba-tool-Befehl generierte die Samba-AD-Kerberos-Konfigurationsdatei unter /var/lib/samba/private/krb5.conf. Sie müssen diese Datei nach /etc/krb5.conf kopieren. Führen Sie dazu den folgenden Befehl aus.

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

5. Starten Sie abschließend den Dienst samba-ad-dc.

sudo systemctl start samba-ad-dc
sudo systemctl status samba-ad-dc

Wie Sie unten sehen können, ist der Dienststatus jetzt aktiv (wird ausgeführt).

Testen des Domänencontroller-Linux-Servers

Der Samba AD DC-Server läuft jetzt. In diesem Abschnitt führen Sie einige Tests nach der Installation durch, um zu bestätigen, dass wichtige Komponenten wie gewünscht funktionieren. Ein solcher Test besteht darin, zu versuchen, sich bei den Standardnetzwerkfreigaben auf dem DC anzumelden.

Führen Sie den Befehl smbclient aus, um sich als Standard-Administratorkonto anzumelden, und listen Sie (ls) den Inhalt der netlogon-Freigabe auf.

smbclient //localhost/netlogon -U Administrator -c 'ls'

Geben Sie das Standard-Admin-Passwort ein. Die Freigabe sollte fehlerfrei zugänglich sein, wenn der DC in einem guten Zustand ist. Wie Sie unten sehen können, listet der Befehl das Netlogon-Freigabeverzeichnis auf.

Überprüfen der DNS-Auflösung für Schlüsseldomäneneinträge

Führen Sie die folgenden Befehle aus, um die folgenden DNS-Einträge nachzuschlagen.

  • TCP-basierter LDAP-SRV-Eintrag für die Domain.
  • UDP-basierter Kerberos-SRV-Eintrag für die Domäne.
  • Ein Datensatz des Domänencontrollers.
host -t SRV _ldap._tcp.oji.com
host -t SRV _kerberos._udp.oji.com
host -t A oddjobs-dc.oji.com

Jeder Befehl sollte die folgenden Ergebnisse zurückgeben, die anzeigen, dass die DNS-Auflösung funktioniert.

Kerberos testen

Der letzte Test besteht darin, zu versuchen, ein Kerberos-Ticket erfolgreich auszustellen.

1. Führen Sie den kinit-Befehl für den Administrator-Benutzer aus. Der Befehl fügt den Realm automatisch an das Benutzerkonto an. Beispielsweise wird der Administrator zu [email protected], wobei OJI.com der Realm ist.

kinit administrator

2. Geben Sie an der Eingabeaufforderung das Administratorkennwort ein und drücken Sie die Eingabetaste. Wenn das Passwort korrekt ist, sehen Sie eine Warnmeldung zum Ablauf des Passworts, wie unten gezeigt.

3. Führen Sie den folgenden klist-Befehl aus, um alle Tickets im Ticket-Cache aufzulisten.

klist

Der folgende Screenshot zeigt, dass sich das Kerberos-Ticket für das Administratorkonto im Ticket-Cache befindet. Dieses Ergebnis weist darauf hin, dass die Kerberos-Authentifizierung auf dem Linux-Server Ihres Domänencontrollers funktioniert.

Schlussfolgerung

Herzlichen Glückwunsch, Sie haben das Ende dieses Tutorials erreicht. Sie haben jetzt gelernt, schnell einen Active Directory-Domänencontroller-Linux-Server einzurichten. Vertiefen Sie Ihr Wissen zu diesem Thema, indem Sie lernen, Benutzer zu erstellen und Client-Computern in der Domäne beizutreten.


Linux
  1. So packen Sie Python-Anwendungen für Linux

  2. So erstellen Sie ein freigegebenes Verzeichnis für alle Benutzer in Linux

  3. So erstellen Sie ein Skript eines Linux-Befehls

  4. So erstellen Sie eine Subdomain für Ihre Website

  5. So installieren Sie CVS und erstellen ein CVS-Repository auf einem Linux-Server

So erstellen Sie symbolische Links in Linux

So erstellen Sie eine Datei unter Linux

So erstellen Sie Verknüpfungen auf dem Linux-Desktop

So erstellen Sie eine temporäre URL für eine Domain

So erstellen Sie ein Abonnement/eine Domain auf Ihrem dedizierten Server

So erstellen Sie temporäre Domainnamen für Domains auf Ihrem dedizierten Server