csoportházirendes egyszerű példa

Sziasztok!

Tudnátok nekem egy egyszerű powershelles példaprogramot megosztani csoportházirendre?

Hozzászólások

Mármint hogy kell buzergálni csoportházirendet PS-ből, vagy hogy kell csoportházirenddel PS scriptet indítani?

Van itt egy egyszerű kód, ami nem fut le:

 

$gpo = get-gpoNamefajitas

#Az új megosztott mappa neve és elérési útja

$foldername =„MegosztottMappa

$folderPath=„ \\Szerver\Megosztas

#Új megosztott mappa létrehozása a csoportházirendben

New-GPOFilesystemPath –GPO $gpoName $foldernamepath $folderpath

--------Elvileg az első sor  hozza létre a fajitas nevű gpo-t?  

Nem ertek powershellhez, de a CGPT igen:

Hi, could you provide an example for manipulating GPO settings in powershell?

ChatGPT

Certainly! Here's an example of how you can manipulate Group Policy Object (GPO) settings using PowerShell:

powershell


 
# Import the Group Policy module
Import-Module GroupPolicy

# Get the GPO object by name
$gpoName = "Example GPO"
$gpo = Get-GPO -Name $gpoName

# Retrieve the GPO's settings
$gpoSettings = Get-GPOReport -Name $gpoName -ReportType XML

# Manipulate the GPO settings (Example: Enable Windows Firewall)
$gpoSettings = $gpoSettings -replace '<Firewall_Enable>0</Firewall_Enable>', '<Firewall_Enable>1</Firewall_Enable>'

# Convert the modified GPO settings back to XML format
$modifiedGpoSettings = [xml]$gpoSettings

# Save the modified GPO settings
$modifiedGpoSettings.Save("$env:TEMP\ModifiedGpoSettings.xml")

# Import the modified GPO settings into the GPO object
Import-GPO -BackupId $modifiedGpoSettings.GPO.BackupId -TargetName $gpo.DisplayName

# Link the GPO to an Organizational Unit (OU)
$targetOU = "OU=ExampleOU,DC=contoso,DC=com"
New-GPLink -Name $gpoName -Target $targetOU

# Apply the GPO to the OU immediately
Invoke-GPUpdate -Force -Computer $targetOU

 

In this example, we start by importing the Group Policy module using the Import-Module cmdlet. Then, we retrieve the GPO object by its name using the Get-GPO cmdlet.

Next, we use the Get-GPOReport cmdlet to retrieve the GPO's settings in XML format. We can manipulate the settings as needed using various techniques, such as regular expressions or XML manipulation.

In this example, we modify a specific setting related to enabling the Windows Firewall by replacing the corresponding XML element.

After modifying the GPO settings, we convert them back to XML format using [xml], and then save the modified settings to a temporary file.

To import the modified GPO settings into the GPO object, we use the Import-GPO cmdlet with the backup ID obtained from the modified settings.

Finally, we link the GPO to an Organizational Unit (OU) using the New-GPLink cmdlet, specifying the GPO name and the target OU. We then force an immediate Group Policy update on the target OU using Invoke-GPUpdate to apply the changes.

Please note that manipulating GPO settings can have significant impact on your system's configuration, so exercise caution when making changes. Make sure to thoroughly test and validate the changes in a non-production environment before applying them in a production environment.

Egyszerubb dolgokat meg tudsz vele iratni.

A strange game. The only winning move is not to play. How about a nice game of chess?

Szerkesztve: 2023. 06. 01., cs – 17:14

Oké, hogy segítsek is valamit:

1) $VALAMIVÁLTOZÓNÉV = get-gpo -name fajitas

ez azért kell, hogy a $VALAMIVÁLTOZÓNÉVBE el legyen tárolva a teljes GPO object, amin utána a változtatásokat a következő lépések el tudják végezni. Ez ilyen Powershell-es faszság, hogy először kell egy már létező object, azt a Get- parancs csak megnyitja (nem létrehozza, csak meglevőket tud megnyitni, ha nem létezik ilyen akkor meg hibát dob) beleteszi egy $VALAMI valtozóba, és ezen a $VALAMI változón végzel elemi szerkesztési lépéseket további ezt követő parancsokkal.

