Файл /etc/aide.conf#

aide.conf - это конфигурационный файл для AIDE (Advanced Intrusion Detection Environment - расширенной среды обнаружения вторжений), используемый для инициализации/проверки базы данных AIDE.

Типы строк в aide.conf:

  • параметры конфигурации - используются для установки параметров конфигурации и определения групп;

  • правила - используются для указания того, какие файлы добавляются в базу данных;

  • строки макроса - определяют/отменяют определение переменных в конфигурационном файле;

  • строки, начинающиеся с # - игнорируются как комментарии.

Примеры записей в aide.conf#

Примеры записей для каталогов, используемых aide.conf:

  • для базы данных - @@define DBDIR /var/lib/aide;

  • для журнала - @@define LOGDIR /var/log/aide.

Примеры параметров конфигурации aide.conf:

  • database=file:@@{DBDIR}/aide.db.gz - местоположение считываемой базы данных;

  • database_out=file:@@{DBDIR}/aide.db.new.gz - местоположение базы данных для записи;

  • gzip_dbout=yes - следует ли архивировать выходные данные в базу данных в формате gzip (по умолчанию false);

  • verbose=5 - уровень детализации выводимой информации (по умолчанию 5).

Пример параметра отчетов aide.conf: report_url - указание места для записи выходных данных, например, report_url=file:@@{LOGDIR}/aide.log (файл), report_url=stdout (стандартный вывод).

Примеры атрибутов правил aide.conf по умолчанию:

  • p - разрешения;

  • i - индексный дескриптор;

  • n - число ссылок;

  • u - пользователь;

  • g - группа;

  • s - размер;

  • b - количество блоков;

  • m - время модификации;

  • a - время доступа;

  • c - время внесения изменений;

  • S - изменение атрибутов SELinux;

  • acl - список контроля доступа;

  • selinux - контекст безопасности SELinux;

  • xattrs - расширенные файловые атрибуты;

  • md5 - контрольная сумма md5;

  • sha1 - контрольная сумма sha1;

  • sha256 - контрольная сумма sha256;

  • sha512 - контрольная сумма sha512;

  • rmd160 - контрольная сумма rmd160;

  • tiger - контрольная сумма tiger;

  • haval - контрольная сумма haval (только MHASH - библиотека хеш-алгоритмов);

  • gost - контрольная сумма gost (только MHASH);

  • crc32 - контрольная сумма crc32 (только MHASH);

  • whirlpool - контрольная сумма whirlpool (только MHASH).

Примеры групп атрибутов:

  • R - p+i+n+u+g+s+m+c+acl+selinux+xattrs+md5;

  • L - p+i+n+u+g+acl+selinux+xattrs;

  • E - пустая группа;

  • > - растущий файл журнала - p+u+g+i+n+S+acl+selinux+xattrs.

Можете создавать аналогичные пользовательские правила, например:

  • Для указания соответствующих алгоритмов вычисления дополнительных хешей используйте:

    ALLXTRAHASHES = sha1+rmd160+sha256+sha512+tiger
    
  • Для указания всех изменений, кроме времени доступа, используйте:

    EVERYTHING = R+ALLXTRAHASHES
    

Рекомендуемыми правилами являются:

  • NORMAL = R+sha512 или NORMAL = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha512 - правило для обычного режима загрузки;

  • DIR = p+i+n+u+g+acl+selinux+xattrs - запрет на создание хешей для каталогов;

  • PERMS = p+u+g+acl+selinux+xattrs - только контроль доступа;

  • LOG = p+u+g+n+S+acl+selinux+xattrs - log-файлы;

  • CONTENT = sha512+ftype - с указанием типа файла;

  • CONTENT_EX = sha512+ftype+p+u+g+n+acl+selinux+xattrs - расширенное содержимое + тип файла + доступ.

Некоторые файлы обновляются автоматически, изменяя inode/ctime/mtime. Для того, чтобы узнать, когда изменилось содержание, используйте:

DATAONLY =  p+n+u+g+s+acl+selinux+xattrs+sha512

