OSSEC. AlmaLinux 8. Установка и настройка
Описание
Установка и настройка OSSEC сервера и OSSEC агента
OSSEC сервер
Установим rsyslog (по-умолчанию в AlmaLinux он не установлен, поэтому, например, файла /var/log/secure, в который пишутся попытки доступа по SSH, в системе не будет пока не установлена rsyslog)
dnf install -y rsyslog
systemctl enable rsyslog
systemctl start rsyslog
Установка OSSEC сервера
wget -q -O - https://updates.atomicorp.com/installers/atomic | sudo bash
dnf install -y ossec-hids-server
nano /var/ossec/etc/ossec.conf
<ossec_config>
<global>
<email_notification>yes</email_notification>
<email_to>cless@cless.pro</email_to>
<smtp_server>mail.cless.pro</smtp_server>
<email_from>cless@cless.pro</email_from>
</global>
...
<syscheck>
<!-- Frequency that syscheck is executed - default to every 22 hours -->
<frequency>79200</frequency>
<alert_new_files>yes</alert_new_files>
<!-- мониторинг новых файлов в директориях в реальном времени -->
<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>
</syscheck>
...
<alerts>
<!-- минимальный уровень логов, при котором срабатывает тревога и отправляется почта -->
<log_alert_level>1</log_alert_level>
<email_alert_level>1</email_alert_level>
</alerts>
...
</ossec_config>
systemctl enable ossec-hids
systemctl start ossec-hids
systemctl status ossec-hids
-ИЛИ-
/var/ossec/bin/ossec-control start
/var/ossec/bin/ossec-control stop
/var/ossec/bin/ossec-control restart
/var/ossec/bin/ossec-control status
Создаем ключи для агентов
openssl genrsa -out /var/ossec/etc/sslmanager.key 2048
openssl req -new -x509 -key /var/ossec/etc/sslmanager.key -out /var/ossec/etc/sslmanager.cert -days 3650
Запускаем утилиту для принятия агентов
/var/ossec/bin/ossec-authd -n
/var/ossec/bin/ossec-authd -p 1515 -n >/dev/null 2>&1 &
OSSEC агент
https://www.ossec.net/docs/programs/ossec-authd.html
Установка
wget -q -O - https://updates.atomicorp.com/installers/atomic | sudo bash
dnf install -y ossec-hids-agent
Подключение к серверу
/var/ossec/bin/agent-auth -m <ossec_server_ip> -p 1515
Конфигурация агента
nano /var/ossec/etc/ossec-agent.conf
... <client> <server-ip>OSSEC-SERVER_IP</server-ip> </client> ...
Запуск службы
systemctl enable ossec-hids
systemctl start ossec-hids
systemctl status ossec-hids
OSSEC сервер
Завершаем утилиту для подключения агентов
killall ossec-authd
Показать агентов
/var/ossec/bin/agent_control -l
Тестирование сервера
При перезапуске службы придет письмо
Пробуем зайти на сервер с агентом по ssh с неправильным паролем - придет письмо, в файле /var/ossec/logs/alerts/alerts.log будет примерно такой лог:
** Alert 1655311057.939: - syslog,sshd,authentication_failed,
2022 Jun 15 19:37:37 ossec01->/var/log/secure
Rule: 5716 (level 5) -> 'SSHD authentication failed.'
Src IP: 192.168.166.52
User: root
Jun 15 19:37:35 ossec01 sshd[3393]: Failed password for root from 192.168.166.52 port 53436 ssh2
Пробуем создать новый файл в одной из мониторящихся директорий или изменить файл - придет письмо, в файле /var/ossec/logs/alerts/alerts.log будет примерно такой лог:
** Alert 1655311128.1528: mail - ossec,syscheck,
2022 Jun 15 19:38:48 ossec01->syscheck
Rule: 550 (level 7) -> 'Integrity checksum changed.'
Integrity checksum changed for: '/etc/ld.so.cache'
Size changed from '17627' to '17719'
Old md5sum was: '7c5e3ab07545ff7f4e69b1111297c1ad'
New md5sum is : '3a17f34da4de59474fbbc13a11d60cf0'
Old sha1sum was: 'c80eca0e1a3f72bf67c070e5995b2350355ffdc0'
New sha1sum is : '553b01c36025326057b4e1aa16bfc5bc59567f50'
Тестирование машины-клиента с агентом
Пробуем зайти на МАШИНУ-АГЕНТ по ssh с неправильным паролем - придет письмо, на OSSEC сервере в файле /var/ossec/logs/alerts/alerts.log будет примерно такой лог (где centos7-test01 - имя хоста агента):
** Alert 1655312384.3212: - syslog,sshd,authentication_failed,
2022 Jun 15 19:59:44 (centos7-test01) any->/var/log/secure
Rule: 5716 (level 5) -> 'SSHD authentication failed.'
Src IP: 192.168.17.250
User: root
Jun 15 19:59:42 centos7-test01 sshd[3400]: Failed password for root from 192.168.17.250 port 38700 ssh2