У нас есть пользователи RDP к терминальным серверам компании. Существует ли способ, которым я могу отследить IP-адрес за пределами компании, откуда пользователи соединяются?
Я знаю, что существуют журналы, доступные под под службами удаленных рабочих столов в журнале событий, но я не вижу общедоступного IP-адреса там для удаленного соединения от за пределами компании.
Какая-либо идея?
jautājums nesniedz informāciju par to, kā lietotāji no ārpuses izveido savienojumu ar jūsu termināļa serveri. Es domāju, ka jūsu uzņēmumā ir vārteja, kas novirza pieprasījumus no interneta uz termināļa serveri. Ja tā, tad šo informāciju varat iegūt vārtejas žurnālā.
Tomēr, ja jūsu termināļa serveris ir tieši savienots ar internetu un dažu iemeslu dēļ tam ir publisks IP, iespējams, tas var jums palīdzēt:
<#
Features:
1) This script reads the event log "Microsoft-Windows-TerminalServices-LocalSessionManager/Operational" from multiple servers and outputs the human-readable results to a CSV.
Instructions:
1) Before you run, edit this line to include one or several of your own servers.
Requirements:
1) TBD
April 8 2015 - Version 0.2
Mike Crowley
http://BaselineTechnologies.com
#>
$SessionHosts = @('Server2', 'Server3', 'Server4', 'Server5')
foreach ($Server in $SessionHosts) {
$LogFilter = @{
LogName = 'Microsoft-Windows-TerminalServices-LocalSessionManager/Operational'
ID = 21, 23, 24, 25
}
$AllEntries = Get-WinEvent -FilterHashtable $LogFilter -ComputerName $Server
$AllEntries | Foreach {
$entry = [xml]$_.ToXml()
[array]$Output += New-Object PSObject -Property @{
TimeCreated = $_.TimeCreated
User = $entry.Event.UserData.EventXML.User
IPAddress = $entry.Event.UserData.EventXML.Address
EventID = $entry.Event.System.EventID
ServerName = $Server
}
}
}
$FilteredOutput += $Output | Select TimeCreated, User, ServerName, IPAddress, @{Name='Action';Expression={
if ($_.EventID -eq '21'){"logon"}
if ($_.EventID -eq '22'){"Shell start"}
if ($_.EventID -eq '23'){"logoff"}
if ($_.EventID -eq '24'){"disconnected"}
if ($_.EventID -eq '25'){"reconnection"}
}
}
$Date = (Get-Date -Format s) -replace ":", "."
$FilteredOutput | Sort TimeCreated | Export-Csv $env:USERPROFILE\Desktop\$Date`_RDP_Report.csv -NoTypeInformation
#End
Šis PowerShell skripts no Microsoft Technet vietne parsē notikumu žurnālus par LAP sesiju informāciju, ieskaitot klienta IP, un cilvēkiem lasāmos rezultātus izvada CSV.
Если кто-то ищет IP-адреса неудачных попыток RDP-подключения (например, в случае атак грубой силы на ваш веб-сервер), журнал событий Windows будет Microsoft-Windows-RemoteDesktopServices- RdpCoreTS/Operational
и идентификатор события 140
(зарегистрировано как предупреждение):
A connection from the client computer with an IP address of 123.123.123.123 failed because the user name or password is not correct.
Затем вы можете написать сценарий, позволяющий брандмауэру блокировать IP-адреса при нескольких неудачных попытках.