Протокол Simple Network Management Protocol (SNMP) используется для мониторинга, оповещения о событиях и управления устройствами в сети. Протокол состоит из набора стандартов по управления сетью, в том числе протокол прикладного уровня (Application Layer protocol), схемы базы данных и набор объектов данных. SNMP может получать различную информацию (время аптайма, счетчики производительности, параметры устройств и т.д.) от любых сетевых устройств: коммутаторов, серверов, маршрутизаторов или простых компьютеров, на которых установлен агент SNMP.
В Windows 10 служба SNMP доступна в виде отдельного компонента Windows и по умолчанию не устанавливается. Рассмотрим, как установить и настроить SNMP в Windows 10.
- Установка службы SNMP в WIndows 10
- Настройка службы SNMP в Windows 10
Содержание:
Установка службы SNMP в WIndows 10
Вы можете проверить, установлена ли в вашей системе служба SNMP с помощью PowerShell командлета Get-Service:
Get-Service -Name snmp*
Вы можете установить службу SNMP через панель управления. Перейдите в Панель управления\Все элементы панели управления\Программы и компоненты\ Включение или отключение компонентов Windows).
В списке компонентов выберите Simple Network Management Protocol (SNMP)/протокол, и WMI SNMP Provider / Поставщик WMI для SNMP (обеспечивает доступ к информации SNMP через интерфейсы Windows Management Instrumentation) и нажмите Ок.
Также вы можете установить службы SNMP из командной строки PowerShell:
Enable-WindowsOptionalFeature -online -FeatureName SNMP
Настройка службы SNMP в Windows 10
После установки службы SNMP должны запустится автоматически. Откройте консоль управления Services (services.msc). В списке службы должны появится две новые службы:
- SNMP Service – это основная служба SNMP агента, которая отслеживают активность и отправляет информацию;
- SNMP Trap — получает сообщения ловушки (trap messages) от локальных или удаленных агентов SNMP, и пересылает сообщения в управляющие программы SNMP, которые работают на этом компьютере.
Откройте свойства службы SNMP. Если она остановлена, запустите ее, нажав кнопку Start и измените тип запуска (Startup type) на автоматический.
Перейдите на вкладку Agent. Заполните поля contact и location (здесь вы можете указать контактное имя пользователя и местоположение компьютера), и выберите список сервисов, данные которых нужно собирать и отправить устройству мониторинга.
Доступны следующие типы сервисов:
- Physical
- Applications
- Internet
- End-to-end
- Datalink and subnetwork
Перейдите на вкладку Security. Здесь вы можете настроить различные параметры безопасности для различных серверов SNMP.
В списке Accepted community names перечислены имена сообществ, чьи SNMP узлы проходят аутентификацию для отправки SNMP-запросов на этот компьютер.
Community — это имя, которое обладает такими же функциями, как логин и пароль.
Нажмите кнопку Добавить и укажите имя Community и один из пяти уровней доступа (None, Notify, READ ONLY, READ WRITE, READ CREATE). READ WRITE – это максимальный уровень доступа, при которых сервер управления SNMP может вносить изменения в систему. В системах мониторинга обычно достаточно выбрать READ ONLY, при этом сервер мониторинга может только опрашивать систему, но не вносить изменения.
В нашем примере мы добавили комьюнити public с разрешениями READ ONLY.
Далее добавьте список серверов системы мониторинга (по DNS имени или по IP адресам), от которых вы хотите разрешить получать SNMP пакеты.
Совет. Вы можете выбрать опцию ‘Принимать пакеты SNMP от любого узла’/Accept SNMP packages from these hosts, но это не безопасно.
Сохраните изменения и перезапустите службу SNMP.
На этом настройка службы SNMP в Windows 10 по сути завершена. Если вам нужно включить SNMP сразу на множестве компьютеров, вы можете удаленно установить и настроить службы с помощью PowerShell или GPO.
SNMP (
Simple Network Management Protocol
) — это классический протокол для мониторинга и сбора информации о сетевых устройствах (сервера, сетевое оборудование, рабочие станции, принтеры и т.д.). Протокол SNMP довольно легкий, быстрый, для передачи данных использует UDP порты 161 и 162. В этой статье мы рассмотрим, как установить и настроить службу SNMP в Windows Server 2022/2019 и Windows 10/11.
Содержание:
- Установка службы SNMP в Windows Server 2022/2019
- Установка SNMP агента в Windows Server Core
- Установка службы SNMP в Windows 10/11
- Настройка службы SNMP в Windows Server и Windows 10/11
Установка службы SNMP в Windows Server 2022/2019
В Windows Server службу SNMP можно установить с помощью Server Manager.
Выберите Add roles and features -> Features. Выберите SNMP Service (если нужно отметьте также SNMP WMI Providers).
Служба SNMP WMI Provider позволяет опрашивать SNMP устройство через WMI.
Нажмите Next -> Install и дождитесь окончания установки.
Установка SNMP агента в Windows Server Core
В Windows Server Core можно установить SNMP с помощью веб-интерфеса Windows Admin Center и PowerShell.
Если вы используете Windows Admin Center, подключитесь к хосту Windows Server, выберите Roles and Features -> SNMP Service.
Т.к. в Windows Server Core отсутствует графический интерфейс, а для его управления используется командная строка, вы можете установить службу SNMP из командной строки PowerShell.
Для установки ролей в Windows Server из PowerShell используется командлет Install-WindowsFeature.
Проверьте, что служба SNMP не установлена:
Get-WindowsFeature SNMP*
Установите роль SNMP и WMI провайдер:
Install-WindowsFeature SNMP-Service,SNMP-WMI-Provider -IncludeManagementTools
Проверьте, что службы SNMP запущены:
Get-Service SNMP*
В нашем примере SNMP служба запущена, а SNMPTRAP остановлена.
Установка службы SNMP в Windows 10/11
Вы можете использовать службу SNMP не только в Windows Server, но и в десктопных редакциях Windows 10 и 11.
В Windows 10/11 служба SNMP, вынесена в отдельный компонент Feature On Demand (как RSAT и OpenSSH).
Вы можете установить SNMP через панель Settings. Перейдите в Apps -> Optional features -> Add an optional feature -> View features.
В списке доступных компонентов выберите Simple Network Management Protocol (SNMP) и WMI SNMP Provider. Для начала установки нажмите Next (понадобится интернет подключение к серверам Microsoft).
Для установки службы SNMP через PowerShell, используйте команду:
Add-WindowsCapability -Online -Name SNMP.Client~~~~0.0.1.0
Для установки службы SNMP без подключения к интернету, вам понадобится скачать ISO образ Windows 10/11 Features on Demand из личного кабинета на сайте лицензирования Volume Licensing Service Center (VLSC).
Для офлайн установки службы SNMP с такого ISO образа используется команда:
Add-WindowsCapability -Online -Name SNMP.Client~~~~0.0.1.0 -LimitAccess -Source \\msk-fs01\Distr\Windows-FOD\Win11\
Настройка службы SNMP в Windows Server и Windows 10/11
Вы можете настроить параметры службы SNMP в консоли services.msc. Найдите службу SNMP Services в списке и откройте ее свойства.
Обратите внимание, что у службы SNMP есть несколько дополнительных вкладок:
- Agent
- Traps
- Security
На вкладке Agent указывается базовая информация об устройстве (контакты администратора, местоположение). Здесь же можно указать тип информации, который может отправлять данное устройство при SNMP опросе.
В старых версиях протокола SNMP (SNMP v.1 и SNMP v.2) для авторизации пользователя используется строка сообщества (community string). На вкладке Security можно создать несколько строк подключения.
Можно выбрать один из пяти уровней доступа для сообщества:
- READ ONLY — позволяет получать данные с устройства;
- READ WRITE — позволяет получать данные и изменять конфигурацию устройства;
- NOTIFY — позволяет получать SNMP ловушки;
- READ CREATE – позволяет читать данные, изменять и создавать объекты;
- NONE
Вы можете создать несколько community string. Для этого нужно задать имя и выбрать права/ Для мониторинга состояние сервера достаточно выбрать READ ONLY.
В списке Accept SNMP packets from these hosts можно указать имена/IP адреса серверов, которым разрешено опрашивать данное устройство. Если вы не хотите ограничивать список разрешенных устройств, оставьте здесь Accept SNMP packets from any hosts.
На вкладке Traps указываются адрес серверов, на который SNMP агент должен отправлять SNMP-ловушка (SNMP trap). SNMP Trap это широковещательный USP пакет, используемый для асинхронного уведомления менеджера (например, сообщение о критическом событии).
Не забудьте открыть в Windows Defender Firewall правила, разрешающие входящий и исходящий трафик для SNMP запросов и ловушек (TRAP). Нужные правила фаейрвола можно включить с помощью PowerShell.
В Windows Firewall есть несколько готовых правил для SNMP трафика:
Get-NetFirewallrule -DisplayName *snmp* |ft
- SNMPTRAP-In-UDP
- SNMPTRAP-In-UDP-NoScope
- SNMP-Out-UDP
- SNMP-In-UDP-NoScope
- SNMP-Out-UDP-NoScope
- SNMP-In-UDP
Можно включить все правила, или только определенное:
Get-NetFirewallrule -DisplayName *snmp* | Enable-NetFirewallRule
Get-NetFirewallrule SNMP-Out-UDP | Disable-NetFirewallRule
В списке служб Windows есть еще одна служба SNMP Trap. Она используется для получения сообщений от других SNMP агентов и пересылки на SNMP сервера (обычно это система мониторинга, опрашивающая устройства по SNMP, например PRTG или Zabbix).
Если вы настраиваете SNMP на Windows Server Core, вы не сможете использовать графический интерфейс службы SNMP для настройки ее параметров. Вместо этого придется вносить изменения в реестр с помощью PowerShell. Настройки службы SNMP хранятся в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters.
Следующие команды зададут описание агента:
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\services\SNMP\Parameters\RFC1156Agent" -Name "sysContact" -Value "[email protected]" -PropertyType REG_SZ
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\services\SNMP\Parameters\RFC1156Agent" -Name "sysLocation" -Value "MSK_Datacenter1" -PropertyType REG_SZ
Для каждой ловушки SNMP придется создать отдельный ключ в HKLM\SYSTEM\CurrentControlSet\services\SNMP\Parameters\TrapConfiguration с именем community.
New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\services\SNMP\Parameters\TrapConfiguration\public1"
Укажите разрешения для community:
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities" -Name "public1" -Value 4 -PropertyType DWord
Возможные значения:
- 1 — NONE
- 2 — NOTIFY
- 4 — READ ONLY
- 8 — READ WRITE
- 16 — READ CREATE
Для каждого community можно указать список серверов, с которых разрешено принимать запросы:
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\PermittedManagers" -Name "1" -Value "server1.winitpro.ru" -PropertyType REG_SZ
Перезапустите службу SNMP для применения новых настроек из реестра:
Get-Service SNMP|Restart Service
Если нужно распространить эти SNMP настройки на множество компьютеров/серверов Windows в домене, используйте возможности внесения изменений в реестр через GPO.
Проверить работу службы SNMP можно с помощью утилиты snmpwalk (доступна в любом Linux дистрибутиве):
# snmpwalk -v 2c -c public1 -O e 192.168.13.122
В этом примере мы опросили наш Windows хост через версию протокола SNMPv2.
Утилита вернула базовыую информацию о хосте (syscontact, sysname, syslocation) и довольно большое количество информации о состоянии сервера Windows.
На первый взгляд задача «включение SNMP на Windows» не должна быть сложной.
Как включить SNMP на Windows и как ее настроить будем разбираться по пунктам.
Способ №1 Включение SNMP в Windows.
Стандартным, идеальным для пользователя считается следующий способ, он работает в Windows 7 и некоторых сборках Windows 10:
1. Заходим в Панель Управления.
2. Находим меню «Установка и удаление программ» или «Программы и компоненты».
3. В открывшемся окне слева в списке переходим по ссылке «Включение или отключение компонентов Windows».
4. В списке «Компоненты Windows» ищем строчку «Компонент SNMP» и отмечаем галочкой — Нажимаем «ОК».
5. Осталось перейти в Службы (Панель управления — Администрирование — Службы) где выбираем среди всех служб «Служба SNMP» и запускаем.
Способ №2 Включение и настройка SNMP в Windows 10.
Если первый способ не увенчался успехом, то второй нам поможет:
1. Для начала нам нужно будет в меню Пуск найти и запустить WindowsPowerShell «ЗАПУСК ОТ ИМЕНИ АДМИНИСТРАТОРА»!!!.
2. Вводим команду для проверки доступности SNMP — службы :
Get-WindowsCapability -Online -Name "SNMP*"
Вывод команды будет следующим:
Name: SNMP.Client~~~~0.0.1.0 State: NotPresent DisplayName: SNMP-протокол.
Как видим в строке состояния указано, что SNMP-протокол не представлен.
P.S. Бывали случае, когда в строке состояния указано Installed, но все равно службы SNMP нет. В этом случае все равно переходим к следующему 3 пункту.
3. Устанавливаем службу SNMP командой:
Add-WindowsCapability -Online -Name "SNMP.Client~~~~0.0.1.0"
Видим процесс установки и получаем ответ:
Path: Online: True RestartNeeded: False
4. Снова проверим состояние службы SNMP командой из пункта 2:
Get-WindowsCapability -Online -Name "SNMP*"
Вывод команды:
Name: SNMP.Client~~~~0.0.1.0 State: Installed DisplayName: SNMP-протокол.
5. Обязательно перезагружаем компьютер.
После запуска переходим в Службы и находим «Служба SNMP».
Заходим в свойства службы SNMP. Если состояние службы остановлена, нужно запустить ее кнопкой «Запустить» и в меню «Тип запуска» выбираем «Автоматически».
Способ 3. Как установить SNMP на Windows Server.
1. Включить SNMP можно в «Параметры» — раздел «Приложения и возможности»- ссылка «Дополнительные возможности».
2. В окне «Дополнительные возможности» нажимаем «Добавить компонент» и выбираем в списке «SNMP-протокол» — Установить.
3. Перезагружаем систему.
Как настроить SNMP в Windows.
Необходимо найти службу «Служба SNMP» и открыть свойства службы.
— На вкладке «Безопасность» установим флажок «Посылать ловушку проверки подлинности».
— Нажмем кнопку «Добавить» для настройки «SNMP Community».
— Выбираем уровень доступа (None, Notify, READ ONLY, READ WRITE, READ CREATE). Для мониторинга состояния сервера достаточно выбрать Read Only.
— По-умолчанию community чаще всего указывается public для уровня READ ONLY или private для Read Write.
— Ниже есть пункт «Принимать пакеты SNMP от любого узла» и «Принимать пакеты SNMP от следующих узлов». Здесь вы можете указать конкретный адрес вашего сервера мониторинга, который будет собирать данные или оставить 1 вариант, если вы хотите, что бы не было ограничений по ip-адресу.
— Сохраняем изменения и перезапускаем службу SNMP.
Обновив Windows 10 до сборки 1809 или выше, вы можете столкнуться с проблемами управления подключенными к локальной сети устройствами. Это не баг, просто начиная с версии 1809, в Windows 10 разработчиками отключен SNMP — сетевой протокол, используемый для мониторинга и управления различными сетевыми устройствами, начиная от коммутаторов и заканчивая клиентскими компьютерами.
Сам компонент SNMP, тем не менее, присутствует в системе, и вы без особых усилий можете его включить, причем разными способами.
Проверить, задействован ли он в Windows 10 очень просто, для этого нужно открыть оснастку «Компоненты Windows» и посмотреть, установлена ли галочка в чекбоксе SNMP-протокол.
Если да, открываем оснастку управления службами, находим там службу SNMP и убеждаемся, что она запущена.
Если служба неактивна, запускаем ее и устанавливаем тип запуска «Автоматически».
Если вы работаете в Windows 10 1903, включить SNMP можно в Параметрах через раздел «Приложения и возможности». Откройте его, нажмите ссылку «Дополнительные возможности».
А затем «Добавить компонент».
В открывшемся списке найдите SNMP-протокол, кликните по нему и нажмите появившуюся кнопку «Установить».
Настройки должны вступить в силу сразу, но не исключено, что понадобится перезагрузка компьютера.
Загрузка…
If you don’t know how to install and configure SNMP on Windows 10, here are some ways you can get everything up and running.
Simple Network Management Protocol (SNMP) is an application layer protocol that allows network devices to share information, regardless of the differences in hardware or software. In absence of SNMP, network management tools are unable to identify devices, record network changes, monitor the performance of the network, or ascertain a network device’s status in real-time.
Earlier, you could use the Turn Windows Features on and off section in Control Panel to enable or disable SNMP. Starting Windows 1803 and later, Microsoft has deprecated the feature because of the associated security risks and recommends using the Common Information Model (CIM) instead. Regardless, if you want to install and enable SNMP on your PC, we’ll show you how you can.
How to Enable SNMP From the Settings
SNMP is available as an optional feature on Windows 10. You can enable optional features by navigating to Settings > Apps > Apps & features > Optional features. Click on Add a feature and search for snmp. Select Simple Network Management Protocol (SNMP) and WMI SNMP Provider and click on Install.
When you’re done, verify if SNMP appears in the Services console.
How to Enable SNMP Using PowerShell
To enable SNMP via PowerShell, first ensure that your computer has internet access. If it does, run an elevated PowerShell by pressing Win + X and selecting Windows PowerShell (Admin). Execute the following command to install the SNMP servers from Microsoft’s servers:
Add-WindowsCapability -Online -Name "SNMP.Client----0.0.1.0"
Alternatively, you can also install SNMP using the DISM tool with the following command:
DISM /online /add-capability /capabilityname:SNMP.Client----0.0.1.0
Once you’ve executed either command (Add-WindowsCapability or DISM) successfully, verify that the SNMP service has been install with the following command:
Get-WindowsCapability -Online -Name "SNMP*"
How to Solve Error Code 0x800f0954
If running the command gives you an error message that says «Add-WindowsCapability failed error. Error code = 0x800f0954«, it’s probably because your computer pulls Windows updates from the internal WSUS server instead of the Microsoft Update servers.
You can fix this error by bypassing WSUS and pull installation files for SNMP service from Microsoft Update servers. To do this, follow these steps:
- Execute the following command to bypass WSUS:
reg add "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdateAU" /v UseWUServer /t REG_DWORD /d 0 /f
This command adds a DWORD value in the «HKEY_LOCAL_MACHINE… \WindowsUpdateAU» registry location and sets its value to 0.
- Restart the Windows Update service by executing the following 3 commands:
netshh winhttp reset policy
net stop wuauserv
net start wuauserv - Try installing SNMP again using the Add-WindowsCapability command. If it works, undo the changes you made in the registry in step 1 by executing the following command:
reg add "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdateAU" /v UseWUServer /t REG_DWORD /d 1 /f
- Restart the Windows Update service using the commands from step 2.
How to Configure SNMP From Services Panel
Now that you have the SNMP service installed on your PC, let’s configure it.
To start, verify that the SNMP services (SNMP Service and SNMP Trap) are running. Press Win + R, type services.msc, and press Enter to launch the Services panel. Look for both SNMP services and check if they appear in the list.
Also, check if the SNMP Service is running. If it’s not, double-click on the service and press Start. Change the Startup type to Automatic to automatically run the service from the next startup.
Next, Switch to the Agent tab and fill in your Contact and Location fields with your name and location. In the Service section, check the boxes for services from which you want to collect data for forwarding it to the monitoring device.
Now, move over to the Security tab.
Add the names of the SNMP hosts you want to authenticate in the Accepted community names list. You have the option to provide None, Notify, READ ONLY, READ WRITE, or READ CREATE authentication to the communities.
Next, add the servers from which you want to accept SNMP packets in the next box, and make sure the Accept SNMP packets from these hosts radio button is selected. The Accept SNMP packets from any host option removes all IP restrictions and allows all hosts to send SNMP packets. Watch out, though; this isn’t a safe option to allow, especially on public computers.
When you’re done, press Apply, return to the General tab to restart the service (Click on Stop and then Start), and press OK to exit. Your final step is to open SNMP ports: UDP 161 (SNMP) and UDP 162 (SNMPTRAP). To do this, execute the following commands:
netsh advfirewall firewall add rule name="SNMP UDP Port 161 In" dir=in action=allow protocol=UDP localport=161
netsh advfirewall firewall add rule name="SNMPTRAP UDP Port 162 In" dir=in action=allow protocol=UDP localport=162
netsh advfirewall firewall add rule name="SNMP UDP Port 161 Out" dir=out action=allow protocol=UDP localport=161
netsh advfirewall firewall add rule name=" SNMPTRAP UDP Port 162 Out" dir=out action=allow protocol=UDP localport=162
How to Configure SNMP from Group Policy Editor
You can change Group Policy Object (GPO) parameters to centrally configure SNMP parameters. Launch the Local Group Policy Editor and navigate to Computer Configuration > Administrative Templates > Network > SNMP to configure the parameters.
On the right pane, you’ll see the following:
- Specify communities: permits the addition and authentication of communities that can send SNMP requests.
- Specify permitted managers: permits the addition of hosts that can send SNMP packets to your computer.
- Specify traps for public community: this allows you to configure the name of the hosts the receive trap messages sent by the SNMP service.
Your SNMP Service Is Now Up and Running
Hopefully, things were smooth sailing and you were able to install and configure SNMP on your computer. It’s a little complicated to get running, but hopefully one of the above tricks worked for you.
Network monitoring is important regardless of if you’re at work or resting at home. If you think someone in your family is draining your data caps, or you suspect that malware has made its way onto your computer, you can use tools to track the data moving around your network and catch any greedy culprits.