SNMP (Simple Network Management Protocol) — протокол для удалённого мониторинга и управления сетевыми устройствами (маршрутизаторами, коммутаторами, серверами и др.). Работает по модели «менеджер — агент» через UDP‑порты 161 (агент) и 162 (менеджер). Для Debian/Ubuntu: sudo apt update
sudo apt install snmp snmpd snmp-mibs-downloader Для CentOS/RHEL: sudo yum update
sudo yum install net-snmp net-snmp-utils
SNMP (Simple Network Management Protocol) — протокол для удалённого мониторинга и управления сетевыми устройствами (маршрутизаторами, коммутаторами, серверами и др.). Работает по модели «менеджер — агент» через UDP‑порты 161 (агент) и 162 (менеджер). Для Debian/Ubuntu: sudo apt update
sudo apt install snmp snmpd snmp-mibs-downloader Для CentOS/RHEL: sudo yum update
sudo yum install net-snmp net-snmp-utils
...Читать далее
SNMP в Linux: установка, настройка и использование
SNMP (Simple Network Management Protocol) — протокол для удалённого мониторинга и управления сетевыми устройствами (маршрутизаторами, коммутаторами, серверами и др.). Работает по модели «менеджер — агент» через UDP‑порты 161 (агент) и 162 (менеджер).
Версии SNMP
- SNMPv1 — базовая, слабая безопасность.
- SNMPv2c — улучшенная производительность, но аутентификация по «community string» (паролю).
- SNMPv3 — самая безопасная: поддержка аутентификации, шифрования и контроля доступа.
Компоненты
- SNMP‑менеджер — ПО для сбора данных (например, Zabbix, Nagios).
- SNMP‑агент — служба на управляемом устройстве (в Linux — snmpd).
- MIB (Management Information Base) — база объектов, описывающая параметры устройства.
- OID (Object Identifier) — уникальный числовой путь к параметру в MIB.
Установка SNMP
Для Debian/Ubuntu:
sudo apt update
sudo apt install snmp snmpd snmp-mibs-downloader
Для CentOS/RHEL:
sudo yum update
sudo yum install net-snmp net-snmp-utils
Настройка агента (snmpd)
- Создайте резервную копию конфига:sudo cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.backup
- Отредактируйте /etc/snmp/snmpd.conf:
Разрешите доступ с нужных IP (пример для локальной сети):com2sec localnet default 192.168.1.0/24
Задайте community string (аналог пароля) для чтения:rocommunity mysecret 192.168.1.0/24
Для SNMPv3 создайте пользователя (более безопасно):createUser snmpv3user SHA "authpass" AES "privpass" - Перезапустите службу:sudo systemctl restart snmpd
sudo systemctl enable snmpd # автостарт при загрузке - Откройте порты в firewall (если активен):
UFW (Ubuntu):sudo ufw allow 161/udp
sudo ufw reload
firewalld (CentOS/RHEL):sudo firewall-cmd --permanent --add-service=snmp
sudo firewall-cmd --reload
Тестирование
- Проверьте статус службы:sudo systemctl status snmpd
- Получите системные данные (SNMPv2c):snmpwalk -v 2c -c mysecret localhost .1.3.6.1.2.1.1
-v 2c — версия протокола;
-c mysecret — community string;
localhost — адрес устройства;
.1.3.6.1.2.1.1 — OID для системных параметров. - Проверьте конкретный OID (например, hostname):snmpget -v 2c -c mysecret localhost sysName.0
- Для SNMPv3 (с аутентификацией):snmpwalk -v 3 -u snmpv3user -a SHA -A "authpass" -x AES -X "privpass" localhost
Полезные команды
- Список всех OID:snmpwalk -v 2c -c mysecret localhost
- Информация о загрузке CPU:snmpget -v 2c -c mysecret localhost .1.3.6.1.4.1.2021.10.1.3.1.1.5.1
- Состояние интерфейсов:snmptable -v 2c -c mysecret localhost ifTable
Безопасность
- Используйте SNMPv3 вместо v1/v2c (аутентификация + шифрование).
- Ограничьте доступ по IP в snmpd.conf.
- Измените community string с public/private на сложный пароль.
- Мониторьте логи на подозрительные запросы:tail -f /var/log/syslog | grep snmp
Распространённые проблемы
- «Timeout» — проверьте:
запущен ли snmpd;
открыт ли порт 161 в firewall;
корректность community string/IP. - «Unknown OID» — убедитесь, что MIB‑файлы установлены (snmp-mibs-downloader).
- «Permission denied» — проверьте права доступа в snmpd.conf.
Дополнительные инструменты
- tkmib (GUI для просмотра MIB):sudo apt install tkmib # Debian/Ubuntu
sudo yum install net-snmp-gui # CentOS/RHEL - snmpbulkwalk — быстрый сбор данных по поддереву OID.
- snmpstatus — общая сводка о состоянии устройства.
Где искать OID
- В документации устройства.
- В файлах MIB (обычно в /usr/share/snmp/mibs/).
- Через snmpwalk с корневым OID .1.