1. 程式人生 > >分享幾個AD管理中常用的PowerShell命令

分享幾個AD管理中常用的PowerShell命令

1、 查詢AD中,預設的密碼策略

如果接手一個新的AD環境,需要了解其密碼策略如果,或是你忘了你所在組織AD的密碼策略,我們一會去組策略管理控制檯去檢視,但有了PowerShell,會變得很簡單,只需一個CMDLET: Get-ADDefaultDomainPasswordPolicy

clip_image001

密碼複雜性要注、鎖定策略、密碼長度、密碼有效時間等,可以全部顯示出來!

2、 查詢AD中,那些使用者被選中了“密碼永不過期”的選頂

在域管理中,我們一般都會配置一些策略,設定使用者密碼30天或是90天過期,強制修改密碼,但有時,可能會在建立使用者時,不小心選中了“密碼永不過期”的選頂,這對資訊保安來說,是不被允許的,或是說一個不安全的因素,如果通過AD管理工具去檢查每個使用者,是一個很繁瑣的工具,但如果我們利用PowerShell,就可以很方便的一次性查詢出AD中所有勾選了“密碼記不過期”選頂的使用者!

Get-ADUser -Filter 'PasswordNeverExpires -eq $true' -Server DCHostname | select name

將DChostname修改為你域的其中一臺DC的主機名

clip_image003

如果你的AD組織足夠大,一次性會顯示所有AD中的的使用者,如果只查詢某個指OU下的,可以加入限定條件,如:

-searchbase ' OU=test,DC=Youdomain,DC=COM '

將OU=Test修改為你其中一個OU的名字,將DC=Youdomain,DC=COM改為你的域名,如我的域名為szmaxcent.com.cn,我要查東莞分公司使用者所在OU:

Get-ADUser -searchbase ' OU=Dongguan,DC=szmaxcent,DC=COM,DC=CN ' -Filter 'PasswordNeverExpires -eq $true' -Server DC001 | select name

3、 查詢AD中,已鎖定的使用者

如果某些使用者因為密碼問題導致賬號鎖定,我們也可以用PowerShell來檢視當前域中,有那些賬號是鎖定狀態:

get-aduser -filter * -properties * | where {$_.lockedout} | ft name,lockedout

clip_image005

當然,上面命令也可以參考上面加上限定條件,來指定OU!

如果需要查詢某個賬號是否鎖定:

get-aduser johnsonxiang -properties * | ft name,lockedout

clip_image007

如果紅色方框顯示為False,為正常狀態,如果為Ture,即已鎖定!

如果要對已經鎖定的賬號解鎖,直接用:Unlock-ADAccount -Identity johnsonxiang,當然前提是你要有對此鎖定解鎖的許可權!

4、 查詢AD中,成員為空AD組(針對使用者)

AD組織用久了,建立組越來越多,很多組已經沒有任何成員了,也行不會再使用,我們可以將這些組找出來,如果確認不用的話,再將其刪除!

用PowerShell,可以很方便的,一次性將這些組全部列出來,命令如下:

Get-ADGroup -Filter * -Properties Members | where { -not $_.Members} | select Name

同樣,你也可以參考上面的語句,在前面加上限定條件,來查詢指定OU