Korzystanie z Active Directory dla PowerShell do administrowania domeną

Moduł Active Directory dla Windows PowerShell Dziś jest to jedno z głównych narzędzi do administrowania domeną, zarządzania obiektami w Active Directory i otrzymywania różnych informacji o komputerach, użytkownikach i grupach. Każdy administrator systemu Windows powinien móc korzystać nie tylko z graficznych przystawek AD (najczęściej jest to ADUC - użytkownicy i komputer usługi Active Directory), ale także polecenia cmdlet tego modułu PowerShell do wykonywania codziennych zadań administracyjnych usługi Active Directory. W tym artykule przyjrzymy się, jak zainstalować moduł RSAT-AD-PowerShell, jego podstawowe funkcje i popularne polecenia cmdlet, które powinny być przydatne podczas zarządzania i pracy z AD.

Treść

  • Zainstaluj Active Directory dla PowerShell na Windows Server
  • Zainstaluj RSAT-AD-PowerShell na Windows 10
  • Polecenia cmdlet modułu AD dla programu PowerShell
  • Korzystanie z modułu RSAT-AD-PowerShell do administracji AD

Zainstaluj Active Directory dla PowerShell na Windows Server

Moduł Active Directory dla Windows PowerShell jest już zintegrowany z systemami operacyjnymi Windows Server (począwszy od Windows Server 2008 R2), ale domyślnie nie jest aktywowany.

W Windows Server 2016 możesz włączyć moduł AD dla PoSh w Windows Server 2016 z panelu sterowania Menedżer serwera (Dodaj role i funkcje -> Funkcje -> Narzędzia administracji zdalnej serwera -> Narzędzia administracji roli -> Narzędzia AD DS i AD LDS -> Moduł Active Directory dla Windows PowerShell).

Możesz także zainstalować moduł z wiersza poleceń, używając polecenia PowerShell:

Install-WindowsFeature -Name "RSAT-AD-PowerShell" -IncludeAllSubFeature

Możesz zainstalować moduł RSAT-AD-PowerShell nie tylko na kontrolerze domeny. Wykona to dowolny serwer członkowski, a nawet stacja robocza. Na kontrolerach domeny AD moduł jest instalowany automatycznie po wdrożeniu roli ADDS (podczas uaktualniania serwera do wersji DC).

Moduł współpracuje z usługą AD za pośrednictwem usług sieciowych Active Directory, które muszą być zainstalowane na kontrolerze domeny (interakcja na porcie TCP 9389).

Zainstaluj RSAT-AD-PowerShell na Windows 10

Możesz zainstalować moduł RSAT-AD-PowerShell nie tylko na serwerach, ale także na stacjach roboczych. Moduł ten znajduje się w pakiecie. RSAT (Narzędzia administracji zdalnej serwera), które można pobrać i zainstalować ręcznie w Windows 7, Windows 8.1. Po zainstalowaniu RSAT moduł AD dla PowerShell jest instalowany z panelu sterowania (Panel sterowania -> Programy i funkcje -> Włącz lub wyłącz funkcje systemu Windows -> Narzędzia administracji zdalnej serwera -> Narzędzia administracji roli -> Narzędzia AD DS i AD LDS).

W Windows 10, 1809 i nowszych pakiet RSAT jest już wbudowany w zestaw dystrybucyjny (np. Funkcje na żądanie), więc możesz użyć polecenia, aby zainstalować moduł:

Add-WindowsCapability -online -Name „Rsat.ActiveDirectory.DS-LDS.Tools ~~~~ 0.0.1.0”

Polecenia cmdlet modułu AD dla programu PowerShell

Moduł Active Directory dla Windows PowerShell ma wiele poleceń cmdlet do interakcji z AD. W każdej nowej wersji RSAT ich liczba rośnie (147 cmdletów dla AD jest dostępnych w Windows Server 2016).

Przed użyciem poleceń cmdlet modułu należy zaimportować go do sesji PowerShell (w Windows Server 2012 R2 / Windows 8.1 moduł jest importowany automatycznie):

Moduł importu ActiveDirectory

Jeśli moduł nie jest zainstalowany na twoim komputerze, możesz go zaimportować z kontrolera domeny (potrzebujesz uprawnień administratora domeny) lub z innego komputera:

$ rs = New-PSSession -ComputerName DC_or_Comp_with_ADPosh
Moduł importu -Sesja $ rs -Nazwa ActiveDirectory

Możesz wyświetlić pełną listę dostępnych poleceń cmdlet, używając polecenia:

Get-Command -moduł aktywowany katalog

Całkowita liczba poleceń w module:

Get-Command -module activedirectory | miara-obiektu

Większość poleceń cmdlet modułu RSAT-AD-PowerShell zaczyna się od przedrostka Get-, Set- lub New-.

  • Polecenia cmdlet klasy Zdobądź- używany do uzyskiwania różnych informacji z AD (Get-ADUser - właściwości użytkownika, Get-ADComputer - ustawienia komputera, Get-ADGroupMember - członkostwo w grupie itp.). Nie trzeba być administratorem domeny, aby je wykonać; każdy użytkownik domeny może uruchamiać skrypty PowerShell, aby uzyskać wartości większości atrybutów obiektów AD (oprócz chronionych, jak w przykładzie z LAPS).
  • Polecenia cmdlet klasy Set- służą do zmiany parametrów obiektów w AD, na przykład można zmienić właściwości użytkownika (Set-ADUser), komputera (Set-ADComputer), dodać użytkownika do grupy itp. Aby wykonać te operacje, twoje konto musi mieć prawa do obiektów, które chcesz zmienić (zobacz artykuł Delegowanie uprawnień administratora w AD).
  • Drużyny zaczynające się od Nowy- pozwalają tworzyć obiekty AD (utwórz użytkownika - Nowy ADUser, grupa - Nowy ADGroup).
  • Polecenia cmdlet Usuń- usuń obiekty AD.

Możesz uzyskać pomoc dotyczącą dowolnego polecenia cmdlet:

uzyskać pomoc Nowy komputer AD

Przykłady używania poleceń cmdlet usługi Active Directory można zapisać w następujący sposób:

(get-help Set-ADUser). przykłady

W programie PowerShell ISE można używać podpowiedzi podczas wpisywania parametrów polecenia cmdlet modułu.

Korzystanie z modułu RSAT-AD-PowerShell do administracji AD

Spójrzmy na kilka typowych zadań administracyjnych, które można wykonać za pomocą poleceń modułu AD dla PowerShell..

Przydatne przykłady użycia różnych poleceń cmdlet modułu AD dla programu PowerShell są już opisane na stronie. Postępuj zgodnie z linkami w tekście, aby uzyskać szczegółowe instrukcje..

New-ADUser: Tworzenie użytkownika w AD

Za pomocą polecenia cmdlet New-ADUser można utworzyć nowego użytkownika w usłudze AD. Możesz utworzyć użytkownika za pomocą polecenia:

Nowy ADUser -Nazwa „Andrey Petrov” -GivenName „Andrey”-Nazwisko „Petrov” -SamAccountName „apetrov” -UserPrincipalName ”[email protected]" -Path "OU = Użytkownicy, OU = Ufa, DC = winitpro, DC = loc "-AccountPassword (Read-Host -AsSecureString" Input Password ") -Enabled $ true

Aby uzyskać więcej informacji o zespole New-ADUser (w tym przykład masowego tworzenia kont w domenie), zobacz artykuł .

Get-ADComputer: Uzyskaj informacje o komputerach domeny

Aby wyświetlić informacje o komputerach w określonej jednostce organizacyjnej (nazwa komputera i data ostatniej rejestracji w sieci), użyj polecenia cmdlet Get-ADComputer:

Get-ADComputer -SearchBase 'OU = Rosja, DC = winitpro, DC = ru' -Filter * -Properties * | Nazwa FT, LastLogonDate -Autosize

Add-AdGroupMember: Dodaj użytkownika do grupy AD

Aby dodać użytkowników do istniejącej grupy zabezpieczeń w domenie AD, uruchom polecenie:

Add-AdGroupMember -Identity MskSales -Members apterov, divanov

Wyświetl użytkowników w grupie AD i prześlij go do pliku:

Get-ADGroupMember MskSales -recursive | ft samaccountname | Plik wyjściowy c: \ script \ export_users.csv

