Magic Quadrant™ für Privileged Access Management 2025: Netwrix zum vierten Jahr in Folge anerkannt. Laden Sie den Bericht herunter.

Plattform
Ressourcen­zentrumBlog
So erstellen, löschen, benennen um, deaktivieren und fügen Sie Computer in AD mithilfe von PowerShell hinzu

So erstellen, löschen, benennen um, deaktivieren und fügen Sie Computer in AD mithilfe von PowerShell hinzu

Jul 10, 2018

Bevor ein Benutzer sich an einem Computer anmelden und auf Netzwerk- und Domänen-basierte Ressourcen zugreifen kann, muss dieser Computer Mitglied der Active Directory-Umgebung sein. In diesem Leitfaden erfahren Sie, wie Sie tägliche Aufgaben im Zusammenhang mit Computerkonten automatisieren können, wie zum Beispiel das einfache Erstellen, Umbenennen und Entfernen von Konten.

Insgesamt werden Sie lernen, wie Sie PowerShell verwenden, um die folgenden Aufgaben im Bereich Computerkontenverwaltung durchzuführen:

  • Einen Computer zu einer Domäne hinzufügen
    • Mehrere Computer einer Domäne hinzufügen
  • Einen Computer mit PowerShell aus einer Domäne entfernen
  • Erstellen Sie ein Computerobjekt in AD
    • Computerkonten aus einer CSV-Datei erstellen
  • Einen Computer aus AD löschen
    • Computerkonten mithilfe einer Liste löschen
    • Entfernen Sie veraltete Computerkonten in Active Directory mit PowerShell
  • Einen Computer umbenennen
    • Einen Computer umbenennen und ihn zu einer Domain hinzufügen
  • Deaktivieren Sie ein AD-Computerkonto
    • Computerkonten mithilfe einer Liste deaktivieren
  • Ein AD-Computerkonto zurücksetzen

PowerShell ISE ist das beste Werkzeug, um mit PowerShell-Skripten zu arbeiten. Starten Sie das PowerShell ISE-Tool mit Administratorrechten, indem Sie „Windows+R“ drücken und „runas /profile /user:Administrator PowerShell_ISE“ im Ausführen-Fenster eingeben. (Alternativ können Sie mit der rechten Maustaste auf das PowerShell ISE-Symbol klicken und die Option „Als Administrator ausführen“ wählen.) Geben Sie das Passwort des Administrators ein, wenn Sie dazu aufgefordert werden.

Bevor Sie mit AD und seinen Objekten arbeiten können, müssen Sie das Active Directory-Modul für Windows PowerShell importieren. In Microsoft Windows Server 2008 R2 müssen Sie dieses Modul aktivieren, indem Sie den folgenden Befehl ausführen:

Import-Module ActiveDirectory

In Microsoft Windows Server 2012 und späteren Versionen ist dieses Modul standardmäßig aktiviert.

Einen Computer zu einer Domäne hinzufügen

Die häufigste Aufgabe ist das Verbinden eines Computers mit einem Domänencontroller. Um einen PC mit einem Active Directory-Domäne zu verbinden, führen Sie das folgende PowerShell-Skript lokal aus:

      $dc = "ENTERPRISE" # Specify the domain to join.
$pw = "Password123" | ConvertTo-SecureString -asPlainText –Force # Specify the password for the domain admin.
$usr = "$dcT.Simpson" # Specify the domain admin account.
$creds = New-Object System.Management.Automation.PSCredential($usr,$pw)
Add-Computer -DomainName $dc -Credential $creds -restart -force -verbose # Note that the computer will be restarted automatically.
      

Der Computer wird neu starten und dann der Domäne beitreten; er wird zum Standardcontainer hinzugefügt.

Um einen Computer remote an einen DC anzubinden, müssen Sie das Skript folgendermaßen erweitern:

      $dc = "ENTERPRISE"
$pw = "Password123" | ConvertTo-SecureString -asPlainText -Force
$usr = "$dcT.Simpson"
$pc = "R07GF" # Specify the computer that should be joined to the domain.
$creds = New-Object System.Management.Automation.PSCredential($usr,$pw)
Add-Computer -ComputerName $pc -LocalCredential $pcadmin -DomainName $dc -Credential $creds -Verbose -Restart -Force
      

Die Variable $pc und der Parameter –LocalCredential werden verwendet, um den Computer im Domain zu authentifizieren. Beachten Sie, dass Sie, um diese Methode zu verwenden, die Firewall auf dem lokalen Computer deaktivieren müssen.

Mehrere Computer einer Domäne hinzufügen

Sie können mehr als einen Computer zur Domäne hinzufügen, indem Sie sie entweder in der Befehlszeile als kommagetrennte Liste angeben oder ihre Namen aus einer Textdatei importieren.

So geben Sie die Computer in einer kommagetrennten Liste an:

      $dc = "ENTERPRISE"
