SNMP ( Simple Network Management Protocol — простой протокол сетевого управления ) — стандартный интернет-протокол для управления устройствами в IP-сетях на основе архитектуры TCP/UDP. К поддерживающим SNMP устройствам относятся маршрутизаторы, коммутаторы, серверы, рабочие станции, принтеры и другие. Протокол обычно используется в системах сетевого управления для контроля подключённых к сети устройств на предмет условий, которые требуют внимания администратора.
В этом руководстве я опишу процесс установки и настройки службы SNMP v3 в CentOS 7.
Установка SNMP
Установка SNMP доступна из стандартного репозитория CentOS.
Для установки выполняем:
# yum install net-snmp net-snmp-utils net-snmp-devel
Настройка
Для работы по SNMP v3 нам требуется авторизация, потому нам необходимо добавить пользователя и мы рассмотрим несколько способов:
- Командная строка
- Интерактивная
- Вручную
1 . Командная строка
Добавить пользователя мы можем из командной строки используя net-snmp-config —create-snmpv3-user
# Полный синтаксис
net-snmp-create-v3-user [-ro] [-A authpass] [-X privpass] [-a MD5|SHA] [-x DES|AES] [username]
# В нашем случае выполняем
# Шифрование мы не задали, по умолчанию будет DES
net-snmp-config --create-snmpv3-user -a MD5 -A pass123 user1
2 . Интерактивная
Добавить пользователя мы можем интерактивным способом, используя команду net-snmp-create-v3-user
# Выполняем
net-snmp-create-v3-user
Введите имя пользователя SNMPv3 для создания:
user01
Введите пароль аутентификации:
pass123
Введите пароль шифрования:
[нажмите return для повторного использования пароля аутентификации]
Добавлена следующую строку в /var/lib/net-snmp/snmpd.conf:
createUser user01 MD5 "pass01" DES pass01
Добавлена следующую строку в /etc/snmp/snmpd.conf:
rwuser user01
3 . Вручную
Чтобы добавить пользователя вручную — необходимо отредактировать следующие файлы:
- /var/lib/net-snmp/snmpd.conf
- /etc/snmp/snmpd.conf
# Добавляем в /var/lib/net-snmp/snmpd.conf
createUser user01 MD5 "pass123" DES pass123
# Добавляем /etc/snmp/snmpd.conf
rwuser pass123
Старт сервиса SNMP
# Включаем запуск SNMP при старте системы и стартуем
chkconfig snmpd on
service snmpd start
Настройка Firewall
По умолчанию в CentOS используется FirewallD — это новая служба для динамического управления межсетевым экраном с поддержкой доверенных зон сетевых соединений или интерфейсов.
# Разрешаем входящие 161 порт UDP
firewall-cmd --permanent --zone=public --add-port=161/udp
# Для iptables
iptables -A INPUT -p udp -s 192.168.100.81 --dport 161 -m state --state NEW,ESTABLISHED -j ACCEPT
Траблшутинг
# Для проверки выполним
snmpwalk -v3 -u user01 -l authNoPriv -a MD5 -A pass123 localhost
# -v3 - указывает версию
# -u - указывает имя пользователя
# -l - указывает уровень безопасности
# -a - указывает протокол аутентификации
# -A - указывает пароль