Для сохранения в базе данных каталогов с соответствующими правилами используйте:

/boot       CONTENT_EX
/opt        CONTENT

При указании на постоянные изменения файлов и необходимости проверки разрешений используйте:

/root/\..* PERMS
!/root/.xauth*

В ином случае - /root   CONTENT_EX.

Если данные слишком изменчивы и не подлежат добавлению в базу данных, то используйте !:

!/usr/src
!/usr/tmp

В ином случае - /usr    CONTENT_EX.

Примеры надежных баз данных, из которых регулярно обновляемые обозначены $:

/etc/hosts$      CONTENT_EX
/etc/host.conf$  CONTENT_EX
/etc/hostname$   CONTENT_EX
/etc/issue$      CONTENT_EX
/etc/issue.net$  CONTENT_EX
/etc/protocols$  CONTENT_EX
/etc/services$   CONTENT_EX
/etc/localtime$  CONTENT_EX
/etc/alternatives CONTENT_EX
/etc/sysconfig   CONTENT_EX
/etc/mime.types$ CONTENT_EX
/etc/terminfo    CONTENT_EX
/etc/exports$    CONTENT_EX
/etc/fstab$      CONTENT_EX
/etc/passwd$     CONTENT_EX
/etc/group$      CONTENT_EX
/etc/gshadow$    CONTENT_EX
/etc/shadow$     CONTENT_EX
/etc/subgid$     CONTENT_EX
/etc/subuid$     CONTENT_EX
/etc/security/opasswd$ CONTENT_EX
/etc/skel        CONTENT_EX
/etc/sssd        CONTENT_EX
/etc/machine-id$ CONTENT_EX
/etc/swid        CONTENT_EX
/etc/system-release-cpe$ CONTENT_EX
/etc/shells$     CONTENT_EX
/etc/tmux.conf$  CONTENT_EX
/etc/xattr.conf$ CONTENT_EX

Примеры сетевых правил:

/etc/firewalld      CONTENT_EX
!/etc/NetworkManager/system-connections
/etc/NetworkManager CONTENT_EX
/etc/networks$ CONTENT_EX
/etc/dhcp CONTENT_EX
/etc/wpa_supplicant CONTENT_EX
/etc/resolv.conf$ DATAONLY
/etc/nscd.conf$ CONTENT_EX

Примеры правил для логинов и учетных записей:

/etc/login.defs$ CONTENT_EX
/etc/libuser.conf$ CONTENT_EX
/var/log/faillog$ PERMS
/var/log/lastlog$ PERMS
/var/run/faillock PERMS
/etc/pam.d CONTENT_EX
/etc/security CONTENT_EX
/etc/securetty$ CONTENT_EX
/etc/polkit-1 CONTENT_EX
/etc/sudo.conf$ CONTENT_EX
/etc/sudoers$ CONTENT_EX
/etc/sudoers.d CONTENT_EX

Примеры правил для файлов запуска Shell/X:

/etc/profile$ CONTENT_EX
/etc/profile.d CONTENT_EX
/etc/bashrc$ CONTENT_EX
/etc/bash_completion.d CONTENT_EX
/etc/zprofile$ CONTENT_EX
/etc/zshrc$ CONTENT_EX
/etc/zlogin$ CONTENT_EX
/etc/zlogout$ CONTENT_EX
/etc/X11 CONTENT_EX

Примеры правил для пакетного менеджера Pkg:

/etc/dnf CONTENT_EX
/etc/yum.conf$ CONTENT_EX
/etc/yum CONTENT_EX
/etc/yum.repos.d CONTENT_EX

Примеры правил для отчетов по аудиту:

/var/log/audit PERMS
/etc/audit CONTENT_EX
/etc/libaudit.conf$ CONTENT_EX
/etc/aide.conf$  CONTENT_EX

Примеры правил для системных журналов:

