Website-Suche

Verbinden Sie einen zusätzlichen Ubuntu-DC mit dem Samba4 AD DC für die FailOver-Replikation – Teil 5


In diesem Tutorial erfahren Sie, wie Sie der vorhandenen Samba AD DC-Gesamtstruktur einen zweiten Samba4-Domänencontroller hinzufügen, der auf einem Ubuntu 16.04-Server bereitgestellt wird um ein gewisses Maß an Lastausgleich/Failover für einige wichtige AD DC-Dienste bereitzustellen, insbesondere für Dienste wie DNS und AD DC LDAP-Schema mit SAM-Datenbank.

Anforderungen

  1. Erstellen Sie eine Active Directory-Infrastruktur mit Samba4 unter Ubuntu – Teil 1

Dieser Artikel ist ein Teil-5 der Samba4 AD DC-Reihe wie folgt:

Schritt 1: Erstkonfiguration für das Samba4-Setup

1. Bevor Sie mit dem eigentlichen Domänenbeitritt für den zweiten DC beginnen, müssen Sie einige Anfangseinstellungen vornehmen. Stellen Sie zunächst sicher, dass der Hostname des Systems, das in Samba4 AD DC integriert wird, einen aussagekräftigen Namen enthält.

Vorausgesetzt, dass der Hostname des ersten bereitgestellten Bereichs adc1 heißt, können Sie den zweiten DC mit adc2 benennen, um ein konsistentes Benennungsschema bereitzustellen auf Ihren Domänencontrollern.

Um den System-Hostnamen zu ändern, können Sie den folgenden Befehl ausführen.

hostnamectl set-hostname adc2

Andernfalls können Sie die Datei /etc/hostname manuell bearbeiten und eine neue Zeile mit dem gewünschten Namen hinzufügen.

nano /etc/hostname

Fügen Sie hier den Hostnamen hinzu.

adc2

2. Öffnen Sie als Nächstes die lokale Systemauflösungsdatei und fügen Sie einen Eintrag mit der IP-Adresse hinzu, der auf den Kurznamen und den FQDN des Hauptdomänencontrollers verweist, wie unten dargestellt Bildschirmfoto.

In diesem Tutorial lautet der primäre DC-Name adc1.tecmint.lan und wird in die IP-Adresse 192.168.1.254 aufgelöst.

nano /etc/hosts

Fügen Sie die folgende Zeile hinzu:

IP_of_main_DC		FQDN_of_main_DC 	short_name_of_main_DC

3. Öffnen Sie im nächsten Schritt /etc/network/interfaces und weisen Sie Ihrem System eine statische IP-Adresse zu, wie im folgenden Screenshot dargestellt.

Achten Sie auf die Variablen dns-nameservers und dns-search. Diese Werte sollten so konfiguriert werden, dass sie auf die IP-Adresse des primären Samba4 AD DC und Realms verweisen, damit die DNS-Auflösung ordnungsgemäß funktioniert.

Starten Sie den Netzwerk-Daemon neu, um die Änderungen zu übernehmen. Überprüfen Sie die Datei /etc/resolv.conf, um sicherzustellen, dass beide DNS-Werte Ihrer Netzwerkschnittstelle in dieser Datei aktualisiert werden.

nano /etc/network/interfaces

Bearbeiten und ersetzen Sie sie durch Ihre benutzerdefinierten IP-Einstellungen:

auto ens33
iface ens33 inet static
        address 192.168.1.253
        netmask 255.255.255.0
        brodcast 192.168.1.1
        gateway 192.168.1.1
        dns-nameservers 192.168.1.254
        dns-search tecmint.lan

Starten Sie den Netzwerkdienst neu und bestätigen Sie die Änderungen.

systemctl restart networking.service
cat /etc/resolv.conf

Der Wert dns-search hängt automatisch den Domänennamen an, wenn Sie einen Host anhand seines Kurznamens abfragen (bildet den FQDN).

4. Um zu testen, ob die DNS-Auflösung wie erwartet funktioniert, geben Sie eine Reihe von Ping-Befehlen für den Kurznamen, den FQDN und den Bereich Ihrer Domain aus, wie im folgenden Screenshot gezeigt.

In all diesen Fällen sollte der Samba4 AD DC DNS-Server mit der IP-Adresse Ihres Haupt-DC antworten.

5. Der letzte zusätzliche Schritt, den Sie erledigen müssen, ist die Zeitsynchronisierung mit Ihrem Hauptdomänencontroller. Dies können Sie erreichen, indem Sie das NTP-Client-Dienstprogramm auf Ihrem System installieren, indem Sie den folgenden Befehl ausführen:

apt-get install ntpdate

6. Angenommen, Sie möchten die Zeitsynchronisierung mit samba4 AD DC manuell erzwingen, führen Sie den Befehl ntpdate für den primären DC aus, indem Sie den folgenden Befehl ausgeben.