Ehhez viszont az kell, hogy legyen egy létező GPO-d, ami "fajitas" néven MÁR LÉTEZIK, hogy a Get-gpo ne hibával álljon meg.

Azaz nulladik lépésben létre kell hoznod egy új GPO-t, aminek a "fajitas" nevet fogod adni létrehozáskor.

Új GPO-t így hozol létre: New-GPO -name "fajitas"

irodalom: https://learn.microsoft.com/en-us/powershell/module/grouppolicy/new-gpo…

Ha már létrehoztad, és létezik, a Get-Gpo meg fogja tudni nyitni, és a tartalmát vele fogja tudni tenni a VALAMIVÁLTOZÓNÉV-be, amivel utána tudsz tovább dolgozni a fentebbi példák alapján.

 

New-GPOFilesystemPath –GPO $gpo –Name $foldername –path $folderpath

--> ez azért ad vissza hibát, mert a $GPO változóban nem lesz semmi, mert legelső parancs: $GPO = Get-Gpo -name fajitas is hibára futott, mert nem létezik még olyan GPO aminek fajitas a neve, azt először létre kellene hozni.

 

De az hogy ez a GPO adott felhasználókra vagy számítógépekre valóban érvényre is jusson, az megint egy komplikált témakör, ha ezt a GPO-t majd használni is szeretnéd valamire, nem csak egy példaparancsként létrehozást gyakorolni.

Szerkesztve: 2023. 06. 02., p – 09:01

Szia!

Ezzel a parancssal létrehoztam az új gpo-t:

import-module grouppolicy

new-gpo -name "fajitas4"

new-gplink -name "fajitas4" -target DC=peldasuli, DC=local"

 

Továbbra is hibát ír ki.

new-gpofilesystempath nevű powershell parancs nem létezik

Az egész 2.ps1 szkript tartalmat be kellene ide másolnod SZÖVEGKÉNT, hogy legyen fogalmunk mi a csudát próbálsz lefuttatni. Ne screenshotot töltögess fel, hanem az olvasható szöveges forrást kopizd be ide, és a hibaüzenetet is nyers olvasható szövegként ahogy kaptad. Képet nem fog nyitogatni senki hogy kihámozza belőle a tartalmat.

Hogy tudom virtualboxból idecopizni?

A bejáratnál várják a kikepzo kollégától elnézést kérni kívánókat :D

Hogy tudom virtualboxból idecopizni?

 

Egyébként elengedem ezt a megosztásos dolgot. Igazából nekem mindegy lenne csak tudjak powershellben valami feladatot megoldani. Ilyenekre gondolok:

-registry letiltása

-vezérlőpult letiltás

-parancsikon az asztalra helyezése

Megpróbálkozok ezekkel ha az előző parancs nem létezik!

A másik dolog meg hogy felhasználókat is hozzá kell rendelnem a csoportházirendhez hogy rájuk legyen érvényes. Az meg egy másik történet lesz!

Esetleg van ötletek egy nagyon egyszerű feladatra?

Az a baj hogy amig nem érted a GPO-t addig felesleges Powershellel kezelni. Előszőr felejtsd el a Powershell-t, értsd meg a GPO működését (használd pl.), és utána lehet scriptelni. De egyébként meg: mi az a feladat ami miatt ezt mindenképpen scriptelni kell?

Jalos

Szerkesztve: 2023. 06. 02., p – 11:57

Találtam egy egyszerű feladatot!

Az a kérdésem, hogy az alján lévő kódnál az OU=Kiszolgálók  -nál  egy organization unitot vár? Hozzak létre egyet, mondjuk fajitas néven?

    $OU = "OU=Kiszolgálók,DC=contoso,DC=com"

 

OU létrehozása

New-ADOrganizationalUnit -Name "fajitas" -Path "DC=PELDASULI,DC=LOCAL" -ProtectedFromAccidentalDeletion $false

>>>>majd átírom alul