$pw = "Password123" | ConvertTo-SecureString -asPlainText -Force
$usr = "$dcT.Simpson"
$pc = "WKS034, WKS052, WKS057" # Specify the computers that should be joined to the domain.
$creds = New-Object System.Management.Automation.PSCredential($usr$pw)
Add-Computer -ComputerName $pc -LocalCredential $pcadmin -DomainName $dc -Credential $creds -Restart -Force
      

Und hier erfahren Sie, wie Sie eine Textdatei mit der Liste der Computer verwenden, die verbunden werden sollten:

      $dc = "ENTERPRISE"
$pw = "Password123" | ConvertTo-SecureString -asPlainText -Force
$usr = "$dcT.Simpson"
$pc = Get-Content -Path C:Computers.txt # Specify the path to the computers list.
$creds = New-Object System.Management.Automation.PSCredential($usr,$pw)
Add-Computer -ComputerName $pc -LocalCredential $pcadmin -DomainName $dc -Credential $creds -Restart -Force

      

Einen Computer mit PowerShell aus einer Domäne entfernen

Um einen Computer aus einer Domäne entfernt zu entfernen, verwenden Sie das Remove-Computer Cmdlet. Hier entfernen wir einen Computer aus einer Domäne, daher werden keine lokalen Anmeldeinformationen benötigt und wir können den Parameter ?LocalCredential überspringen:

      $dc = "ENTERPRISE"
$pw = "Password123" | ConvertTo-SecureString -asPlainText -Force
$usr = "$dcT.Simpson"
$pc = "R07GF"
$creds = New-Object System.Management.Automation.PSCredential($usr,$pw)
Remove-Computer -ComputerName $pc -Credential $creds –Verbose –Restart –Force
      
Image

Um mehrere Computer mit einer Liste in einer TXT-Datei zu entfernen, verwenden Sie das obige Skript zum Verbinden von Computern mit einem DC, indem Sie das Cmdlet Add-Computer durch Remove-Computer ersetzen. Beachten Sie, dass Sie immer noch Domänenadministrator-Anmeldeinformationen benötigen, um diesen Vorgang des Verlassens zu vervollständigen.

Erstellen Sie ein Computerobjekt in AD

Um ein Computerobjekt zu erstellen, verwenden Sie das Cmdlet New-ADComputer. Führen Sie beispielsweise die folgenden Cmdlet-Parameter aus, um ein Computerobjekt mit „WKS932“ als Namen und dem Standard-LDAP-Pfadwert zu erstellen:

      New-ADComputer –Name “WKS932” –SamAccountName “WKS932”
      

Computerkonten aus einer CSV-Datei erstellen

Wenn Sie eine Liste von Computern haben, die in das Active Directory importiert werden sollen, speichern Sie die Liste in einer CSV-Datei mit der Überschrift „computer“ und der Liste der Computernamen in der darunterliegenden Spalte. Führen Sie das folgende PowerShell-Skript auf Ihrem Domain-Controller aus, um Computer aus der CSV-Datei hinzuzufügen, und stellen Sie sicher, dass die Variablen „Path“ und „File“ korrekt gesetzt sind:

      $File="C:scriptsComputers.csv" # Specify the import CSV position.
$Path="OU=Devices,DC=enterprise,DC=com" # Specify the path to the OU.
Import-Csv -Path $File | ForEach-Object { New-ADComputer -Name $_.Computer -Path $Path -Enabled $True}
      

Einen Computer aus AD löschen

Um ein Computerkonto aus AD zu löschen, verwenden Sie das Cmdlet Remove-ADObject. Der Parameter -Identity gibt an, welcher Active Directory-Computer entfernt werden soll. Sie können einen Computer über seinen Distinguished Name, GUID, Sicherheitskennung (SID) oder Security Accounts Manager (SAM)-Kontonamen spezifizieren.

      Remove-ADObject -Identity "WKS932"
      

Sie werden aufgefordert, das Löschen zu bestätigen.

Computerkonten mit einer Liste löschen

Wenn Sie eine Textdatei mit einer Liste alter Computer haben, können Sie die Aufgabe, sie zu entfernen, mit PowerShell vereinfachen. Das folgende Skript wird die Computernamen aus einer TXT-Datei lesen und die entsprechenden Konten über eine Befehlskette oder Pipeline löschen:

      Get-Content C:scriptscomputersfordeletion.txt | % { Get-ADComputer -Filter { Name -eq $_ } } | Remove-ADObject -Recursive
      

Fordern Sie eine kostenlose Testversion von Netwrix Directory Manager für eine bessere Gruppenverwaltung an

Entfernen Sie veraltete Computerkonten aus Active Directory mit PowerShell

Inaktive Konten in Active Directory können kompromittiert werden, was zu Sicherheitsvorfällen führen kann, daher ist es entscheidend, sie im Auge zu behalten. Dieses PowerShell-Skript wird Active Directory abfragen und alle Computer zurückgeben, bei denen seit den letzten 30 Tagen keine Anmeldung erfolgt ist; Sie können diesen Standardwert im Skript leicht ändern. Es wird auch diese Konten entfernen, um Ihr AD sauber zu halten.

      $stale = (Get-Date).AddDays(-30) # means 30 days since last logon, can be changed to any number.