ntpdate adc1

Schritt 2: Installieren Sie Samba4 mit den erforderlichen Abhängigkeiten

7. Um das Ubuntu 16.04-System in Ihrer Domäne zu registrieren, installieren Sie zunächst Samba4, den Kerberos-Client und einige weitere Weitere wichtige Pakete zur späteren Verwendung können Sie aus den offiziellen Ubuntu-Repositorys herunterladen, indem Sie den folgenden Befehl ausführen:

apt-get install samba krb5-user krb5-config winbind libpam-winbind libnss-winbind

8. Während der Installation müssen Sie den Kerberos-Realmnamen angeben. Schreiben Sie Ihren Domainnamen in Großbuchstaben und drücken Sie die [Enter]-Taste, um den Installationsvorgang abzuschließen.

9. Überprüfen Sie nach Abschluss der Paketinstallation die Einstellungen, indem Sie mit dem Befehl kinit ein Kerberos-Ticket für einen Domänenadministrator anfordern. Verwenden Sie den Befehl klist, um gewährte Kerberos-Tickets aufzulisten.

kinit domain-admin-user@YOUR_DOMAIN.TLD
klist

Schritt 3: Treten Sie Samba4 AD DC als Domänencontroller bei

10. Bevor Sie Ihre Maschine in Samba4 DC integrieren, stellen Sie zunächst sicher, dass alle auf Ihrem System laufenden Samba4-Daemons gestoppt sind und benennen Sie außerdem die Standard-Samba-Konfigurationsdatei um, um sie zu starten sauber. Während der Bereitstellung des Domänencontrollers erstellt Samba eine neue Konfigurationsdatei von Grund auf.

systemctl stop samba-ad-dc smbd nmbd winbind
mv /etc/samba/smb.conf /etc/samba/smb.conf.initial

11. Um den Domänenbeitrittsprozess zu starten, starten Sie zunächst nur den Daemon samba-ad-dc und führen Sie anschließend samba-tool aus Befehl, um dem Realm mit einem Konto mit Administratorrechten für Ihre Domain beizutreten.

samba-tool domain join your_domain DC -U "your_domain_admin"

Auszug aus der Domain-Integration:

samba-tool domain join tecmint.lan DC -U"tecmint_user"
Beispielausgabe
Finding a writeable DC for domain 'tecmint.lan'
Found DC adc1.tecmint.lan
Password for [WORKGROUP\tecmint_user]:
workgroup is TECMINT
realm is tecmint.lan
checking sAMAccountName
Deleted CN=ADC2,CN=Computers,DC=tecmint,DC=lan
Adding CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Adding CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding CN=NTDS Settings,CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding SPNs to CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Setting account password for ADC2$
Enabling account
Calling bare provision
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Provision OK for domain DN DC=tecmint,DC=lan
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[402/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1550/1550] linked_values[0/0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[402/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[804/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1206/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1608/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1614/1614] linked_values[28/0]
Replicating critical objects from the base DN of the domain
Partition[DC=tecmint,DC=lan] objects[97/97] linked_values[24/0]
Partition[DC=tecmint,DC=lan] objects[380/283] linked_values[27/0]
Done with always replicated NC (base, config, schema)
Replicating DC=DomainDnsZones,DC=tecmint,DC=lan
Partition[DC=DomainDnsZones,DC=tecmint,DC=lan] objects[45/45] linked_values[0/0]
Replicating DC=ForestDnsZones,DC=tecmint,DC=lan
Partition[DC=ForestDnsZones,DC=tecmint,DC=lan] objects[18/18] linked_values[0/0]
Committing SAM database
Sending DsReplicaUpdateRefs for all the replicated partitions
Setting isSynchronized and dsServiceName
Setting up secrets database
Joined domain TECMINT (SID S-1-5-21-715537322-3397311598-55032968) as a DC

12. Nachdem die Ubuntu-Software mit Samba4 in die Domäne integriert wurde, öffnen Sie die Samba-Hauptkonfigurationsdatei und fügen Sie die folgenden Zeilen hinzu:

nano /etc/samba/smb.conf

Fügen Sie den folgenden Auszug zur Datei smb.conf hinzu.

dns forwarder = 192.168.1.1
idmap_ldb:use rfc2307 = yes

   template shell = /bin/bash
   winbind use default domain = true
   winbind offline logon = false
   winbind nss info = rfc2307
        winbind enum users = yes
        winbind enum groups = yes

Ersetzen Sie die DNS-Weiterleitungs-IP-Adresse durch Ihre eigene DNS-Weiterleitungs-IP. Samba leitet alle DNS-Auflösungsanfragen, die außerhalb Ihrer domänenautorisierenden Zone liegen, an diese IP-Adresse weiter.

13. Starten Sie abschließend den Samba-Daemon neu, um die Änderungen zu übernehmen, und überprüfen Sie die Active Directory-Replikation, indem Sie die folgenden Befehle ausführen.

systemctl restart samba-ad-dc
samba-tool drs showrepl

14. Benennen Sie außerdem die anfängliche Kerberos-Konfigurationsdatei aus dem Pfad /etc um und ersetzen Sie sie durch die neue krb5.conf-Konfigurationsdatei, die von Samba während der Bereitstellung generiert wurde die Domäne.

Die Datei befindet sich im Verzeichnis /var/lib/samba/private. Verwenden Sie den Linux-Symlink, um diese Datei mit dem Verzeichnis /etc zu verknüpfen.

mv /etc/krb5.conf /etc/krb5.conf.initial
ln -s /var/lib/samba/private/krb5.conf /etc/
cat /etc/krb5.conf

15. Überprüfen Sie außerdem die Kerberos-Authentifizierung mit der Samba-Datei krb5.conf. Fordern Sie ein Ticket für einen Administratorbenutzer an und listen Sie das zwischengespeicherte Ticket auf, indem Sie die folgenden Befehle ausführen.

kinit administrator
klist

Schritt 4: Zusätzliche Domänendienstvalidierungen

16. Der erste Test, den Sie durchführen müssen, ist die Samba4 DC DNS-Auflösung. Um die DNS-Auflösung Ihrer Domäne zu überprüfen, fragen Sie den Domänennamen mit dem Befehl host anhand einiger wichtiger AD-DNS-Einträge ab, wie im folgenden Screenshot dargestellt.

Der DNS-Server sollte jetzt für jede Abfrage ein Paar aus zwei IP-Adressen wiedergeben.

host your_domain.tld
host -t SRV _kerberos._udp.your_domain.tld  # UDP Kerberos SRV record
host -t SRV _ldap._tcp.your_domain.tld  # TCP LDAP SRV record

17. Diese DNS-Einträge sollten auch auf einem registrierten Windows-Computer mit installierten RSAT-Tools sichtbar sein. Öffnen Sie den DNS-Manager und erweitern Sie ihn auf Ihre Domänen-TCP-Einträge, wie im Bild unten gezeigt.

18. Der nächste Test sollte zeigen, ob die Domänen-LDAP-Replikation wie erwartet funktioniert. Erstellen Sie mit samba-tool ein Konto auf dem zweiten Domänencontroller und überprüfen Sie, ob das Konto automatisch auf dem ersten Samba4 AD DC repliziert wird.

Auf adc2:
samba-tool user add test_user
Auf adc1:
samba-tool user list | grep test_user

19. Sie können ein Konto auch über eine Microsoft AD UC-Konsole erstellen und überprüfen, ob das Konto auf beiden Domänencontrollern angezeigt wird.

Standardmäßig sollte das Konto automatisch auf beiden Samba-Domänencontrollern erstellt werden. Fragen Sie den Kontonamen von adc1 mit dem Befehl wbinfo ab.

20. Öffnen Sie tatsächlich die AD UC-Konsole unter Windows, erweitern Sie sie auf „Domänencontroller“ und Sie sollten beide registrierten DC-Maschinen sehen.

Schritt 5: Aktivieren Sie den Samba4 AD DC-Dienst

21. Um Samba4 AD DC-Dienste systemweit zu aktivieren, deaktivieren Sie zunächst einige alte und nicht verwendete Samba-Daemons und aktivieren Sie nur den samba-ad-dc-Dienst, indem Sie die folgenden Befehle ausführen :

systemctl disable smbd nmbd winbind
systemctl enable samba-ad-dc

22. Wenn Sie den Samba4-Domänencontroller von einem Microsoft-Client aus remote verwalten oder andere Linux- oder Windows-Clients in Ihre Domäne integriert haben, stellen Sie sicher, dass Sie die IP-Adresse des adc2 angeben Computer an die IP-Einstellungen ihres Netzwerkschnittstellen-DNS-Servers anpassen, um ein gewisses Maß an Redundanz zu erreichen.

Die folgenden Screenshots veranschaulichen die für einen Windows- oder einen Debian/Ubuntu-Client erforderlichen Konfigurationen.

Angenommen, der erste DC mit 192.168.1.254 geht offline, kehren Sie die Reihenfolge der DNS-Server-IP-Adressen in der Konfigurationsdatei um, damit nicht versucht wird, zuerst eine Nichtverfügbarkeit abzufragen DNS Server.

Wenn Sie abschließend eine lokale Authentifizierung auf einem Linux-System mit einem Samba4 Active Directory-Konto durchführen oder Root-Rechte für AD LDAP-Konten in Linux gewähren möchten, lesen Sie die Schritte 2 und 3 aus dem Tutorial „Samba4 AD-Infrastruktur über die Linux-Befehlszeile verwalten“.