Um z. B. für Berechtigungen eine neue Gruppe „GruppeB“ mit den selben Mitgliedern wie „GruppeA“ zu erstellen, kann folgendes Skript verwendet werden:

Definieren Sie den Namen der Quell- und Zielgruppe

$sourceGroupName = „GruppeA“
$targetGroupName = „GruppeB“
# in welche OU soll die neue Gruppe erstellt werden?
$ZielOU = „OU=Groups,DC=example,DC=com“

Abrufen der Mitglieder der Quellgruppe

$sourceGroupMembers = Get-ADGroupMember -Identity $sourceGroupName

Überprüfen, ob die Zielgruppe existiert. Wenn nicht, erstellen Sie sie.

if (-not (Get-ADGroup -Filter {Name -eq $targetGroupName})) {
New-ADGroup -Name $targetGroupName -GroupScope Global -Path $ZielOU -Description „Beschreibung der Zielgruppe“
}

Hinzufügen der Mitglieder zur Zielgruppe

foreach ($member in $sourceGroupMembers) {
Add-ADGroupMember -Identity $targetGroupName -Members $member
}

Write-Output „Mitglieder der Gruppe $($sourceGroupName) wurden erfolgreich zur Gruppe $($targetGroupName) hinzugefügt.“

Die Reservierung aller Scopes exportieren:

$dhcpserver = "QuellServer.QuellDomain.com"
Get-DhcpServerv4Scope -ComputerName $dhcpserver | Get-DhcpServerv4Reservation -ComputerName $dhcpserver Export-Csv "pathtofile\ScopeReservation.csv" -Encoding UTF8 -Force -NoTypeInformation -Delimiter ";"

Als nächstes importieren wir die Reservierungen (ACHTUNG!: nicht mit Import, sondern mit Add)

$dhcpserver = "ZielServer.ZielDomain.com"
$scopes = Import-Csv -Path "pathtofile\ScopeReservation.csv" -Delimiter ";"
foreach ($scope in $scopes)
{
    $name = $scope.name
    $description = $scope.description
Write-Output "Creating scope  $name"

Add-DhcpServerv4Reservation -ComputerName $dhcpserver -ScopeId $scope.ScopeId -IPAddress $scope.IPAddress -Description $scope.description -Name $scope.name -ClientId $scope.clientid -Type $scope.Type #-WhatIf
}
Getagged mit: 

Aufgrund eines Firmenkaufs, mussten die DHCP Scopes eines Windows DHCP Server auf einen bereits bestehenden transferiert werden. Da die Standard Backup/Import Funktion die bestehende Konfiguration überschreiben würde, habe ich hierzu PowerShell genutzt:

Export der bestehenden Konfiguration:

$dhcpserver = "QuellServer.QuellDomain.com"
Get-DhcpServerv4Scope -ComputerName $dhcpserver | Export-Csv "pathtofile\dhcpscopes.csv" -Encoding UTF8 -Force -NoTypeInformation

Import der Konfiguraton auf den Quellserver:

$dhcpserver = "ZielServer@ZielDomain.com"
$scopes = Import-Csv -Path "pathtofile\dhcpscopes.csv" -Delimiter ";"
foreach ($scope in $scopes)
{
    $name = $scope.name
    $description = $scope.description
Write-Output "Creating scope  $name"
Add-DhcpServerv4Scope -ComputerName $dhcpserver -Name "$name" -Description "$description" -StartRange $scope.startrange -EndRange $scope.endrange -SubnetMask $scope.subnetmask -State Active
}

Wie die ScopeOptions und Reservierungen übernommen werden zeige ich in einem weiteren Beitrag.
Getagged mit: 

Abgelaufene Computer Zertifikate finden

On 20. Dezember 2021, in PowerShell, Von

Mit diesem PowerShell Befehl werden abgelaufene Computer Zertifikate aufgelistet:

Continue reading »

Getagged mit: 

 $drive = Get-BitLockerVolume | ?{$_.KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘}} | select -f 1

$key = $drive | select -exp KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘} | select -f 1

Backup-BitLockerKeyProtector $drive.MountPoint $key.KeyProtectorId

Write-Host „Backing up drive $drive, key $($key.KeyProtectorId), password $($key.RecoveryPassword)“ 

Getagged mit: 

Mit Hilfe dieses PowerShell Skripts ist es möglich temporäre Profile sowohl im Dateiverzeichnis als auch in der Registry zu löschen.

Continue reading »

Getagged mit: 

Dieser Beitrag ist hauptsächlich für mich selbst als Gedächtnisstütze gedacht. 🙂

Wenn man ein PowerShell Script über den TaskPlaner ( = Aufgabenplanung ) ausführen möchte, darf man nicht vergessen das Skript wie folgt zu erstellen: (Screenshots folgen demnächst)

Als Programmpfad gibt man die powershell.exe und nicht den Skriptpfad an. Anschließend wählt man als zusätzliche Argumente

-command „Pfad zur Skriptdatei.PS1“ aus.

Nun funktioniert auch das Powershell Skript


Getagged mit: 

Wenn man möchte, dass eine Gruppe in online oder On Premises Exchange nur von einem bestimmten Personenkreis genutzt werden darf z. B. „Geschäftsleitung-Alle“ dann gibt es hierfür zwei mögliche Felder:

Continue reading »

Getagged mit: 

Ein Wechsel des Connection Brokers ist über folgenden Befehl möglich:

Set-RDActiveManagementServer -ManagementServer „Rdcb.Contoso.com“

Dieser Befehl kann sehr nützlich sein, wenn man z. B. einen automatisierten Neustart bzw. eine automatisierte Wartung durchführen möchte. ( z. B. Windows Update Installation etc. )