----------------------------------------------------------------------------

Itt kezdődik a kód

 

# Csoportházirend nevének és leírásának meghatározása

$PolicyName = "Példa Csoportházirend"

$PolicyDescription = "Ez egy példa csoportházirend PowerShellben."

 

# Csoportházirend létrehozása

New-GPO -Name $PolicyName -Description $PolicyDescription

 

# Csoportházirend objektum lekérése a neve alapján

$Gpo = Get-GPO -Name $PolicyName

 

# Csoportházirendhez szabályok hozzáadása

$Rule1 = "A felhasználók nem módosíthatják a háttérképet."

$Rule2 = "A felhasználók csak bizonyos alkalmazásokat futtathatnak."

 

Set-GPRegistryValue -Name $PolicyName -Key "HKCU\Control Panel\Desktop" -ValueName "Wallpaper" -Type String -Value "C:\Hatterkep.jpg"

Set-GPRegistryValue -Name $PolicyName -Key "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -ValueName "DisallowRun" -Type MultiString -Value "notepad.exe","calc.exe"

 

# Csoportházirend alkalmazása az adott szervezeti egységre

$OU = "OU=Kiszolgálók,DC=contoso,DC=com"

Set-GPLink -Name $PolicyName -Target $OU

Ha nem tudod hotkey-el, akkor egérrel kijelölöd a szöveget, aztán nyomsz rá egy enter-t. Ez (is) a vágólapra teszi a kijelölt szöveget.

Vagy az egész clipboard cakk-und-pakk nem működik a VM guest-ed és a hoszt között? Barkóbázunk hogy vajon mi lehet az eredeti nehézséged, de hamar megunja az ember...

Sziasztok!

Visszatérve az eredeti problémára ezzel az egy sorral van baj:

 

set-gplink -name policyname -target $ou

ugye itt rendeljük össze a gpo-t az Organization unittal

 

A többi az lefut:

New-ADorganizationalunit -name "sirius11" -path "DC=peldasuli, DC=local" -ProtectedFromAccidentalDeletion $false

$PolicyName="vmi11"

New-gpo -name $policyName 
$gpo = get-gpo -name $policyname
$rule1="A felhasználók nem módosíthatják a háttérképet!"
$rule2="A felhasználókcsak bizonyos alkalmazásokat futtathatnak"
set-gpregistryvalue -name $policyname -key "HKCU\Control Panel\Desktop" -valuename "wallpaper" -type string -value "C:\hatterkep.jpg"
set-gpregistryvalue -name $policyname -key "HKCU\Software\Microsoft\Windows\Currentversion\Policies\Explorer" -valuename "disallowrun" -type multistring -value "notepad.exe"
$OU ="OU=sirius11 DC=peldasuli,DC=local"

set-gplink -name policyname -target $ou

 

Ez a hibaüzenet:

Set-GPLink : Ismeretlen hiba (0x80005000)
At C:\8.ps1:13 char:1
+ Set-GPLink -name $policyname -target $OU
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Set-GPLink], COMException
    + FullyQualifiedErrorId : System.Runtime.InteropServices.COMException,Microsoft. 
   GroupPolicy.Commands.SetGPLinkCommand

Azt javitottam.Az az érdekes hogy az ou-t létrehozza. Már csak össze kellene rendelni a a gpo-val.

Hibának írja hogy nincs ilyen hogy vmi11  a Peldasuli.local ban. Pedig lefut a ou létrehozása.

 

Az is érdekes hogyha menüből létrehozoma gpo-t és az out akkor sem rendeli össze a kettőt.

Set-GPLink -name gpo_faj -target org_faj -domain "peldasuli.local"  

Mert egy virtuális oprendszerből nem lehet a gazdagépre áthozni!

Miért ne lehetne?
A Virtualbox dokumentációjában megtalálod, hogyan működik a guest-host vágólap.

Feltelepíted a Guest Additons-t, majd bekapcsolod a Bidirection Clipboardot.
https://www.virtualbox.org/manual/UserManual.html#settings-general-adva…

 

