Website-Suche

Einrichten der SysVol-Replikation über zwei Samba4 AD DC mit Rsync – Teil 6


In diesem Thema wird die SysVol-Replikation über zwei Samba4 Active Directory-Domänencontroller behandelt, die mit Hilfe einiger leistungsstarker Linux-Tools durchgeführt wird, wie z. B. dem Rsync-Dateisynchronisierungsdienstprogramm, dem Cron-Planungsdaemon und SSH Protokoll.

Anforderungen:

  1. Treten Sie Ubuntu 16.04 als zusätzlicher Domänencontroller für Samba4 AD DC bei – Teil 5

Schritt 1: Genaue Zeitsynchronisierung über DCs hinweg

1. Bevor Sie mit der Replikation des Inhalts des Verzeichnisses sysvol auf beiden Domänencontrollern beginnen, müssen Sie eine genaue Zeit für diese Maschinen angeben.

Wenn die Verzögerung in beide Richtungen mehr als 5 Minuten beträgt und die Uhren nicht richtig synchronisiert sind, sollten verschiedene Probleme mit AD-Konten und der Domänenreplikation auftreten.

Um das Problem der Zeitverschiebung zwischen zwei oder mehr Domänencontrollern zu überwinden, müssen Sie den NTP-Server auf Ihrem Computer installieren und konfigurieren, indem Sie den folgenden Befehl ausführen.

apt-get install ntp

