Настройка службы snmpd в операционной системе
23 ноября 2023
ID 222969
Для работы по протоколу SNMP с Kaspersky Security 10 для Linux Mail Server используется служба snmpd из состава операционной системы. Служба snmpd выступает в роли мастер-агента, принимая и обрабатывая запросы от систем мониторинга и других внешних потребителей по протоколу SNMP. Kaspersky Security 10 для Linux Mail Server подключается к службе snmpd в качестве субагента по протоколу AgentX через UNIX™-сокет.
Установка службы snmpd
Проверьте, что в вашей операционной системе установлена служба snmpd. Если службы нет, установите соответствующие пакеты.
Чтобы установить службу snmpd и вспомогательные утилиты в операционной системе Astra Linux Special Edition, используйте команду:
apt install snmp snmpd
Создание учетной записи пользователя для доступа к данным
Перед созданием учетной записи остановите службу snmpd.
Для безопасного доступа к данным по протоколу SNMPv3 с аутентификацией и шифрованием нужно создать учетную запись на стороне службы snmpd со следующими данными:
- Имя пользователя (чувствительно к регистру).
- Алгоритм аутентификации (MD5 или SHA, рекомендуется SHA).
- Пароль для аутентификации.
- Алгоритм шифрования (DES или AES, рекомендуется AES).
- Пароль для шифрования.
В целях безопасности рекомендуется использовать отдельные учетные записи на разных узлах кластера Kaspersky Security 10 для Linux Mail Server.
Создать учетную запись можно следующими способами:
- С помощью утилиты net-snmp-create-v3-user, если она есть в операционной системе.
- Вручную, добавив соответствующую директиву в конфигурационный файл службы snmpd.
Чтобы создать учетную запись пользователя с помощью утилиты net-snmp-create-v3-user, используйте команду
net-snmp-create-v3-user -ro -a <snmp_auth_algo> -x <snmp_priv_algo> <snmp_username>
Пароли для аутентификации и шифрования будут запрошены интерактивно.
Пример:
|
Чтобы создать учетную запись пользователя без утилиты:
- Создайте конфигурационный файл /var/lib/snmp/snmpd.conf с помощью команды:
touch /var/lib/snmp/snmpd.conf
- Добавьте в конфигурационный файл строку вида:
createUser <snmp_username> <snmp_auth_algo> "<snmp_auth_pass>" <snmp_priv_algo> "<snmp_priv_pass>"
Пример:
createUser MonitoringUser SHA "MonitoringAuthSecret" AES "MonitoringPrivSecret"
Создание учетной записи пользователя для приема SNMP-ловушек
Для приема SNMP-ловушек по протоколу SNMPv3 с аутентификацией и шифрованием нужно на стороне системы мониторинга создать учетную запись в контексте соответствующей службы (обычно это служба snmptrapd).
Учетная запись должна содержать следующие данные:
- Имя пользователя.
- Алгоритм аутентификации.
- Пароль для аутентификации.
- Алгоритм шифрования.
- Пароль для шифрования.
В целях безопасности нужно использовать разные учетные записи для доступа к данным и для приема SNMP-ловушек.
Рекомендуется создавать отдельные учетные записи для приема SNMP-ловушек с разных узлов кластера Kaspersky Security 10 для Linux Mail Server.
Инструкцию по созданию учетной записи пользователя для приема SNMP-ловушек см. в документации вашей системы мониторинга.
Настройка службы snmpd
Конфигурация службы snmpd хранится в файле /etc/snmp/snmpd.conf. Вы можете добавить нужные данные в существующий конфигурационный файл или создать новый конфигурационный файл и последовательно добавить в него строки, приведенные ниже.
Чтобы настроить службу snmpd:
- Если вы создали новый конфигурационный файл, убедитесь, что доступ к нему имеет только суперпользователь. При необходимости установите разрешения с помощью команд:
chown root:root /etc/snmp/snmpd.conf
chmod 600 /etc/snmp/snmpd.conf
- Укажите протокол, адрес сетевого интерфейса и номер порта, на котором служба snmpd будет принимать входящие запросы.
- Если вы хотите принимать запросы на всех сетевых интерфейсах, добавьте в конфигурационный файл следующие строки:
# Listen for incoming SNMP requests via UDP
agentAddress udp:161
- Если вы хотите принимать запросы только на локальном сетевом интерфейсе, например если система мониторинга установлена на этой же машине, добавьте строки:
# Listen for incoming SNMP requests via UDP
agentAddress udp:127.0.0.1:161
- Если вы хотите принимать запросы на всех сетевых интерфейсах, добавьте в конфигурационный файл следующие строки:
- Укажите путь и разрешения для UNIX-сокета, на котором служба snmpd будет принимать подключения от субагента по протоколу AgentX. Для этого добавьте в конфигурационный файл следующие строки:
# Listen for subagent connections via UNIX socket
master agentx
agentXSocket unix:/var/run/agentx-master.socket
agentXPerms 770 770 kluser klusers
- При необходимости вы можете указать описание системы, расположение системы, контактный адрес администратора. Для этого добавьте в конфигурационный файл следующие строки:
# Basic system information
sysDescr <system_description>
sysLocation <system_location>
sysContact <contact_address>
sysServices 72
- Укажите область OID-дерева, которая будет доступна вашей системе мониторинга по протоколу SNMP. Для доступа к данным приложения Kaspersky Security 10 для Linux Mail Server добавьте в конфигурационный файл следующие строки:
# Kaspersky Security for Linux Mail Server SNMP statistics
view monitoring included .1.3.6.1.4.1.23668.1463
- Вы можете дополнительно указать область OID-дерева с информацией об операционной системе, которую хранит служба snmpd. Эта область будет доступна вашей системе мониторинга.
Информация об операционной системе включает, например, данные об использовании процессора и оперативной памяти, данные о свободном месте на дисковых разделах, загрузке сетевых интерфейсов, список установленного программного обеспечения, список открытых сетевых соединений, список запущенных процессов. Эта информация может содержать конфиденциальные данные.
- Если вы хотите разрешить доступ только к общей информации о системе и данным об использовании памяти, процессора, сетевых и дисковых устройств, добавьте в конфигурационный файл следующие строки:
# SNMPv2-MIB - Basic system information
view monitoring included .1.3.6.1.2.1.1
# HOST-RESOURCES-MIB - CPU, Memory, Filesystems
view monitoring included .1.3.6.1.2.1.25.1
view monitoring included .1.3.6.1.2.1.25.2
view monitoring included .1.3.6.1.2.1.25.3
view monitoring included .1.3.6.1.2.1.25.5
# UCD-SNMP-MIB - Memory and CPU usage
view monitoring included .1.3.6.1.4.1.2021.4
view monitoring included .1.3.6.1.4.1.2021.10
view monitoring included .1.3.6.1.4.1.2021.11
# UCD-SNMP-DISKIO-MIB - Block devices I/O statistics
view monitoring included .1.3.6.1.4.1.2021.13
# IF-MIB - Network interfaces I/O statistics
view monitoring included .1.3.6.1.2.1.2
view monitoring included .1.3.6.1.2.1.31
- Если вы хотите разрешить доступ ко всей системной информации, добавьте в конфигурационный файл следующие строки:
# Allow access to the whole OID tree
view monitoring included .1
- Если вы хотите разрешить доступ только к общей информации о системе и данным об использовании памяти, процессора, сетевых и дисковых устройств, добавьте в конфигурационный файл следующие строки:
- Укажите режим доступа и область данных для созданной учетной записи. Для этого добавьте в конфигурационный файл следующие строки:
# Access control for SNMPv3 monitoring system user
rouser <snmp_username> priv -V monitoring
- Для отправки SNMP-ловушек укажите IP-адрес системы мониторинга и учетные данные пользователя для приема ловушек. Для этого добавьте в конфигурационный файл следующие строки:
# Send SNMPv3 traps to the monitoring system
trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u <trap_username> -a <trap_auth_algo> -A "<trap_auth_pass>" -x <trap_priv_algo> -X "<trap_priv_pass>" udp:<IP-address>:162
Служба snmpd будет настроена.
Для интеграции с несколькими системами мониторинга создайте отдельную учетную запись для каждой системы, укажите для учетных записей область доступных данных (директивы view и rouser) и настройте отправку SNMP-ловушек (директива trapsess).
Пример конфигурационного файла службы snmpd: # Listen for incoming SNMP requests via UDP agentAddress udp:161
# Listen for subagent connections via UNIX socket master agentx agentXSocket unix:/var/run/agentx-master.socket agentXPerms 770 770 kluser klusers
# Basic system information sysDescr Example Mail Gateway Server, Node 05 sysLocation Example Datacenter, Ground floor, B23-U45 sysContact Mail system administrator <admin@example.com> sysServices 72
# Kaspersky Security for Linux Mail Server SNMP statistics view monitoring included .1.3.6.1.4.1.23668.1463
# SNMPv2-MIB - Basic system information view monitoring included .1.3.6.1.2.1.1 # HOST-RESOURCES-MIB - CPU, Memory, Filesystems view monitoring included .1.3.6.1.2.1.25.1 view monitoring included .1.3.6.1.2.1.25.2 view monitoring included .1.3.6.1.2.1.25.3 view monitoring included .1.3.6.1.2.1.25.5 # UCD-SNMP-MIB - Memory and CPU usage view monitoring included .1.3.6.1.4.1.2021.4 view monitoring included .1.3.6.1.4.1.2021.10 view monitoring included .1.3.6.1.4.1.2021.11 # UCD-SNMP-DISKIO-MIB - Block devices I/O statistics view monitoring included .1.3.6.1.4.1.2021.13 # IF-MIB - Network interfaces I/O statistics view monitoring included .1.3.6.1.2.1.2 view monitoring included .1.3.6.1.2.1.31
# Access control for SNMPv3 monitoring system user rouser MonitoringUser priv -V monitoring
# Send SNMPv3 traps to the monitoring system trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u TrapUser -a SHA -A "TrapAuthSecret" -x AES -X "TrapPrivSecret" udp:10.16.32.64:162 |
Запуск новой конфигурации службы snmpd
Чтобы применить новую конфигурацию:
- Перезапустите службу snmpd с помощью команды:
systemctl restart snmpd
- Проверьте статус службы snmpd с помощью команды:
systemctl status snmpd
Статус должен быть
running
. - Разрешите автоматический запуск службы при старте операционной системы с помощью команды:
systemctl enable snmpd
- Если у вас используется сетевой экран в операционной системе или на сетевом оборудовании, добавьте соответствующие правила для пропуска пакетов протокола SNMP.
Служба snmpd будет запущена.
Проверка работоспособности службы snmpd
Для проверки работоспособности службы snmpd настройте использование SNMP в веб-интерфейсе Kaspersky Security 10 для Linux Mail Server и выполните запрос SNMP-данных с помощью утилиты snmpwalk.
Чтобы получить области SNMP-данных, предоставляемых приложением Kaspersky Security 10 для Linux Mail Server, выполните команду:
snmpwalk -v3 -l authPriv -u <snmp_username> -a <snmp_auth_algo> -A "<snmp_auth_pass>" -x <snmp_priv_algo> -X "<snmp_priv_pass>" <IP-адрес> .1.3.6.1.4.1.23668.1463
Пример: snmpwalk -v3 -l authPriv -u MonitoringUser -a SHA -A "MonitoringAuthSecret" -x AES -X "MonitoringPrivSecret" 127.0.0.1 .1.3.6.1.4.1.23668.1463 |