<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://www.xinux.net/index.php?action=history&amp;feed=atom&amp;title=Windows-DC_durch_Samba_abl%C3%B6sen</id>
	<title>Windows-DC durch Samba ablösen - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://www.xinux.net/index.php?action=history&amp;feed=atom&amp;title=Windows-DC_durch_Samba_abl%C3%B6sen"/>
	<link rel="alternate" type="text/html" href="https://www.xinux.net/index.php?title=Windows-DC_durch_Samba_abl%C3%B6sen&amp;action=history"/>
	<updated>2026-10-21T15:44:51Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Xinux Wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://www.xinux.net/index.php?title=Windows-DC_durch_Samba_abl%C3%B6sen&amp;diff=73804&amp;oldid=prev</id>
		<title>Thomas.will: Neue Seite (Kurs Linux - Samba)</title>
		<link rel="alternate" type="text/html" href="https://www.xinux.net/index.php?title=Windows-DC_durch_Samba_abl%C3%B6sen&amp;diff=73804&amp;oldid=prev"/>
		<updated>2026-10-18T16:51:25Z</updated>

		<summary type="html">&lt;p&gt;Neue Seite (Kurs Linux - Samba)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Kategorie:Samba]]&lt;br /&gt;
&amp;lt;!-- Ablauf: Block &amp;quot;Ablösung&amp;quot;, Rechner dc1 und win-dc --&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Kurs !! Lab !! Rechner !! Domäne&lt;br /&gt;
|-&lt;br /&gt;
| [[Linux - Samba]] || [[Linux - Samba Lab]] || dc1 · 10.2XX.1.12, win-dc · 10.2XX.1.11 || ad.it2XX.int&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Einfach erklärt=&lt;br /&gt;
*Ziel: Die Domäne ad.it2XX.int bleibt, mit allen Benutzern, Gruppen und Rechnern. Nur der Domänencontroller wechselt von Windows zu Samba.&lt;br /&gt;
*Dazu tritt Samba der Domäne als '''zweiter DC''' bei. Beide DCs gleichen sich ab (Replikation).&lt;br /&gt;
*Danach übernimmt Samba die '''FSMO-Rollen''', und der Windows-DC wird '''herabgestuft'''. Clients merken davon fast nichts.&lt;br /&gt;
*Mitgezogen werden müssen alles, was der Windows-DC nebenbei gemacht hat: '''sysvol''' mit den Gruppenrichtlinien, '''DHCP''', die '''Zeit'''.&lt;br /&gt;
&lt;br /&gt;
=Das Wichtigste=&lt;br /&gt;
*'''Nie''' provision auf dc1. Ein DC für eine bestehende Domäne entsteht nur mit '''samba-tool domain join'''.&lt;br /&gt;
*Windows Server 2022 legt Domänen mit Functional Level '''2016''' an. Samba 4.22 kann beitreten, aber nur mit '''ad dc functional level = 2016''' in der smb.conf.&lt;br /&gt;
*Samba repliziert '''sysvol nicht''' mit Windows (kein DFS-R). Gruppenrichtlinien einmal von Hand kopieren.&lt;br /&gt;
*'''Erst''' prüfen, ob die Domäne gesund ist. Ein kaputter Windows-DC wird durch den Beitritt nicht besser.&lt;br /&gt;
*Vorher einen Snapshot von win-dc und dc1 machen.&lt;br /&gt;
&lt;br /&gt;
=Ablauf=&lt;br /&gt;
#win-dc prüfen&lt;br /&gt;
#dc1 vorbereiten&lt;br /&gt;
#dc1 als DC beitreten&lt;br /&gt;
#Replikation prüfen&lt;br /&gt;
#sysvol kopieren&lt;br /&gt;
#FSMO-Rollen übernehmen&lt;br /&gt;
#Zeit und DHCP auf dc1 umziehen&lt;br /&gt;
#Clients auf dc1 als DNS-Server umstellen&lt;br /&gt;
#win-dc herabstufen&lt;br /&gt;
#Aufräumen und prüfen&lt;br /&gt;
&lt;br /&gt;
=1. win-dc prüfen=&lt;br /&gt;
*PowerShell auf win-dc:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dcdiag /q&lt;br /&gt;
repadmin /replsummary&lt;br /&gt;
Get-ADDomain | Format-List DomainMode&lt;br /&gt;
Get-ADForest | Format-List ForestMode&lt;br /&gt;
netdom query fsmo&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*dcdiag /q darf keine Fehler melden.&lt;br /&gt;
&lt;br /&gt;
=2. dc1 vorbereiten=&lt;br /&gt;
*Wie bei der [[Samba-Domäne von Grund auf#Vorbereitung|Domäne von Grund auf]], aber mit dem Namen der bestehenden Domäne:&lt;br /&gt;
*/etc/hosts&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
127.0.0.1       localhost&lt;br /&gt;
10.201.1.12     dc1.ad.it201.int  dc1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*/etc/resolv.conf: '''noch auf win-dc''', bis der Beitritt geklappt hat&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nameserver 10.201.1.11&lt;br /&gt;
search ad.it201.int&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Pakete wie beim DC, Einzeldienste abschalten, smb.conf zur Seite legen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt install samba-ad-dc krb5-user winbind libnss-winbind libpam-winbind smbclient chrony dnsutils ldb-tools acl attr&lt;br /&gt;
systemctl disable --now smbd nmbd winbind&lt;br /&gt;
systemctl mask smbd nmbd winbind&lt;br /&gt;
mv /etc/samba/smb.conf /etc/samba/smb.conf.orig&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*/etc/krb5.conf&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[libdefaults]&lt;br /&gt;
        default_realm = AD.IT201.INT&lt;br /&gt;
        dns_lookup_realm = false&lt;br /&gt;
        dns_lookup_kdc = true&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Zeit vorläufig von win-dc: in /etc/chrony/conf.d/ad.conf '''server 10.201.1.11 iburst''', dann systemctl restart chrony&lt;br /&gt;
*Test: '''kinit administrator''', '''klist'''&lt;br /&gt;
&lt;br /&gt;
=3. Beitreten=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
samba-tool domain join ad.it201.int DC -k yes \&lt;br /&gt;
  --option=&amp;quot;ad dc functional level = 2016&amp;quot; \&lt;br /&gt;
  --option=&amp;quot;dns forwarder = 10.201.1.1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''-k yes''' benutzt das Ticket von kinit.&lt;br /&gt;
*Am Ende steht: ''Joined domain AD (SID S-1-5-21-…) as a DC''&lt;br /&gt;
*Danach:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cp /var/lib/samba/private/krb5.conf /etc/krb5.conf&lt;br /&gt;
systemctl unmask samba-ad-dc&lt;br /&gt;
systemctl enable --now samba-ad-dc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*/etc/resolv.conf: dc1 fragt jetzt sich selbst, win-dc als zweiten&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nameserver 10.201.1.12&lt;br /&gt;
nameserver 10.201.1.11&lt;br /&gt;
search ad.it201.int&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=4. Replikation prüfen=&lt;br /&gt;
*Bis alle Verbindungen stehen, können bis zu 15 Minuten vergehen.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
samba-tool drs showrepl&lt;br /&gt;
host -t A ad.it201.int&lt;br /&gt;
host -t SRV _ldap._tcp.ad.it201.int&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In showrepl muss bei jedem Eintrag ''Last attempt … was successful'' stehen, auch für DomainDnsZones und ForestDnsZones.&lt;br /&gt;
*Auf win-dc:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
repadmin /showrepl&lt;br /&gt;
Get-ADDomainController -Filter * | Format-Table Name, IPv4Address, IsGlobalCatalog&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Gegenprobe: Auf win-dc einen Benutzer anlegen, auf dc1 mit '''samba-tool user list''' nachsehen. Und umgekehrt.&lt;br /&gt;
&lt;br /&gt;
=5. sysvol kopieren=&lt;br /&gt;
*Auf dc1 die Freigabe von win-dc einhängen und kopieren:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt install cifs-utils rsync&lt;br /&gt;
mkdir /mnt/winsysvol&lt;br /&gt;
mount -t cifs //win-dc.ad.it201.int/sysvol /mnt/winsysvol -o sec=krb5,cruid=root&lt;br /&gt;
rsync -av /mnt/winsysvol/ad.it201.int/ /var/lib/samba/sysvol/ad.it201.int/&lt;br /&gt;
umount /mnt/winsysvol&lt;br /&gt;
samba-tool ntacl sysvolreset&lt;br /&gt;
samba-tool ntacl sysvolcheck&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''sysvolreset''' setzt die Rechte auf sysvol so, wie Windows sie erwartet.&lt;br /&gt;
*Danach gilt: Gruppenrichtlinien nur noch an '''einem''' DC bearbeiten, bis win-dc weg ist.&lt;br /&gt;
&lt;br /&gt;
=6. FSMO-Rollen übernehmen=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
samba-tool fsmo show&lt;br /&gt;
samba-tool fsmo transfer --role=all -U administrator&lt;br /&gt;
samba-tool fsmo show&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Alle sieben Rollen müssen jetzt bei dc1 liegen, auch DomainDnsZonesMasterRole und ForestDnsZonesMasterRole.&lt;br /&gt;
*Auf win-dc: '''netdom query fsmo'''&lt;br /&gt;
&lt;br /&gt;
=7. Zeit und DHCP=&lt;br /&gt;
==Zeit==&lt;br /&gt;
*dc1 ist jetzt PDC-Emulator und damit Zeitquelle der Domäne. chrony wie beim [[Samba-Domäne von Grund auf#Zeit mit chrony|DC von Grund auf]]: Upstream die Firewall, ntpsigndsocket, allow für SERVER und LAN.&lt;br /&gt;
==DHCP==&lt;br /&gt;
*Der DHCP-Server auf win-dc verschwindet mit dem Herabstufen. Ersatz auf dc1 mit Kea:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt install kea-dhcp4-server&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*/etc/kea/kea-dhcp4.conf, der Teil für das LAN:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;subnet4&amp;quot;: [ {&lt;br /&gt;
    &amp;quot;id&amp;quot;: 1,&lt;br /&gt;
    &amp;quot;subnet&amp;quot;: &amp;quot;172.26.201.0/24&amp;quot;,&lt;br /&gt;
    &amp;quot;pools&amp;quot;: [ { &amp;quot;pool&amp;quot;: &amp;quot;172.26.201.150 - 172.26.201.199&amp;quot; } ],&lt;br /&gt;
    &amp;quot;option-data&amp;quot;: [&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;routers&amp;quot;, &amp;quot;data&amp;quot;: &amp;quot;172.26.201.1&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;domain-name-servers&amp;quot;, &amp;quot;data&amp;quot;: &amp;quot;10.201.1.12&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;domain-name&amp;quot;, &amp;quot;data&amp;quot;: &amp;quot;ad.it201.int&amp;quot; }&lt;br /&gt;
    ]&lt;br /&gt;
} ]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Kea muss auf der Karte im SERVER-Netz lauschen: &amp;quot;interfaces-config&amp;quot;: { &amp;quot;interfaces&amp;quot;: [ &amp;quot;enp0s3&amp;quot; ] }&lt;br /&gt;
*Umschalten: DHCP auf win-dc stoppen ('''Stop-Service DHCPServer'''), Kea starten, im Relay der Firewall '''10.2XX.1.12''' eintragen.&lt;br /&gt;
*Mehr zu Kea: [https://labs.xinux.net/ddns-kea-bind.html Animation Kea und DDNS]&lt;br /&gt;
&lt;br /&gt;
=8. Clients umstellen=&lt;br /&gt;
*Neue DHCP-Leases bekommen dc1 als DNS-Server. Feste Adressen von Hand ändern, z.B. fs, www, proxy: /etc/resolv.conf auf 10.2XX.1.12.&lt;br /&gt;
*Windows-Clients: ipconfig /renew, dann nltest /dsgetdc:ad.it2XX.int&lt;br /&gt;
&lt;br /&gt;
=9. win-dc herabstufen=&lt;br /&gt;
*PowerShell auf win-dc:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Uninstall-ADDSDomainController -LocalAdministratorPassword (Read-Host -AsSecureString &amp;quot;neues lokales Admin-Passwort&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Der Server meldet sich aus der Domäne ab, entfernt seine Einträge und startet als normaler Mitgliedsserver neu.&lt;br /&gt;
*Hängt das Herabstufen, z.B. weil win-dc dc1 nicht erreicht: nicht erzwingen, sondern erst die Replikation reparieren.&lt;br /&gt;
&lt;br /&gt;
=10. Aufräumen und prüfen=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
samba-tool drs showrepl&lt;br /&gt;
samba-tool dbcheck --cross-ncs&lt;br /&gt;
host -t SRV _ldap._tcp.ad.it201.int&lt;br /&gt;
host -t SRV _kerberos._udp.ad.it201.int&lt;br /&gt;
samba-tool dns query dc1 ad.it201.int @ ALL -U administrator&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In den SRV-Einträgen darf nur noch dc1 stehen.&lt;br /&gt;
*Stehen noch Einträge oder Objekte von win-dc herum, z.B. weil win-dc nicht sauber herabgestuft wurde:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
samba-tool domain demote --remove-other-dead-server=win-dc -U administrator&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Danach als zweiten DC wieder einen Samba-DC aufnehmen, siehe [[Zweiter Samba-DC]]. Eine Domäne mit nur einem DC hat keine Ausfallsicherheit.&lt;br /&gt;
&lt;br /&gt;
=Stolperfallen=&lt;br /&gt;
*'''Join scheitert wegen des Functional Level''': ad dc functional level = 2016 fehlt.&lt;br /&gt;
*'''resolv.conf zu früh auf dc1 umgestellt''': Der Beitritt findet die Domäne nicht.&lt;br /&gt;
*'''sysvol vergessen''': Gruppenrichtlinien fehlen auf dc1, Clients melden Fehler beim Abruf.&lt;br /&gt;
*'''DHCP vergessen''': Nach dem Herabstufen bekommen Clients keine Adressen mehr.&lt;br /&gt;
*'''Zeit''': dc1 ist PDC-Emulator, aber chrony holt die Zeit noch von win-dc. Nach dem Herabstufen läuft die Uhr frei.&lt;br /&gt;
*'''Rollen gewaltsam übernommen''' (seize), solange win-dc noch läuft: zwei DCs halten sich für Rolleninhaber. Nur transfer, seize nur, wenn der alte DC nie wiederkommt.&lt;br /&gt;
&lt;br /&gt;
=Übungen=&lt;br /&gt;
==Grundübungen==&lt;br /&gt;
#Prüfen Sie win-dc mit dcdiag und repadmin. Welchen Functional Level hat die Domäne?&lt;br /&gt;
#Bereiten Sie dc1 vor und treten Sie der Domäne als DC bei.&lt;br /&gt;
#Prüfen Sie die Replikation in beide Richtungen mit einem Testbenutzer.&lt;br /&gt;
#Kopieren Sie sysvol und prüfen Sie es mit sysvolcheck.&lt;br /&gt;
#Übernehmen Sie alle FSMO-Rollen.&lt;br /&gt;
#Ziehen Sie DHCP auf dc1 um und lassen Sie win11 eine neue Adresse holen.&lt;br /&gt;
#Stufen Sie win-dc herab und prüfen Sie danach alle SRV-Einträge.&lt;br /&gt;
==Vertiefung==&lt;br /&gt;
#Lassen Sie sich mit samba-tool drs showrepl --json die Replikation als JSON ausgeben.&lt;br /&gt;
#Legen Sie auf win-dc eine Gruppenrichtlinie an, bevor Sie sysvol kopieren, und prüfen Sie danach, ob win11 sie von dc1 bekommt.&lt;br /&gt;
#Vergleichen Sie die Verzeichnisse beider DCs mit samba-tool ldapcmp ldap://dc1 ldap://win-dc -U administrator&lt;br /&gt;
==Fehlersuche==&lt;br /&gt;
;1. samba-tool domain join bricht ab, die Meldung nennt den Functional Level oder das Schema&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Die Windows-Domäne hat Level 2016. Beim Beitritt fehlt --option=&amp;quot;ad dc functional level = 2016&amp;quot;.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;2. drs showrepl zeigt für DomainDnsZones einen Fehler&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Die DNS-Partitionen werden noch nicht repliziert, meist weil die Zeit noch nicht reicht oder ein DNS-Eintrag für dc1 fehlt. 15 Minuten warten, dann samba_dnsupdate --verbose auf dc1.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;3. Nach dem Herabstufen von win-dc meldet win11: Domäne nicht verfügbar&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
win11 hat noch win-dc als DNS-Server, aus einer alten DHCP-Lease oder fest eingetragen. ipconfig /all, ipconfig /renew&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;4. Clients bekommen nach dem Umzug keine Adresse&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Das Relay der Firewall zeigt noch auf win-dc, oder Kea lauscht auf der falschen Karte. journalctl -u kea-dhcp4-server&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Vertiefung=&lt;br /&gt;
*[[Samba-tool fsmo]] · [[Samba-tool drs]] · [[Samba-tool ntacl]]&lt;br /&gt;
*https://wiki.samba.org/index.php/Joining_a_Samba_DC_to_an_Existing_Active_Directory&lt;br /&gt;
*https://wiki.samba.org/index.php/Transferring_and_Seizing_FSMO_Roles&lt;br /&gt;
&lt;br /&gt;
=Weiter=&lt;br /&gt;
*[[Zweiter Samba-DC]]&lt;br /&gt;
*[[Linux - Samba|Zurück zur Kursseite]]&lt;/div&gt;</summary>
		<author><name>Thomas.will</name></author>
	</entry>
</feed>