<?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-Dom%C3%A4ne_mit_PowerShell</id>
	<title>Windows-Domäne mit PowerShell - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://www.xinux.net/index.php?action=history&amp;feed=atom&amp;title=Windows-Dom%C3%A4ne_mit_PowerShell"/>
	<link rel="alternate" type="text/html" href="https://www.xinux.net/index.php?title=Windows-Dom%C3%A4ne_mit_PowerShell&amp;action=history"/>
	<updated>2026-10-21T15:44:41Z</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-Dom%C3%A4ne_mit_PowerShell&amp;diff=73797&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-Dom%C3%A4ne_mit_PowerShell&amp;diff=73797&amp;oldid=prev"/>
		<updated>2026-10-18T16:46:19Z</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;Windows-Domäne&amp;quot;, Rechner 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]] || win-dc · 10.2XX.1.11 || ad.it2XX.int&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Einfach erklärt=&lt;br /&gt;
*Ein Windows Server wird zum Domänencontroller, indem man ihm die Rolle '''Active Directory-Domänendienste''' (AD DS) gibt und ihn zum ersten DC einer neuen '''Gesamtstruktur''' (Forest) macht.&lt;br /&gt;
*Dabei richtet Windows gleich den '''DNS-Server''' für die Domäne mit ein, genau wie Samba.&lt;br /&gt;
*Alles, was man in der grafischen Oberfläche klickt, geht auch mit '''PowerShell'''. Das ist schneller, man kann es wiederholen und genau nachlesen, was passiert ist.&lt;br /&gt;
*Für Linux-Leute: PowerShell-Befehle heißen immer '''Verb-Nomen''', z.B. Get-ADUser, New-ADUser. Hilfe gibt es mit '''Get-Help Befehl -Examples'''.&lt;br /&gt;
&lt;br /&gt;
=Das Wichtigste=&lt;br /&gt;
*Erst Name und feste Adresse, dann die Rollen, dann den DC einrichten. Der Name lässt sich danach kaum noch ändern.&lt;br /&gt;
*Ein Windows-DC nimmt nach dem Einrichten sich selbst als DNS-Server. Fremde Namen fragt er beim '''Forwarder''' nach.&lt;br /&gt;
*Der erste DC hat alle '''FSMO-Rollen''', auch den PDC-Emulator. Der ist die Zeitquelle der Domäne.&lt;br /&gt;
*Windows Server 2022 legt die Domäne mit dem Functional Level '''2016''' an. Das ist später für Samba wichtig, siehe [[Windows-DC durch Samba ablösen]].&lt;br /&gt;
&lt;br /&gt;
=Deine Werte=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Wert !! Beispiel lab01&lt;br /&gt;
|-&lt;br /&gt;
| Rechner || win-dc&lt;br /&gt;
|-&lt;br /&gt;
| Adresse || 10.201.1.11/24, Gateway 10.201.1.1&lt;br /&gt;
|-&lt;br /&gt;
| Domäne || ad.it201.int&lt;br /&gt;
|-&lt;br /&gt;
| NetBIOS || AD&lt;br /&gt;
|-&lt;br /&gt;
| DHCP-Bereich im LAN || 172.26.201.150 bis 172.26.201.199&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Vorbereitung=&lt;br /&gt;
*Alle Befehle in einer '''PowerShell als Administrator'''.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Rename-Computer -NewName win-dc -Restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Nach dem Neustart den Namen der Netzwerkkarte herausfinden und die Adresse setzen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Get-NetAdapter&lt;br /&gt;
New-NetIPAddress -InterfaceAlias &amp;quot;Ethernet&amp;quot; -IPAddress 10.201.1.11 -PrefixLength 24 -DefaultGateway 10.201.1.1&lt;br /&gt;
Set-DnsClientServerAddress -InterfaceAlias &amp;quot;Ethernet&amp;quot; -ServerAddresses 10.201.1.1&lt;br /&gt;
Set-TimeZone -Id &amp;quot;W. Europe Standard Time&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Prüfen: '''ipconfig /all''', '''Test-NetConnection debian.org'''&lt;br /&gt;
&lt;br /&gt;
=Rollen installieren=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Install-WindowsFeature AD-Domain-Services, DNS, DHCP -IncludeManagementTools&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''-IncludeManagementTools''' installiert die Verwaltungsprogramme dazu: Active Directory-Benutzer und -Computer, DNS-Manager, DHCP-Konsole.&lt;br /&gt;
&lt;br /&gt;
=Domäne anlegen=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Install-ADDSForest `&lt;br /&gt;
  -DomainName &amp;quot;ad.it201.int&amp;quot; `&lt;br /&gt;
  -DomainNetbiosName &amp;quot;AD&amp;quot; `&lt;br /&gt;
  -InstallDns `&lt;br /&gt;
  -SafeModeAdministratorPassword (Read-Host -AsSecureString &amp;quot;DSRM-Passwort&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Das '''DSRM-Passwort''' braucht man nur für die Wiederherstellung im Verzeichnisdienst-Wiederherstellungsmodus. Gut aufheben.&lt;br /&gt;
*Der Server startet danach von selbst neu. Anmelden jetzt als '''AD\Administrator''', mit dem bisherigen lokalen Administratorpasswort.&lt;br /&gt;
*Das '''`''' am Zeilenende ist in PowerShell das, was in der Bash der '''\''' ist.&lt;br /&gt;
&lt;br /&gt;
=DNS=&lt;br /&gt;
*Forwarder: Was nicht zur Domäne gehört, fragt der DC bei der Firewall nach.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Set-DnsServerForwarder -IPAddress 10.201.1.1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Rückwärtszonen für beide Netze:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Add-DnsServerPrimaryZone -NetworkId &amp;quot;10.201.1.0/24&amp;quot; -ReplicationScope Forest&lt;br /&gt;
Add-DnsServerPrimaryZone -NetworkId &amp;quot;172.26.201.0/24&amp;quot; -ReplicationScope Forest&lt;br /&gt;
ipconfig /registerdns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Prüfen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Resolve-DnsName -Type SRV _ldap._tcp.ad.it201.int&lt;br /&gt;
Resolve-DnsName win-dc.ad.it201.int&lt;br /&gt;
Resolve-DnsName 10.201.1.11&lt;br /&gt;
Resolve-DnsName debian.org&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Zeit=&lt;br /&gt;
*Der PDC-Emulator holt die Zeit von außen, alle anderen Rechner der Domäne von ihm.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
w32tm /config /manualpeerlist:&amp;quot;10.201.1.1&amp;quot; /syncfromflags:manual /reliable:yes /update&lt;br /&gt;
w32tm /resync&lt;br /&gt;
w32tm /query /status&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=DHCP=&lt;br /&gt;
*Die Firewall leitet DHCP-Anfragen aus dem LAN an win-dc weiter (DHCP-Relay). win-dc braucht dafür einen Bereich für das LAN.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Add-DhcpServerSecurityGroup&lt;br /&gt;
Restart-Service DHCPServer&lt;br /&gt;
Add-DhcpServerInDC -DnsName win-dc.ad.it201.int -IPAddress 10.201.1.11&lt;br /&gt;
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12 -Name ConfigurationState -Value 2&lt;br /&gt;
&lt;br /&gt;
Add-DhcpServerv4Scope -Name &amp;quot;LAN&amp;quot; -StartRange 172.26.201.150 -EndRange 172.26.201.199 -SubnetMask 255.255.255.0&lt;br /&gt;
Set-DhcpServerv4OptionValue -ScopeId 172.26.201.0 -Router 172.26.201.1 -DnsServer 10.201.1.11 -DnsDomain ad.it201.int&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Befehl !! Wirkung&lt;br /&gt;
|-&lt;br /&gt;
| Add-DhcpServerInDC || DHCP-Server in der Domäne '''autorisieren'''. Nicht autorisierte Windows-DHCP-Server verteilen keine Adressen&lt;br /&gt;
|-&lt;br /&gt;
| Set-ItemProperty … ConfigurationState || blendet die Warnung „Konfiguration nicht abgeschlossen“ im Server-Manager aus&lt;br /&gt;
|-&lt;br /&gt;
| -DnsServer 10.201.1.11 || die Clients bekommen den DC als DNS-Server. Ohne das finden sie die Domäne nicht&lt;br /&gt;
|}&lt;br /&gt;
*Feste Adresse für einen Client, z.B. win11:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Add-DhcpServerv4Reservation -ScopeId 172.26.201.0 -IPAddress 172.26.201.100 -ClientId &amp;quot;08-00-27-12-34-56&amp;quot; -Name win11&lt;br /&gt;
Get-DhcpServerv4Lease -ScopeId 172.26.201.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Struktur, Benutzer und Gruppen=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$base = &amp;quot;DC=ad,DC=it201,DC=int&amp;quot;&lt;br /&gt;
New-ADOrganizationalUnit -Name &amp;quot;Firma&amp;quot; -Path $base&lt;br /&gt;
New-ADOrganizationalUnit -Name &amp;quot;Benutzer&amp;quot; -Path &amp;quot;OU=Firma,$base&amp;quot;&lt;br /&gt;
New-ADOrganizationalUnit -Name &amp;quot;Gruppen&amp;quot; -Path &amp;quot;OU=Firma,$base&amp;quot;&lt;br /&gt;
New-ADOrganizationalUnit -Name &amp;quot;Rechner&amp;quot; -Path &amp;quot;OU=Firma,$base&amp;quot;&lt;br /&gt;
&lt;br /&gt;
New-ADGroup -Name &amp;quot;verwaltung&amp;quot; -GroupScope Global -Path &amp;quot;OU=Gruppen,OU=Firma,$base&amp;quot;&lt;br /&gt;
&lt;br /&gt;
New-ADUser -Name &amp;quot;Max Muster&amp;quot; -GivenName Max -Surname Muster `&lt;br /&gt;
  -SamAccountName max -UserPrincipalName max@ad.it201.int `&lt;br /&gt;
  -Path &amp;quot;OU=Benutzer,OU=Firma,$base&amp;quot; `&lt;br /&gt;
  -AccountPassword (Read-Host -AsSecureString &amp;quot;Passwort&amp;quot;) -Enabled $true&lt;br /&gt;
