Провека целостности пакетов в Debian / Ubuntu / RHEL / CentOS

linuxconfСегодня я продемонстрирую вам 2 команды  для Debian и Ubuntu, RHEL и CentOS, которые проверят целостность бинарных файлов в нашей Linux-системе. Способ описан в одном из последних номеров журнала Хакер.

Для чего это может понадобится вариантов множество, начиная от взломанной системы(когда какие-то бинарники модифицированы) и заканчивая просто “шаловливыми рученками” =).

Debian / Ubuntu

Установим пакет debsums, который содержит  md5-checksums:

sudo apt-get install -y debsums

Проверить систему можно командой:

sudo debsums -c

Итоговая команда для переустановки всех модифицированных бинарников для Debian-подобных систем будет выглядеть так:

sudo apt-get install -y --reinstall $(dpkg -S $(debsums -c) | cut -d : -d 1| uniq -u)

RHEL / CentOS

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

sudo rpm -Va

Пример работы команды будет такой:

S.5....T c /var/lib/nfs/rmtab
S.5..... c /etc/libvirt/libvirtd.conf
S.5..... c /etc/libvirt/qemu.conf
S.5..... /etc/rc.d/init.d/libvirtd

Буквы и цифры в начале имеют свои значения, по которым можно определить что случилось с файлом:

  • S – изменился начальный размер файла;
  • M – изменились права доступа или режим;
  • 5 – отличается контрольная сумма md5
  • D – отличается старший/младший номер файла устройства;
  • L – изменился путь ссылки;
  • U – отличается владелец(пользователь) файла;
  • G – изменился владелец группы;
  • T – отличается время изменения файла;

Помимо этих флагов, через два пробела есть еще символы, которые могут означать тип файла:

  • c – файл конфигурации;
  • g – файлы, изначально отсутствующие в пакете;
  • d – файл документации
  • l – файл лицензии
  • r – файл readme

Итоговая команда для переустановки всех модифицированных бинарников для RHEL-подобных систем будет выглядеть так:

sudo yum reinstall -y $(rpm -qf $(rpm -Va | egrep "^S.{8} {4}.* | cut -d ' ' -f5) | uniq -u)

Рекомендуем почитать
Mount LVM Partition in the RHEL / CentOSМонтирование LVM в RHEL / CentOS

Mount LVM-partition in Linux differs from typical mounting of standard file system partition (for example, ext2 and ext3). Let's have Читать дальше...

Обновление с CentOS 5.8 (5.0-5.7) до CentOS 5.9

Процесс обновления CentOS достаточно прост. Для начала получим права root: su - ## или ## sudo -i Скопируем в надежное Читать дальше...

Установка Intel Corporation WiFi Link 1000 Series в Linux

Установка драйвера для Intel Corporation WiFi Link 1000 Series происходит очень легко. Для этого нужно сконфигурировать и пересобрать ядро с Читать дальше...

Поделиться

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *