Настройка ПК для сбора данных через WinRM
Обзор возможностей
Данная настройка требуется, если при выполнении задачи сетевой инвентаризации, выбран протокол для инвентаризации WinRM.
Проверка активных подключений WinRM
- Выполните команду:
winrm enumerate winrm/config/Listener
- Если в результатах выполнения вы видите два открытых порта, то проверьте есть ли соединение, у которого в Transpor – https и CertificateThumbprint должно быть заполнено:
Transport = HTTPS CertificateThumbprint = XXXXXXXXXXXXXXXXXXXXXXXXX
- Если есть, то проверьте список хостов, на которых висит слушатель (поля Address и ListeningOn).
Необходимо, чтобы агенту было доступно подключение к данному слушателю. - Если Address = *, то в поле ListeningOn будут отображаться ВСЕ доступные интерфейсы.
- Если подходящего соединения нету, то создайте его, как описано в следующем шаге.
Создание слушателя https (tls)
- Выпустите сертификат (если есть уже выпущенный подходящий сертификат, то используйте его и переходите к следующему пункту).
$cert = New-SelfSignedCertificate -DnsName "5.188.156.86" -CertStoreLocation Cert:\LocalMachine\My
Важно чтобы DnsName совпадал с хостом или ip адресом машины "5.188.156.86". - Создайте слушателя:
New-WSManInstance -ResourceURI winrm/config/Listener ` -SelectorSet @{Address="*"; Transport="HTTPS"} ` -ValueSet @{ Hostname = "5.188.156.86" CertificateThumbprint = "$($cert.Thumbprint)" Enabled = $true }
- Проверьте, что $cert уже содержит отпечаток сертификата, выпущенного ранее. Т.е. $cert.Thumbprint должно выдавать строку с подписью сертификата.
- Проверьте, появился ли новый слушатель формата https и CertificateThumbprint из предыдущего пункта.
- Включите Basic аутентификацию.
Проверка общих настроек
Выполните команду:
winrm get winrm/config
Проверка соедиения
Теперь можно проверить соединение с того сервера где установлен агент на сервер который мы хотим опросить.
Для этого выполните команду:
$SecurePassword = ConvertTo-SecureString "XXXXXXX" -AsPlainText -Force;$Credentials = New-Object System.Management.Automation.PSCredential("YYYYYYY", $SecurePassword);$sessionParams = @{ ComputerName = "ZZZZZZZ"; Credential = $Credentials; Port = 5986; UseSSL = $true; SessionOption = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck };Invoke-Command @sessionParams -ScriptBlock {whoami} -Authentication Basic
Где:
- XXXXXXX – пароль от учетной записи, через которую будет происходить опрос устройства.
- YYYYYYY – логин учетной записи, через которую будет происходить опрос.
- ZZZZZZZ – ip либо хост опрашиваемого устройства.
Проверка доступности типа подключения
Эту проверку нужно сделать на ПК, где будет происходить сбор данных. Обычно включены все типы подключения.
Для этого выполните команду:
winrm get winrm/config/Client
Если тип подключения не доступен, то включите его.