Ha ennyire kezdőként állsz ezekhez a dolgokhoz, akkor légyszíves mutass több alázatot azok felé,akik megpróbálnak neked segíteni, mert hamar meg lehet unni ám ezt.

PS C:\Users\Rendszergazda.WIN-ISKI57UHBSM> C:\fontos.ps1

 

 

DisplayName      : Pelda_4

DomainName       : PELDASULI.LOCAL

Owner            : PELDASULI\Tartománygazdák

Id               : 28ca161c-b3be-47c6-a45e-f74f77fda893

GpoStatus        : AllSettingsEnabled

Description      :

CreationTime     : 2023. 06. 05. 13:25:28

ModificationTime : 2023. 06. 05. 13:25:28

UserVersion      : AD Version: 0, SysVol Version: 0

ComputerVersion  : AD Version: 0, SysVol Version: 0

WmiFilter        :

 

DisplayName      : Pelda_4

DomainName       : PELDASULI.LOCAL

Owner            : PELDASULI\Tartománygazdák

Id               : 28ca161c-b3be-47c6-a45e-f74f77fda893

GpoStatus        : AllSettingsEnabled

Description      :

CreationTime     : 2023. 06. 05. 13:25:28

ModificationTime : 2023. 06. 05. 13:25:28

UserVersion      : AD Version: 1, SysVol Version: 1

ComputerVersion  : AD Version: 0, SysVol Version: 0

WmiFilter        :

 

DisplayName      : Pelda_4

DomainName       : PELDASULI.LOCAL

Owner            : PELDASULI\Tartománygazdák

Id               : 28ca161c-b3be-47c6-a45e-f74f77fda893

GpoStatus        : AllSettingsEnabled

Description      :

CreationTime     : 2023. 06. 05. 13:25:28

ModificationTime : 2023. 06. 05. 13:25:28

UserVersion      : AD Version: 2, SysVol Version: 2

ComputerVersion  : AD Version: 0, SysVol Version: 0

WmiFilter        :

 

set-gplink : There is no GPO named "Pelda_4" in the PELDASULI.LOCAL domain that is linked to the Active Directory con

tainer with LDAP path "OU=fajitasxx,DC=PELDASULI,DC=LOCAL". Make sure that a GPLink exists for the GPO specified by t

he GUID parameter and the site, organizational unit (OU), or domain specified by the Path parameter. Then,  run the c

ommand again.

Paraméter neve: Name

At C:\fontos.ps1:13 char:1

+ set-gplink -name $policyname -target $OU

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : ObjectNotFound: (Microsoft.Group...etGPLinkCommand:SetGPLinkCommand) [Set-GPLink], Arg

   umentException

    + FullyQualifiedErrorId : GpoLinkNotFound,Microsoft.GroupPolicy.Commands.SetGPLinkCommand

Szerintem csak az akar lenni (vagy elhiszi hogy az...)  és össze akar tákolni egy AD-t egy iskolának .. na ebből lesznek nagy bajok ... :( értem én hogy kérdez szakmai fórumon, de ha az alapokról sincs lövése se.. akkor hah ..

Az ilyen "szakértők" után szoktunk "takarítani" .. vagy nullából újrahúzni az egészet ....

Szerkesztve: 2023. 06. 05., h – 14:56

Igen. Nyitok egy új topicot ezt meg lezárom! Túl sok a kódrészlet benne.

Egyébként letöltöttem a guest additions-t az eszközöknél leszürkiti. Nem engedi telepíteni.

Szerkesztve: 2023. 06. 05., h – 15:40

7 -es virtualbox

 

a guest os winserver 2016

Ember. Ha valamire válaszolsz, akkor használd a VÁLASZ gombot. Így a válaszod fastruktúra szerűen jelenik meg, nem pedig 1 szinttel feljebb.

Hányas Virtualbox? 7.x.y, ahol x és y értéke is fontos lehet.
Extension packot feltetted?
Host OS verziója, típusa?

Szerk.: Amúgy meg: https://www.youtube.com/watch?v=9cQbJEQDZBk

Szívesen.