統(tǒng)計(jì)頻繁被鎖定的AD帳號(hào)-創(chuàng)新互聯(lián)

一、數(shù)據(jù)處理過(guò)程

  1. 在WinSer執(zhí)行排程腳本遠(yuǎn)程控制DC作業(yè),導(dǎo)出7天內(nèi)帳號(hào)的鎖定EventLog;
  2. 通過(guò)WinSer中轉(zhuǎn)至LinuxSer;
  3. 在LinuxSer執(zhí)行排程對(duì)數(shù)據(jù)進(jìn)行格式化,過(guò)濾出(50次/月)的數(shù)據(jù)。
  4. 通過(guò)訪問(wèn)訪問(wèn)\\WinSer可訪問(wèn)共享,(每28天的星期三)拿到處理過(guò)的文件(ad20170101.txt..)
    統(tǒng)計(jì)頻繁被鎖定的AD帳號(hào)

二、腳本

2.1 WinSer服務(wù)器

  • 腳本一:
    因Windows默認(rèn)不允許直接在排程運(yùn)行powshell腳本(服務(wù)器有更多限制),所以選擇運(yùn)行Bat腳本調(diào)用運(yùn)行。
powershell  D:\PS\AccountLockOut\Start-AccountLockOut.ps1
  • 腳本二:
    發(fā)送本地腳本文件到DC上執(zhí)行(便于管理)。
$CredUser="ikulin"    #定義用戶(hù)
$PWD=ConvertTo-SecureString "Iku963" -AsPlainText -Force    #定義密碼,轉(zhuǎn)換安全字符,強(qiáng)制明文
$Cred=New-Object System.Management.Automation.PSCredential($CredUser,$PWD)   #定義認(rèn)證對(duì)象

Invoke-Command -FilePath  "D:\PS\AccountLockOut\Get-AccountLockOut.ps1" -ComputerName 10.10.10.10 -Credential  $Cred 

net use \\DC\D$\PS\AccountLockOut Iku963.. /u:ikulin
robocopy \\DC \D$\PS\AccountLockOut   D:\PS\AccountLockOut\LOG 
net use \\LinuxSer\ad  passwd   /u:username
robocopy   D:\PS\AccountLockOut\LOG  \\LinuxSer\ad
net use /d * /y
  • 腳本三:
    讀取7天內(nèi)帳號(hào)的鎖定日志并導(dǎo)出csv文件。
[CmdletBinding()]

param(
[INT]$Num=7
)
    $After=((Get-Date).adddays(-$Num+1)).ToString('yyyy-MM-dd')
    $Before=(Get-Date).ToString('yyyy-MM-dd')
    $Filename="D:\PS\AccountLockOut\"+"$After"+'-'+"$Before"+'.csv'

    Get-EventLog -LogName Security -After $After -InstanceId 4740 |
    select @{Name="USER";Expression={(($_.Message).Split(":"))[8].Trim().Split("")[0]}},
        @{Name="TIME";Expression={$_.TimeGenerated}},
        @{Name="COMPUTER";Expression={(($_.Message).Split(":"))[10].Trim()}} |

    Export-Csv  -Encoding UTF8 -path  "$Filename" -Force

2.2 LinuxSer服務(wù)器

  • 腳本四:
    使用shell腳本過(guò)得數(shù)據(jù)。
#!/bin/bash
#Date:2017-09-21
#Version:1.0.0
#Author:linxianyu
#Description:Format out  for AD AccountLock.csv

#將鎖定次數(shù)超過(guò)50次的帳號(hào)統(tǒng)計(jì)并存入變量a

a=$(cut -d ',' -f 1 $@ | sort | uniq -c | sort -n |
awk -F ' ' '{ if ($1>50) print $1,$2  }' |
tr -d '"' )

#打印變量a的內(nèi)容
#因從變量輸入原格式會(huì)改變,所以有awk對(duì)輸出格式化

