Nếu bạn không muốn đánh hơi gói tin, tôi sẽ đề xuất một tập lệnh powershell trong tất cả các máy tính kiểm tra kết nối ldap an toàn và ghi nhật ký không thành công. Bạn có thể kết nối từ xa với các máy khách từ Bộ điều khiển miền hoặc bạn có thể tạo một kịch bản phía máy khách ghi lại các lỗi trên máy chủ tệp.
Ideia của tập lệnh là mô phỏng kết nối ldap an toàn. Nó sử dụng khung .net vốn xuất hiện trên windows 7 sp1 trở lên.
Trong trường hợp bạn muốn chạy từ xa từ DC, tập lệnh sẽ trông như thế này (cần có sự cho phép của quyền hạn từ xa có thể đạt được sau bài viết này https://www.briantist.com/how-to/powershell-remote-group- chính sách / ):
Import-Module ActiveDirectory
$domain = "contoso.com"
$user = "Administrator"
$password = "P@ssw0rd"
$IPFilter = "192.168.1.*"
$scriptblock = {
write-host "$(hostname) - " -NoNewLine
try {
$LDAPS = New-Object adsi ("LDAP://$($args[0]):636",$args[1],$args[2],'SecureSocketsLayer')
Write-Host "Secure LDAP Connection succeeded."
} Catch {
Write-Host "Secure LDAP Connection failed." -foregroundcolor red
}
}
$Computers = Get-ADComputer -filter * -Properties IPv4Address | Where{ $_.IPv4Address -like $IPFilter}
foreach($Computer in $Computers)
{
try {
$session = New-PSSession $Computer.Name -ErrorAction Stop
Invoke-Command -Session $session -ScriptBlock $scriptblock -ArgumentList $domain,$user,$password
}catch{
Write-Host "Connection to $($Computer.Name) failed." -foregroundcolor red
}
}
Hoặc nếu bạn muốn một tập lệnh cục bộ đăng nhập vào một máy chủ từ xa:
$domain = "contoso.com"
$user = "Administrator"
$password = "P@ssw0rd"
$LogFile = "\\fileserver\logs\ldapconnection.log"
try {
$LDAPS = New-Object adsi ("LDAP://$domain:636",$user,$password,'SecureSocketsLayer')
"$(hostname) - Secure LDAP Connection succeeded." | Out-File $LogFile -Append
} Catch {
"$(hostname) - Secure LDAP Connection failed." | Out-File $LogFile -Append
}
Đầu ra của một thực thi phiên bản từ xa (những cái màu đỏ là máy khách ngoại tuyến):