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

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

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

二、腳本

2.1 WinSer服務(wù)器

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

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)帳號的鎖定日志并導(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腳本過得數(shù)據(jù)。
#!/bin/bash
#Date:2017-09-21
#Version:1.0.0
#Author:linxianyu
#Description:Format out  for AD AccountLock.csv

#將鎖定次數(shù)超過50次的帳號統(tǒng)計并存入變量a

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

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

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中的帳號篩選并存入變量b

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

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

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中與帳號同名的行

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

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

path=/backup/ad
cd $path

#測試文件是否存在
[ -e missionnum ]

if [ $? = 0 ];
then

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

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

#判斷是否滿足4周
        if [ $num -ne $mouth ];
        then
#循環(huán)計數(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
#重置計數(shù)                
                echo 1 > missionnum

        fi

else

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

fi
    • 腳本七:
      計劃任務(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元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

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

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

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

廣告

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

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