echo $a|
awk -F ' ' ' BEGIN{printf "%15-s %10-s \n","Statistics","Account";
print "-----------------------------"}
{ for(i=1;i<=NF;i++){if(i%2==1){printf "%-10s \t",$i } else{printf "%-10s\n",$i}}}
END{print "-----------------------------"}'

#將變量a中的帳號(hào)篩選并存入變量b

b=$(echo $a | awk -F ' ' '{for(i=1;i<=NF;i++){if(i%2==0){print $i }}}')

#for循環(huán)數(shù)組變量b中的帳號(hào)并再次查找、統(tǒng)計(jì)、打印
#若同一帳號(hào)在不同pc上登陸則分開(kāi)打印

for i in ${b[@]};
do

        grep "$i" $@ |

        cut -d "," -f1,3 |
        cut -d ":" -f2 |
        sort -t ',' -k2 |
        sed -e 's#"##g' -e 's#,#\t#g' |

#清除pcname中與帳號(hào)同名的行

        grep "^$i" |
        uniq -c |
        sort -b -k2

done
  • 腳本六:
    調(diào)用tj.sh統(tǒng)計(jì)腳本,計(jì)算周期。
#!/bin/bash
#Date:20171121
#Version:1.0
#Discription: The creat date for tj.sh

path=/backup/ad
cd $path

#測(cè)試文件是否存在
[ -e missionnum ]

if [ $? = 0 ];
then

#查看運(yùn)行資料
num=$(cat missionnum)

#定義循環(huán)4次(周)調(diào)用一次腳本
mouth=4

#判斷是否滿(mǎn)足4周
        if [ $num -ne $mouth ];
        then
#循環(huán)計(jì)數(shù)+1
                echo $[ num += 1 ] > missionnum

        else

#定義文件名
                filename=$(date +"ad%Y%m%d.txt")
#查找4周內(nèi)產(chǎn)生的日志并調(diào)用執(zhí)行腳本tj.sh           
                find -name "2017-*" -mtime -28 | xargs sh tj.sh > $filename
#進(jìn)行l(wèi)inux to windows文本格式轉(zhuǎn)換                
                unix2dos $filename
#重置計(jì)數(shù)                
                echo 1 > missionnum

        fi

else

#若無(wú)計(jì)數(shù)文件則創(chuàng)建(因第一次執(zhí)行后值因?yàn)?所以直接賦值2)
echo 2 > missionnum

fi
    • 腳本七:
      計(jì)劃任務(wù)調(diào)用mission.sh腳本。
08 17 * * 3 sh /backup/ad/mission.sh

三、文件

  • 導(dǎo)出的csv文本:
#TYPE Selected.System.Diagnostics.EventLogEntry
"USER","TIME","COMPUTER"
"Administrator","2017/11/29 下午 12:14:18","PC1"
"USER1","2017/11/29 下午 12:06:53","PC2"
"USER3","2017/11/29 下午 12:02:35","PC3"
"USER6","2017/11/29 上午 11:53:51","PC9"
"Administrator","2017/11/29 上午 11:48:39","PC2"
  • 最終的文本:
[root@bogon ~]# cat /backup/ad/ad20171122.txt 
Statistics      Account    
-----------------------------
60              USER1 
161            USER3  
482            USER9
971            Administrator
-----------------------------
    60    USER1       PC2
    100  USER3       PC3
    30    USER3       PC4
    31    USER3       PC11
    209  USER9       PC6
    273  USER9       PC100
    531  Administrator      PC1
    440  Administrator      PC2

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

創(chuàng)新互聯(lián)長(zhǎng)期為上千余家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為耿馬企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),耿馬網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

分享文章:統(tǒng)計(jì)頻繁被鎖定的AD帳號(hào)-創(chuàng)新互聯(lián)
URL地址:http://bm7419.com/article22/dcoejc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、網(wǎng)站維護(hù)、面包屑導(dǎo)航、Google、微信公眾號(hào)、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)