2. Nachdem der NTP-Daemon installiert wurde, öffnen Sie die Hauptkonfigurationsdatei, kommentieren Sie die Standardpools (fügen Sie vor jeder Poolzeile ein # hinzu) und fügen Sie einen neuen Pool hinzu verweist zurück auf den Haupt-Samba4 AD DC FQDN mit installiertem NTP-Server, wie im folgenden Beispiel vorgeschlagen.

nano /etc/ntp.conf

Fügen Sie der Datei ntp.conf die folgenden Zeilen hinzu.

pool 0.ubuntu.pool.ntp.org iburst
#pool 1.ubuntu.pool.ntp.org iburst
#pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst

pool adc1.tecmint.lan

Use Ubuntu's ntp server as a fallback.
pool ntp.ubuntu.com

3. Schließen Sie die Datei noch nicht, gehen Sie zum Ende der Datei und fügen Sie die folgenden Zeilen hinzu, damit andere Clients die Zeit mit diesem NTP-Server abfragen und synchronisieren können, indem sie signierte Dateien ausgeben NTP-Anfragen, falls der primäre DC offline geht:

restrict source notrap nomodify noquery mssntp
ntpsigndsocket /var/lib/samba/ntp_signd/

4. Speichern und schließen Sie abschließend die Konfigurationsdatei und starten Sie den NTP-Daemon neu, um die Änderungen zu übernehmen. Warten Sie einige Sekunden oder Minuten, bis die Synchronisierungszeit erreicht ist, und geben Sie den Befehl ntpq aus, um den aktuellen Zusammenfassungsstatus des adc1-Peers synchron auszudrucken.

systemctl restart ntp
ntpq -p

Schritt 2: SysVol-Replikation mit dem ersten DC über Rsync

Standardmäßig führt Samba4 AD DC keine SysVol-Replikation über DFS-R (Distributed File System Replication) durch. oder den FRS (File Replication Service).

Dies bedeutet, dass Gruppenrichtlinien-Objekte nur verfügbar sind, wenn der erste Domänencontroller online ist. Wenn der erste Domänencontroller nicht mehr verfügbar ist, gelten die Gruppenrichtlinieneinstellungen und Anmeldeskripts nicht mehr auf den in der Domäne registrierten Windows-Computern.

Um dieses Hindernis zu überwinden und eine rudimentäre Form der SysVol-Replikation zu erreichen, planen wir einen Linux-rsync-Befehl in Kombination mit einem SSH-verschlüsselten Tunnel mit schlüsselbasierter SSH-Authentifizierung, um GPO-Objekte sicher vom ersten Domänencontroller zu übertragen zum zweiten Domänencontroller.

Diese Methode stellt die Konsistenz von GPO-Objekten über alle Domänencontroller hinweg sicher, hat jedoch einen großen Nachteil. Es funktioniert nur in eine Richtung, da rsync bei der Synchronisierung von GPO-Verzeichnissen alle Änderungen vom Quell-DC auf den Ziel-DC überträgt.

Objekte, die auf der Quelle nicht mehr vorhanden sind, werden auch vom Ziel gelöscht. Um Konflikte einzuschränken und zu vermeiden, sollten alle GPO-Änderungen nur am ersten DC vorgenommen werden.

5. Um den Prozess der SysVol-Replikation zu starten, generieren Sie zunächst einen SSH-Schlüssel auf dem ersten Samba AD DC und übertragen Sie den Schlüssel auf den zweiten DC, indem Sie die folgenden Befehle ausführen.

Verwenden Sie für diesen Schlüssel keine Passphrase, damit die geplante Übertragung ohne Benutzereingriff ausgeführt werden kann.

ssh-keygen -t RSA  
ssh-copy-id root@adc2  
ssh adc2 
exit 

6. Nachdem Sie sichergestellt haben, dass sich der Root-Benutzer des ersten DC automatisch am zweiten DC anmelden kann, führen Sie den folgenden aus Rsync-Befehl mit dem Parameter --dry-run, um die SysVol-Replikation zu simulieren. Ersetzen Sie adc2 entsprechend.

rsync --dry-run -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

7. Wenn der Simulationsprozess wie erwartet funktioniert, führen Sie den Befehl rsync erneut ohne die Option --dry-run aus, um tatsächlich GPO-Objekte auf Ihren Domänencontrollern zu replizieren.

rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

8. Nachdem der SysVol-Replikationsprozess abgeschlossen ist, melden Sie sich beim Zieldomänencontroller an und listen Sie den Inhalt eines der GPO-Objektverzeichnisse auf, indem Sie den folgenden Befehl ausführen.

Auch hier sollten die gleichen GPO-Objekte vom ersten DC repliziert werden.

ls -alh /var/lib/samba/sysvol/your_domain/Policiers/

9. Um den Prozess der Gruppenrichtlinien-Replikation (Sysvol-Verzeichnistransport über das Netzwerk) zu automatisieren, planen Sie einen Root-Job, um den zuvor verwendeten rsync-Befehl alle 5 Minuten auszuführen, indem Sie Folgendes ausgeben Befehl.

crontab -e 

Fügen Sie den Befehl rsync hinzu, der alle 5 Minuten ausgeführt wird, und leiten Sie die Ausgabe des Befehls, einschließlich der Fehler, an die Protokolldatei /var/log/sysvol-replication.log weiter. Für den Fall, dass etwas nicht funktioniert Es wird erwartet, dass Sie diese Datei konsultieren, um das Problem zu beheben.

*/5 * * * * rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/ > /var/log/sysvol-replication.log 2>&1

10. Unter der Annahme, dass es in Zukunft einige damit zusammenhängende Probleme mit SysVol ACL-Berechtigungen geben wird, können Sie die folgenden Befehle ausführen, um diese Fehler zu erkennen und zu beheben.

samba-tool ntacl sysvolcheck
samba-tool ntacl sysvolreset

11. Falls der erste Samba4 AD DC mit der FSMO-Rolle als „PDC-Emulator“ nicht verfügbar ist, können Sie dies tun Erzwingen Sie, dass die auf einem Microsoft Windows-System installierte Gruppenrichtlinien-Verwaltungskonsole nur eine Verbindung zum zweiten Domänencontroller herstellt, indem Sie die Option „Domänencontroller ändern“ auswählen und den Zielcomputer manuell auswählen, wie unten dargestellt.

Während Sie über die Gruppenrichtlinien-Verwaltungskonsole mit dem zweiten DC verbunden sind, sollten Sie keine Änderungen an der Gruppenrichtlinie Ihrer Domäne vornehmen. Wenn der erste DC wieder verfügbar ist, vernichtet der rsync-Befehl alle auf diesem zweiten Domänencontroller vorgenommenen Änderungen.