Dowiedz się więcej o zarządzaniu grupami AD z PowerShell..

Set-ADAccountPassword: Zresetuj hasło użytkownika w AD

Aby zresetować hasło użytkownika w AD z PowerShell, wykonaj:

Set-ADAccountPassword apterov -Reset -NewPassword (ConvertTo-SecureString -AsPlainText „P @ ssw0rd1” -Force -Verbose) -PassThru

Blokada / odblokowanie użytkownika

Wyłącz konto:

Wyłącz-ADAccount apterov

Włącz konto:

Włącz-ADAccount apterov

Odblokuj konto po zablokowaniu zasad haseł:

Odblokuj-ADAccount apterov

Search-ADAccount: Wyszukaj nieaktywne komputery w domenie

Aby znaleźć i zablokować wszystkie komputery w domenie, które nie były zarejestrowane w sieci przez ponad 100 dni, użyj polecenia cmdlet Search-ADAccount:

$ timespan = New-Timespan -Days 100
Search-ADAccount -AccountInactive -ComputersOnly -TimeSpan $ przedział czasu | Wyłącz-ADAccount

New-ADOrganizationalUnit: Utwórz strukturę OU w AD

Aby szybko utworzyć typową strukturę jednostki organizacyjnej w AD, możesz użyć skryptu PowerShell. Załóżmy, że musimy utworzyć kilka jednostek organizacyjnych z miastami, w których mają zostać utworzone standardowe kontenery. Ręczne utworzenie takiej struktury za pomocą konsoli graficznej ADUC zajmuje dość dużo czasu, a moduł AD dla PowerShell pozwala rozwiązać ten problem w kilka sekund (nie licząc czasu na napisanie skryptu):

$ fqdn = Get-ADDomain
$ fulldomain = $ fqdn.DNSRoot
$ domain = $ fulldomain.split („.”)
$ Dom = $ domena [0]
$ Ext = $ domena [1]
$ Sites = („SPB”, „MSK”, „Sochi”)
$ Services = („Użytkownicy”, „Administratorzy”, „Komputery”, „Serwery”, „Kontakty”)
$ FirstOU = „Rosja”
Nowy-ADOrganizationalUnit -Name $ FirstOU -Description $ FirstOU -Path "DC = $ Dom, DC = $ EXT" -ProtectedFromAccidentalDeletion $ false
foreach ($ S w $ Witryny)

Nowy-ADOrganizationalUnit -Name $ S -Opis „$ S” -Path „OU = $ FirstOU, DC = $ Dom, DC = $ EXT” -ProtectedFromAccidentalDeletion $ false
foreach ($ Serv in $ Services)

Nowy-ADOrganizationalUnit -Name $ Serv -Description „$ S $ Serv” -Path "OU = $ S, OU = $ FirstOU, DC = $ Dom, DC = $ EXT" -ProtectedFromAccidentalDeletion $ false


Po wykonaniu skryptu otrzymaliśmy taką strukturę OU w AD.

Aby przenosić obiekty między kontenerami AD, możesz użyć polecenia cmdlet Move-ADObject:

$ TargetOU = "OU = Buhgalteriya, OU = Komputery, DC = corp, DC = winitpro, DC = ru"
Get-ADComputer -Filter „Nazwa” „BuhPC *” ” Move-ADObject -TargetPath $ TargetOU

Get-ADReplicationFailure: Weryfikacja replikacji w AD

Za pomocą polecenia cmdlet Get-ADReplicationFailure możesz sprawdzić status replikacji między kontrolerami domeny AD:

Get-ADReplicationFailure -Target DC01, DC02

Pobierz informacje o wszystkich kontrolerach domeny w domenie za pomocą polecenia cmdlet Get-AdDomainController:

Get-ADDomainController -filter * | wybierz nazwę hosta, adres IPv4, IsGlobalCatalog, IsReadOnly, OperatingSystem | format-table -auto

W tym artykule przeanalizowaliśmy podstawowe funkcje i funkcje korzystania z modułu AD do PowerShell do administrowania AD. Mam nadzieję, że ten artykuł zachęca Cię do dalszego odkrywania możliwości tego modułu i automatyzacji większości zadań zarządzania AD..