Get-ADComputer -Property Name,lastLogonDate -Filter {lastLogonDate -lt $stale} | FT Name,lastLogonDate

Get-ADComputer -Property Name,lastLogonDate -Filter {lastLogonDate -lt $stale} | Remove-ADComputer
      
Image

Es gibt einen Computer, FS1, auf den seit mehr als 30 Tagen nicht mehr zugegriffen wurde. Das System wird vor dem Löschen aus der Domäne um Bestätigung bitten:

Image

Wenn Sie inaktive Computerkonten deaktivieren statt löschen möchten, ersetzen Sie das Cmdlet Remove-ADComputer durch Set-ADComputer und den Parameter sowie Wert -Enabled $false.

Einen Computer umbenennen

Um den Namen eines Computers zu ändern, verwenden Sie das Cmdlet Rename-Computer. Beachten Sie, dass der Computer online sein und mit Active Directory verbunden sein muss.

      Rename-Computer –ComputerName "FS1" -NewName "FS2"
      

Wenn Sie dieses Skript lokal ausführen möchten, wird es so aussehen:

      Rename-Computer -NewName "newname" -DomainCredential "DomainAdministrator"

      

Benennen Sie einen Computer um und fügen Sie ihn zu einem Domain hinzu

Sie können das Umbenennungsskript verbessern, indem Sie den Computer gleichzeitig in die Domäne aufnehmen und ihn in die angegebene OU einordnen. Das Skript sollte auf der Zielmaschine ausgeführt werden, nicht auf dem Domain-Controller.

      $NewComputerName = "Server3" # Specify the new computer name.

$DC = "contoso.com" # Specify the domain to join.

$Path = "OU=TestOU,DC=contoso,DC=com" # Specify the path to the OU where to put the computer account in the domain.
      
      Add-Computer -DomainName $DC -OUPath $Path -NewName $NewComputerName –Restart –Force
      

Das Skript fordert die Anmeldeinformationen eines Kontos an, das Berechtigungen zum Hinzufügen von Computern zur Domäne hat, und dann wird der Computer umbenannt, neu gestartet und der Domäne beigetreten.

Deaktivieren Sie ein AD-Computerkonto

Verwenden Sie das Cmdlet Disable-ADAccount , um Benutzer-, Computer- und Dienstkonten in Active Directory zu deaktivieren. Wenn Sie einen Computernamen angeben, denken Sie daran, am Ende des Namens ein Dollarzeichen ($) anzuhängen; andernfalls erhalten Sie nach der Skriptausführung einen Fehler.

      Disable-ADAccount -Identity fs1$

      

Deaktivieren Sie Computerkonten mithilfe einer Liste

Sie können auch Computerkonten in Massen mithilfe einer Liste in einer Textdatei deaktivieren:

      $Pclist = Get-Content C:scriptsComputer.txt # Specify the path to the computers list.
Foreach($pc in $Pclist)
{
Disable-ADAccount -Identity "$pc"
Get-ADComputer -Identity "$pc" | Move-ADObject -TargetPath “OU=Disabled Computers,DC=enterprise,DC=com”
}
      

Ein AD-Computerkonto zurücksetzen

Wie ein Benutzerkonto interagiert auch ein Computerkonto mit Active Directory mithilfe eines Passworts. Bei Computerkonten wird jedoch standardmäßig alle 30 Tage eine Passwortänderung eingeleitet und das Passwort ist von der Domänen-password policy ausgenommen. Passwortänderungen werden vom Client (Computer), nicht von AD, gesteuert.

Computerausweise sind normalerweise dem Benutzer unbekannt, da sie vom Computer zufällig festgelegt werden. Aber Sie können Ihr eigenes Passwort setzen; hier ist ein PowerShell-Skript dafür:

      $pc = read-host –Prompt “Input computer name to reset“ # Specify the computer name.
$pw = read-host –Prompt “Input random characters for temp password“ –AsSecureString # Specify the password.
Get-ADComputer $pc | Set-ADAccountPassword –NewPassword:$pw -Reset:$true
      

Fazit

Nun haben Sie gelernt, wie Sie Computerkonten in Active Directory mit PowerShell verwalten können. Sie können all diese Skripte selbst erweitern, um sie an Ihre Zwecke anzupassen.

Denken Sie daran, dass es entscheidend ist, alle Änderungen an Computerkonten genau zu verfolgen, damit Sie unerwünschte Modifikationen schnell erkennen und angemessen reagieren können.

Best Practices für das Active Directory Group Management

Best Practices für das Management von Active Directory-Gruppen

Teilen auf

Erfahren Sie mehr

Über den Autor

Asset Not Found

Jeff Melnick

Direktor für Systemtechnik

Jeff ist ehemaliger Director of Global Solutions Engineering bei Netwrix. Er ist ein langjähriger Netwrix-Blogger, Redner und Präsentator. Im Netwrix-Blog teilt Jeff Lifehacks, Tipps und Tricks, die Ihre Systemadministrationserfahrung erheblich verbessern können.