/etc/rsyslog.conf$ CONTENT_EX
/etc/rsyslog.d CONTENT_EX
/etc/logrotate.conf$ CONTENT_EX
/etc/logrotate.d CONTENT_EX
/etc/systemd/journald.conf$ CONTENT_EX
/var/log LOG+ANF+ARF
/var/run/utmp LOG

Примеры правил для учетных цифровых идентификационных данных:

/etc/pkcs11 CONTENT_EX
/etc/pki CONTENT_EX
/etc/crypto-policies CONTENT_EX
/etc/certmonger CONTENT_EX
/var/lib/systemd/random-seed$ PERMS

Примеры правил для системы инициализации:

/etc/systemd CONTENT_EX
/etc/rc.d CONTENT_EX
/etc/tmpfiles.d CONTENT_EX

Примеры правил для конфигурации загрузки:

/etc/default CONTENT_EX
/etc/grub.d CONTENT_EX
/etc/dracut.conf$ CONTENT_EX
/etc/dracut.conf.d CONTENT_EX

Примеры правил для компоновщика glibc:

/etc/ld.so.cache$ CONTENT_EX
/etc/ld.so.conf$ CONTENT_EX
/etc/ld.so.conf.d CONTENT_EX
/etc/ld.so.preload$ CONTENT_EX

Примеры правил для конфигурации ядра:

/etc/sysctl.conf$ CONTENT_EX
/etc/sysctl.d CONTENT_EX
/etc/modprobe.d CONTENT_EX
/etc/modules-load.d CONTENT_EX
/etc/depmod.d CONTENT_EX
/etc/udev CONTENT_EX
/etc/crypttab$ CONTENT_EX

Примеры правил для демонов:

  • cron jobs (запуск запланированных заданий):

    /etc/at.allow$ CONTENT
    /etc/at.deny$ CONTENT
    /etc/anacrontab$ CONTENT_EX
    /etc/cron.allow$ CONTENT_EX
    /etc/cron.deny$ CONTENT_EX
    /etc/cron.d CONTENT_EX
    /etc/cron.daily CONTENT_EX
    /etc/cron.hourly CONTENT_EX
    /etc/cron.monthly CONTENT_EX
    /etc/cron.weekly CONTENT_EX
    /etc/crontab$ CONTENT_EX
    /var/spool/cron/root CONTENT
    
  • time keeping (синхронизация часов в гостевой ОС при виртуализации):

    /etc/chrony.conf$ CONTENT_EX
    /etc/chrony.keys$ CONTENT_EX
    
  • mail (получение/отправка сообщений):

    /etc/aliases$ CONTENT_EX
    /etc/aliases.db$ CONTENT_EX
    /etc/postfix CONTENT_EX
    
  • ssh (удаленное соединение с клиентами):

    /etc/ssh/sshd_config$ CONTENT_EX
    /etc/ssh/ssh_config$ CONTENT_EX
    
  • stunnel (шифрование сетевого трафика):

    /etc/stunnel CONTENT_EX
    
  • printing (печать):

    /etc/cups CONTENT_EX
    /etc/cupshelpers CONTENT_EX
    /etc/avahi CONTENT_EX
    
  • web server (обслуживание HTTP-запросов от клиентов):

    /etc/httpd CONTENT_EX
    
  • dns (обслуживание DNS-запросов от клиентов):

    /etc/named CONTENT_EX
    /etc/named.conf$ CONTENT_EX
    /etc/named.iscdlv.key$ CONTENT_EX
    /etc/named.rfc1912.zones$ CONTENT_EX
    /etc/named.root.key$ CONTENT_EX
    
  • xinetd (управление сетевыми соединениями):

    /etc/xinetd.conf$ CONTENT_EX
    /etc/xinetd.d CONTENT_EX    
    
  • IPsec (организация защищенного соединения):

    /etc/ipsec.conf$ CONTENT_EX
    /etc/ipsec.secrets$ CONTENT_EX
    /etc/ipsec.d CONTENT_EX
    
  • USB guard (контроль активности механизма управления USB-портами при старте ОС):

    /etc/usbguard CONTENT_EX
    

Правило для всего остального - /etc    PERMS.