Контроль целостности системы штатными средствами |
[исправить] |
Что делать если под рукой нет tripwire или osec, а кривой aide вы пользоваться не хотите.
Часть функций , таких как проверка прав доступа и изменение файлов, можно
реализовать штатными стедствами.
Вот маленький скрипт который помещается в crontab и позволяет это реализовать.
При желании его функции можно легко расширить.
#!/bin/bash
ulimit -t 20
checkdir="/bin /sbin"
filedb="/var/tmp/permsecdb"
email="test@test.ru"
out=$(
exec 2>&1
umask 266
find $checkdir -type f -printf "%m\t" -exec md5sum {} \; >$filedb.tmp
diff $filedb $filedb.tmp
mv -f $filedb.tmp $filedb
)
if [ "$out" ];then
(date; echo; echo "$out") |mail -s "Change permsec `hostname`" $email
fi
- ulimit лучше выставить не случай не предвиденных ситуаций.
- checkdir соответственно проверяемые директории
- filedb текстовой файл базы
- email куда посылать мыло
Если изменений в системе не было, то сообщения посылаться не будут.
Сообщение бывает 4 видов
1 - ошибки
2 - добавлен файл "> 644 d41d8cd98f00b204e9800998ecf8427e /bin/12"
3 - удален файл "< 755 c1a0ff878c603dd91f603059e9c1a0a1 /bin/12"
4 - изменен файл "
< 755 ce367ef1e2cca19e6216874cb8c09d96 /bin/12
---
> 755 c1a0ff878c603dd91f603059e9c1a0a1 /bin/12"
Успешного контроля.
|
|
|
|
Раздел: Корень / Программисту и web-разработчику / Shell / Готовые скрипты |