понедельник, 17 августа 2009 г.

Загрузка антивирусов из сети через PXE

Предпосылки:
  • достаточно большая локальная сеть, отстутствие возможности ограничить пользователей так, чтобы вообще предотвратить возможность заражения вирусами
  • лень каждый день обновлять образы Rescue CD с новыми антивирусными базами и нежелание носить с собой такие диски
  • желание помочь сисадминам, которым иногда приходится проверять зараженные машины

Как известно, уже зараженную машину вирусами лучше проверять загрузившись с отдельного носителя, в качестве такого носителя была выбрана загрузка из сети. Для установки были рассмотрены следующие антивирусы (рассматривались только диски на основе Linux в связи с их модульностью и более простой загрузкой из сети):


  1. Avira Rescue CD
  2. При загрузке пытается найти свои базы на всех смонтированных дисках, модулей ядра для поддержки сети в загрузчике обнаружено не было, в связи с этим была отложена в сторону для дальнейшего рассмотрения

  3. BitDefender Rescue CD 2.0.0_3_08_2009
  4. Создан на основе KNOPPIX 5.1.1, в загрузчике поддержка сети так же отсуствует, замена загрузчика ничего не дала

  5. Kaspersky Rescue 2008
  6. DrWeb Live CD
  7. Panda Safedisk32
  8. F-Secure Rescue CD (3.10 beta)
  9. Так же как и BitDefender создан на основе KNOPPIX, но уже 6.1, замена загрузчика прошла нормально, поэтому он и был выбран в качестве первого подопытного кролика


При описании предполагается, что у вас уже есть настроенные TFTP и NFS серверы


Описание действий:
  1. создать каталог на TFTP сервере, откуда вы будете загружать антивирус, например f-secure
  2. из образа ISO скопировать каталог KNOPPIX в этот каталог
  3. найти диск с KNOPPIX 6.1 (скачать из сети, вынуть из тумбочки и т.п.), загрузится с него, запустить Terminal Server, найти в каталоге /tftpboot файлы vmlinuz и miniroot.gz и скопировать их в каталог f-secure на вашем tftp сервере
  4. добавить в /etc/exports

    /srv/tftp/f-secure *(ro,no_subtree_check,no_root_squash,async)

    (возможно заменив каталоги на свои)

  5. добавить в меню загрузки tftp сервера

  6. LABEL fsecure
    KERNEL f-secure/vmlinuz
    APPEND nfsdir=Your.NFS.IP:/srv/tftp/f-secure ramdisk_size=100000 lang=en apm=power-off vga=791 initrd=f-secure/miniroot.gz nomce loglevel=0 BOOT_IMAGE=knoppix


После этих действий с tftp сервера сможет загрузиться антивирус... правда со старыми базами. Для регулярного обновления баз:

  1. на tftp сервере периодически (я это обычно делаю раз в сутки), запускаете скрипт вида:

  2. cd /srv/tftp/f-secure
    wget -N http://download.f-secure.com/latest/fsdbupdate9.run

  3. загружаете антивирус через PXE на машине, на которой присуствуют жесткие диски с возможностью записи, желательно с разделами ext2/ext3
  4. монтируете раздел с системой, находящейся на жестком диске, в разделе должно быть свободного места не менее 1 Гб и копируете туда системные данные


  5. mount /mnt/sda1
    mkdir -p /mnt/sda1/knx/source
    cp -Rp /KNOPPIX/* /mnt/sda1/knx/source

  6. изменяете файл /etc/init.d/fsusbstorage, заменив у него в конце вызов try_to_find_persistent_storage на :

  7. mount.nfs Your.NFS.IP:/srv/tftp/f-secure /mnt/hda
    /usr/bin/dbupdate /mnt/hda/fsdbupdate9.run

    и try_to_umount_usbstorage на

    umount /mnt/hda

  8. если после запуска этого файла появятся сообщения об успешном обновленнии антивирусной базы, значит вы все сделали правильно :)
  9. скопируйте исправленный файл

  10. cp /etc/init.d/fsusbstorage /mnt/sda1/knx/source/etc/init.d/fsusbstorage

  11. создайте новый образ KNOPPIX

  12. cd /mnt/sda1/knx/source
    mkisofs -R -U -V "KNOPPIX" -publisher "username" -hide-rr-moved -cache-inodes -no-bak -pad ./ | nice -n 5 ./usr/bin/create_compressed_fs - 65536 > ../KNOPPIX

  13. получившийся файл KNOPPIX скопируйте на ваш tftp сервер на место старого (/srv/tftp/f-secure/KNOPPIX/KNOPPIX)
Вроде все... правда обновляться оно может относительно долго



1 комментарий:

  1. Вот трактат по изготовлению Kaspersky для загрузки используя PXE. http://www.zlonet.ru/page/kaspersky-rescue-pxe

    ОтветитьУдалить