&lt;br /&gt;
Add-ADGroupMember -Identity verwaltung -Members max&lt;br /&gt;
Get-ADUser -Filter * | Format-Table Name, SamAccountName, Enabled&lt;br /&gt;
Get-ADGroupMember verwaltung&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*'''OU''' (Organisationseinheit) ist ein Ordner im Verzeichnis. An OUs hängt man später Gruppenrichtlinien.&lt;br /&gt;
*Für Linux-Leute: Ein '''Distinguished Name''' wie OU=Benutzer,OU=Firma,DC=ad,DC=it201,DC=int ist derselbe Pfad wie in jedem LDAP-Verzeichnis, nur von unten nach oben gelesen.&lt;br /&gt;
&lt;br /&gt;
=Prüfen=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Was !! Befehl&lt;br /&gt;
|-&lt;br /&gt;
| Domäne || Get-ADDomain {{!}} Format-List DNSRoot, NetBIOSName, DomainMode&lt;br /&gt;
|-&lt;br /&gt;
| Gesamtstruktur || Get-ADForest {{!}} Format-List ForestMode, SchemaMaster&lt;br /&gt;
|-&lt;br /&gt;
| DC gesund || dcdiag /q&lt;br /&gt;
|-&lt;br /&gt;
| FSMO-Rollen || netdom query fsmo&lt;br /&gt;
|-&lt;br /&gt;
| SRV-Eintrag || Resolve-DnsName -Type SRV _ldap._tcp.ad.it201.int&lt;br /&gt;
|-&lt;br /&gt;
| Zeit || w32tm /query /status&lt;br /&gt;
|-&lt;br /&gt;
| DHCP || Get-DhcpServerv4Scope&lt;br /&gt;
|}&lt;br /&gt;
*'''dcdiag /q''' zeigt nur Fehler. Keine Ausgabe heißt: alles in Ordnung.&lt;br /&gt;
&lt;br /&gt;
==Von Linux aus prüfen==&lt;br /&gt;
*Auf fs oder lx, mit win-dc als DNS-Server:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
host -t SRV _ldap._tcp.ad.it201.int 10.201.1.11&lt;br /&gt;
host -t SRV _kerberos._tcp.ad.it201.int 10.201.1.11&lt;br /&gt;
ldapsearch -x -H ldap://10.201.1.11 -s base -b &amp;quot;&amp;quot; defaultNamingContext&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Die letzte Abfrage geht ohne Anmeldung. Sie zeigt den RootDSE, die Grunddaten der Domäne.&lt;br /&gt;
&lt;br /&gt;
=Stolperfallen=&lt;br /&gt;
*'''Rechnername nach dem Einrichten ändern''': Bei einem DC aufwendig. Den Namen vorher setzen.&lt;br /&gt;
*'''DNS-Server der Karte zeigt nach außen''': Der DC findet sich selbst nicht. Nach dem Einrichten muss 127.0.0.1 oder die eigene Adresse eingetragen sein.&lt;br /&gt;
*'''DHCP nicht autorisiert''': Der Dienst läuft, verteilt aber keine Adressen.&lt;br /&gt;
*'''DHCP-Relay fehlt''': Clients im LAN bekommen keine Adresse, weil DHCP-Anfragen das Netz nicht verlassen.&lt;br /&gt;
*'''Zeit''': Läuft der PDC-Emulator falsch, läuft die ganze Domäne falsch.&lt;br /&gt;
&lt;br /&gt;
=Übungen=&lt;br /&gt;
==Grundübungen==&lt;br /&gt;
#Richten Sie win-dc mit PowerShell ein: Name, Adresse, Rollen, Domäne ad.it2XX.int.&lt;br /&gt;
#Setzen Sie den Forwarder und legen Sie beide Rückwärtszonen an. Prüfen Sie mit Resolve-DnsName.&lt;br /&gt;
#Richten Sie den DHCP-Bereich für das LAN ein und prüfen Sie, ob win11 eine Adresse bekommt.&lt;br /&gt;
#Legen Sie die OU-Struktur Firma mit Benutzer, Gruppen, Rechner an, dazu zwei Benutzer und eine Gruppe.&lt;br /&gt;
#Prüfen Sie den DC mit dcdiag /q und netdom query fsmo.&lt;br /&gt;
#Fragen Sie von lx aus die SRV-Einträge und den RootDSE ab.&lt;br /&gt;
==Vertiefung==&lt;br /&gt;
#Legen Sie 20 Benutzer aus einer CSV-Datei an: Import-Csv benutzer.csv {{!}} ForEach-Object { New-ADUser … }&lt;br /&gt;
#Welchen Functional Level hat die Domäne? Wo sieht man das in der Oberfläche?&lt;br /&gt;
#Schauen Sie sich mit ldapsearch und einem Domänenbenutzer den Eintrag von max an. Welche Attribute kennen Sie aus OpenLDAP?&lt;br /&gt;
#Lassen Sie DHCP die DNS-Einträge der Clients selbst eintragen: Set-DhcpServerv4DnsSetting&lt;br /&gt;
==Fehlersuche==&lt;br /&gt;
;1. win11 bekommt keine Adresse aus dem LAN-Bereich&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Entweder ist der DHCP-Server nicht autorisiert (Get-DhcpServerInDC), oder das DHCP-Relay auf der Firewall zeigt nicht auf 10.2XX.1.11. Auf win-dc mit Get-DhcpServerv4Lease prüfen, ob überhaupt Anfragen ankommen.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;2. win11 hat eine Adresse, findet die Domäne aber nicht&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Der DHCP-Bereich gibt den falschen DNS-Server aus, z.B. die Firewall. ipconfig /all auf win11 zeigt es. Set-DhcpServerv4OptionValue -DnsServer 10.2XX.1.11&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;3. Auf win-dc funktioniert Resolve-DnsName debian.org nicht&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Der Forwarder fehlt oder die Firewall lässt DNS vom DC nicht durch. Get-DnsServerForwarder&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
;4. dcdiag meldet Fehler beim Test „Advertising“ oder bei der Zeit&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
Der Zeitdienst ist nicht als zuverlässige Quelle eingetragen. w32tm /config … /reliable:yes /update, dann Restart-Service w32time&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Vertiefung=&lt;br /&gt;
*[[RSAT]] · [[RSAT Windows11]] · [[Kerberos Befehle Windows]]&lt;br /&gt;
*https://learn.microsoft.com/de-de/powershell/module/addsdeployment/install-addsforest&lt;br /&gt;
&lt;br /&gt;
=Weiter=&lt;br /&gt;
*[[Windows-Client in der Domäne]]&lt;br /&gt;
*[[Linux - Samba|Zurück zur Kursseite]]&lt;/div&gt;</summary>
		<author><name>Thomas.will</name></author>
	</entry>
</feed>