Slide 1

Slide 1 text

PowerShellからグループポリシー を操作してみよう 2014/11/29 CLR/H in Tokyo第6回 素敵なおひげ

Slide 2

Slide 2 text

自己紹介  素敵なおひげ Twitter - @stknohg Blog - http://stknohg.hatenablog.jp/  何者? CLR/HとJAZUG札幌の裏方です。 札幌から来ました。 SI屋さんやってます。

Slide 3

Slide 3 text

動機 1. せっかく東京に遊びにきたので 2. 皆さんグループポリシー大好き ですよね? 3. 意外と日本語情報が無かった ので(特に具体的な実行例が)

Slide 4

Slide 4 text

GPMC Class Library  .NETでグループポリシーを扱うためのライブラリ  .NETのクラスとPowerShellコマンドレットから成る *今回は触れないがC#から扱うことも出来る  MSDN  http://msdn.microsoft.com/en-us/library/ee840126.aspx  制限事項  ローカルグループポリシーは扱えない *ローカルグループポリシーを扱うには別の方法を採る必要がある (PowerShellでは多分無理)

Slide 5

Slide 5 text

インストール 1. GPMCをインストールする  サーバーOSの場合の手順  インストールは以下のコマンドで 2. RSATをインストールする サーバーOSでない場合の手順 インストール手順は省略 Add-WindowsFeature GPMC

Slide 6

Slide 6 text

利用するにあたって  前提条件 グループポリシーを更新するのに必要な 権限を持っているユーザーで実行する事 ドメインユーザーであること  要Import-Module Import-Module -Name grouppolicy

Slide 7

Slide 7 text

使えるコマンド CommandType Name ModuleName ----------- ---- ---------- Alias Get-GPPermissions grouppolicy Alias Set-GPPermissions grouppolicy Cmdlet Backup-GPO grouppolicy Cmdlet Copy-GPO grouppolicy Cmdlet Get-GPInheritance grouppolicy Cmdlet Get-GPO grouppolicy Cmdlet Get-GPOReport grouppolicy Cmdlet Get-GPPermission grouppolicy Cmdlet Get-GPPrefRegistryValue grouppolicy Cmdlet Get-GPRegistryValue grouppolicy Cmdlet Get-GPResultantSetOfPolicy grouppolicy Cmdlet Get-GPStarterGPO grouppolicy Cmdlet Import-GPO grouppolicy Cmdlet Invoke-GPUpdate grouppolicy Get-Command -Module grouppolicy CommandType Name ModuleName ----------- ---- ---------- Cmdlet New-GPLink grouppolicy Cmdlet New-GPO grouppolicy Cmdlet New-GPStarterGPO grouppolicy Cmdlet Remove-GPLink grouppolicy Cmdlet Remove-GPO grouppolicy Cmdlet Remove-GPPrefRegistryValue grouppolicy Cmdlet Remove-GPRegistryValue grouppolicy Cmdlet Rename-GPO grouppolicy Cmdlet Restore-GPO grouppolicy Cmdlet Set-GPInheritance grouppolicy Cmdlet Set-GPLink grouppolicy Cmdlet Set-GPPermission grouppolicy Cmdlet Set-GPPrefRegistryValue grouppolicy Cmdlet Set-GPRegistryValue grouppolicy

Slide 8

Slide 8 text

実行例1 グループポリシーの バックアップとリストア

Slide 9

Slide 9 text

ポリシーのバックアップ  Backup-GPO ポリシーを指定のディレクトリに バックアップする 同じディレクトリに複数回バックアップ するとデータは追加される Backup-GPO -All –Path "C:¥Temp" ` -Comment "全体バックアップ" Backup-GPO –Name MyGPO –Path “C:¥Temp ”` –Comment “個別バックアップ"  実行例

Slide 10

Slide 10 text

ポリシーのリストア(1)  Restore-GPO ポリシーのバックアップ先のPathから指定 したポリシーを復元する バックアップしたポリシーが削除済みの 場合はエラーとなる Restore-GPO –Name MyGPO -Path "C:¥temp"  実行例

Slide 11

Slide 11 text

ポリシーのリストア(2)  Import-GPO ポリシーのバックアップ先のPathから指定 したポリシーをインポートする CreateIfNeededオプションを指定すれば バックアップしたポリシーが削除済みでも エラーとならない Import-GPO -CreateIfNeeded –BackupGpoName ` MyGPO –TargetName MyGPO -Path "C:¥Temp"  実行例

Slide 12

Slide 12 text

実行例2 グループポリシーの 新規作成

Slide 13

Slide 13 text

GPOの新規作成  New-GPO GPOを新規作成する スターターGPOの指定も可能 New-GPO –Name MyGPO ` –Comment "新規ポリシー"  実行例

Slide 14

Slide 14 text

ポリシーの設定  Set-GPRegistryValue  指定のGPOにポリシーを設定する  ポリシーに応じたレジストリキーの値を設定する必要が ある  レジストリキーの詳細については以下参照  http://msdn.microsoft.com/en-us/library/ms815238.aspx  http://www.microsoft.com/en- us/download/details.aspx?displaylang=en&id=25250 Set-GPRegistryValue -Name MyGPO ` -Key HKLM¥Software¥Policies¥Microsoft¥Windows¥Server¥ServerManager ` -ValueName DoNotOpenAtLogon -Type Dword -Value 1  実行例 (ログオン時にサーバー マネージャーを自動的に表示しない)

Slide 15

Slide 15 text

ポリシーのリンク  New-GPLink ポリシーのリンクを作成する 対象OUは識別名で指定する New-GPLink –Name MyGPO -Target ` "ou=Domain Controllers,dc=contoso,dc=local"  実行例

Slide 16

Slide 16 text

参考資料  Group Policy Cmdlets in Windows PowerShell  http://technet.microsoft.com/en-us/library/ee461027.aspx  PowerShell from Japan!! Blog(グループポリシー)  http://blog.powershell-from.jp/?tag=グループポリシー管理  Hey, Scripting Guy! How Can I Use Group Policy Cmdlets to Back Up and Restore Group Policy Objects?  http://blogs.technet.com/b/heyscriptingguy/archive/2010/07/13/hey-scripting-guy- how-can-i-use-group-policy-cmdlets-to-back-up-and-restore-group-policy- objects.aspx  業務アプリケーションのレジストリ設定を グループ・ポリシーで配布する  http://www.atmarkit.co.jp/fwin2k/greatblog/001gpwoadmx/gpwoadm x_01.html