Скрипт по обновлению антивирусных баз NOD32 под Linux (BASH): различия между версиями

Материал из Wiki МИАЦ ВО
Перейти к навигации Перейти к поиску
(Инсталяция)
Строка 1: Строка 1:
 
Вот написал скрипты по обновлению антивирусных баз NOD32 V2* и V3*. В описаниях, все что касается V3* - стоит в скобках.
 
Вот написал скрипты по обновлению антивирусных баз NOD32 V2* и V3*. В описаниях, все что касается V3* - стоит в скобках.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  Скрипт по обновлению антивирусных баз NOD32 под Linux (BASH)]
 +
 +
 
==Версии скрипта==
 
==Версии скрипта==
 
Буду тут выкладывать описание версий с датами для более удобного отслеживания за изменениями
 
Буду тут выкладывать описание версий с датами для более удобного отслеживания за изменениями
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V2]
 +
 +
 
===NOD32 V2*===
 
===NOD32 V2*===
 
#'''Версия 2.8''' от 20.08.2008
 
#'''Версия 2.8''' от 20.08.2008
Строка 16: Строка 26:
 
# '''Версия 2.3''' от 31.05.2007
 
# '''Версия 2.3''' от 31.05.2007
 
## Исправлена ошибка, если при обновлении билд  нового файла меньше старого.
 
## Исправлена ошибка, если при обновлении билд  нового файла меньше старого.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V2]
 +
  
 
===NOD32 V3*===
 
===NOD32 V3*===
Строка 25: Строка 39:
 
#Версия 1.1 beta - Исправлена ошибка в скрипте ( не записывался номер версии файлов в update.ver)
 
#Версия 1.1 beta - Исправлена ошибка в скрипте ( не записывался номер версии файлов в update.ver)
 
#Версия 1.0 beta - Пока в стадии тестирования.
 
#Версия 1.0 beta - Пока в стадии тестирования.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
  
 
==Что умеет скрипт.==
 
==Что умеет скрипт.==
Строка 31: Строка 49:
 
# При ошибке обновления восстанавливает базу в том виде, которая была до обновления.
 
# При ошибке обновления восстанавливает базу в том виде, которая была до обновления.
 
# Создает папку на веб сервере с файлами обновления.
 
# Создает папку на веб сервере с файлами обновления.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
 +
 
==Из чего состоит==
 
==Из чего состоит==
 
# '''NOD32UPDATE.sh (NOD32_3UPDATE.sh)''' - Сам скрипт
 
# '''NOD32UPDATE.sh (NOD32_3UPDATE.sh)''' - Сам скрипт
Строка 42: Строка 65:
 
## '''name_section3''' - секции, которые могут отсутствовать в update.ver
 
## '''name_section3''' - секции, которые могут отсутствовать в update.ver
 
Содержание файлов для различных версий - отличается
 
Содержание файлов для различных версий - отличается
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
  
 
==Установка RAR==
 
==Установка RAR==
Строка 49: Строка 76:
 
# make
 
# make
 
</pre>
 
</pre>
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
  
 
==Инсталяция==
 
==Инсталяция==
Строка 61: Строка 92:
 
# Обновление баз NOD32 V3*
 
# Обновление баз NOD32 V3*
 
05 09,15 * * * root /etc/upd_prog/update3.sh</pre> и наслаждаемся автоматическим обновлением 2 раза в сутки
 
05 09,15 * * * root /etc/upd_prog/update3.sh</pre> и наслаждаемся автоматическим обновлением 2 раза в сутки
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
 +
 
===Настройка сервера Apache для доступа к базам по паролю===
 
===Настройка сервера Apache для доступа к базам по паролю===
 
Инструкция взята [http://server-tuning.info/ru/apache/basic-password-auth.html тут]<br />
 
Инструкция взята [http://server-tuning.info/ru/apache/basic-password-auth.html тут]<br />
 
Итак, если нам хочется настроить Ваше зеркало так, что бы только нужные пользователи могли обновляться с нашего сервера, то тогда нужно сделать следующее.
 
Итак, если нам хочется настроить Ваше зеркало так, что бы только нужные пользователи могли обновляться с нашего сервера, то тогда нужно сделать следующее.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
 +
 
====Создание файла с паролями====
 
====Создание файла с паролями====
 
Файл с учетными данными обычно называется '''.htpasswd''' и располагается в каталоге, доступ к которому необходимо ограничить. По умолчанию в Apache запрещен доступ ко всем файлам, которые начинаются на .ht, так что файл с паролями, как и файл .htaccess, не сможет быть прочитан ни одним посетителем вашего сайта. Но для ускорения работы сервера лучше использовать конфигурационный файл apache и файл паролей.
 
Файл с учетными данными обычно называется '''.htpasswd''' и располагается в каталоге, доступ к которому необходимо ограничить. По умолчанию в Apache запрещен доступ ко всем файлам, которые начинаются на .ht, так что файл с паролями, как и файл .htaccess, не сможет быть прочитан ни одним посетителем вашего сайта. Но для ускорения работы сервера лучше использовать конфигурационный файл apache и файл паролей.
Строка 77: Строка 118:
 
<pre>$ htpasswd .htpasswd vasya</pre>
 
<pre>$ htpasswd .htpasswd vasya</pre>
 
После запуска, утилита попросит дважды ввести пароль и, если они совпадут, данные о пользователе будут добавлены.
 
После запуска, утилита попросит дважды ввести пароль и, если они совпадут, данные о пользователе будут добавлены.
 +
 +
 +
'''Source(s):'''  [http://www.downloadranking.com/product_detail.php/pid/17129-8/pa/Disk-Doctors-Linux-Data-Recovery---Expert-Lic-  NOD32 V3]
 +
  
 
====Настройка сервера Apache====
 
====Настройка сервера Apache====

Версия 06:25, 27 февраля 2013

Вот написал скрипты по обновлению антивирусных баз NOD32 V2* и V3*. В описаниях, все что касается V3* - стоит в скобках.


Source(s): Скрипт по обновлению антивирусных баз NOD32 под Linux (BASH)


Версии скрипта

Буду тут выкладывать описание версий с датами для более удобного отслеживания за изменениями


Source(s): NOD32 V2


NOD32 V2*

  1. Версия 2.8 от 20.08.2008
    1. Исправлена ошибка вывода имени файла, при выкачивании, если файла не существует.
  2. Версия 2.7 от 17.04.2008
    1. Исправлены файлы name_section1, name_section2 для выкачивания новой секции [HELPER0], [HELPER1] и [HELPER2].
  3. Версия 2.6 от 20.09.2007
    1. Добавлкна возможность установки пароля на базы в Apache.
    2. Исправлен файл NOD32UPDATE.sh. Если базы закрыты паролем, а файл update.ver - не заархивирован, возникала ошибка.
  4. Версия 2.5 от 7.09.2007
    1. Исправлен файл name_section1, для выкачивания секции [CHARON2]
  5. Версия 2.4 от 1.06.2007
    1. Исправлена ошибка, при разархивации update.ver
  6. Версия 2.3 от 31.05.2007
    1. Исправлена ошибка, если при обновлении билд нового файла меньше старого.


Source(s): NOD32 V2


NOD32 V3*

  1. Версия 2.3 - Добавлена секция [MAILSERVER].
  2. Версия 2.2 - Теперь можно обновлять базы для NOD32 V4. Добавлены секции, которых не было в вервии V3 [SYSTEMSTATUS0], [SYSTEMSTATUS1],[SYSTEMSTATUS2],[SYSTEMSTATUS640],[SYSTEMSTATUS641],[SYSTEMSTATUS642],[SELFDEFENSE0],[SELFDEFENSE1],[SELFDEFENSE2],[SELFDEFENSE640],[SELFDEFENSE641],[SELFDEFENSE642]. Обновляются только файлы секций arc/name_section1, arc/name_section2.
  3. Версия 2.1 - Добавлены возможность скачивать базы с триального сервера http://update.eset.com
  4. Версия 2.0 - Добавлены секции [ANTISTEALTH640], [ANTISTEALTH641], [ANTISTEALTH642], [ANTISTEALTH0], [ANTISTEALTH1], [ANTISTEALTH2]
  5. Версия 1.2 beta - Исправлена ошибка в скрипте убраны лишние строки с section2 и исправлены файлы section1 и section3 (добавлена секции [SMON0],[SMON1],[SMON2].
  6. Версия 1.1 beta - Исправлена ошибка в скрипте ( не записывался номер версии файлов в update.ver)
  7. Версия 1.0 beta - Пока в стадии тестирования.


Source(s): NOD32 V3


Что умеет скрипт.

  1. Обновляет антивирусные базы с официальных и свободных серверов.
  2. Сам создает файл update.ver. Те при обновлении с зеркал обновляются только компоненты с более новыми версиями.
  3. При ошибке обновления восстанавливает базу в том виде, которая была до обновления.
  4. Создает папку на веб сервере с файлами обновления.


Source(s): NOD32 V3


Из чего состоит

  1. NOD32UPDATE.sh (NOD32_3UPDATE.sh) - Сам скрипт
  2. update.sh (update3.sh) - Скрипт обновления веб и восстановления базы
  3. conv.sh - Скрипт по переводу всех файлов из кодировки utf8 (по умолчанию) в koi8-r
  4. install.htm - Описание и установка в html формате
  5. install.txt - Описание и установка в utf8 (преобразуется скриптом conv.sh)
  6. И три файла со списком разделов обновлений.
    1. name_section1 - основные секции
    2. name_section2 - дополнительные секции (В версии V3* этого файла нет)
    3. name_section3 - секции, которые могут отсутствовать в update.ver

Содержание файлов для различных версий - отличается


Source(s): NOD32 V3


Установка RAR

Файл update.ver на офе заархивирован с помощью архиватора rar. И для работы скрипта его необходимо установить, тк он не входит в дистрибутив linux

  1. Идем на http://www.rarlab.com/download.htm и качаем дистрибутив распаковываем его в /usr/local/src и устанавливаем rar for Linux.
# cd /usr/local/src/rar
# make


Source(s): NOD32 V3


Инсталяция

Выкачиваем архив nod32update.V2.8.tar.bz2, (nod32updateV3-2.3.tar.bz2) распаковываем:

  1. Если Ваша система работает в koi8-r, то запускаем conv.sh. Он преобразует все необходимые файлы в koi8-r.
  2. Файлы NOD32UPDATE.sh (NOD32_3UPDATE.sh) и update.sh (update3.sh) кладем в папку /etc/upd_prog, но можно и в другую (см ниже), а файлы name_section* необходимо положить в директорию /var/lib/nod32/mirror/arc (/var/lib/nod32/mirror3/arc)
  3. В файле NOD32UPDATE.sh (NOD32_3UPDATE.sh) нужно указать путь, где будут храниться базы данных (/var/lib/nod32/mirror (/var/lib/nod32/mirror3)), имя и пароль, если обновление будет качаться с оффициального сайта (если со свободного, то эти строки надо закоментировать), а также имя сайта обновлений.
  4. В файле update.sh (update3.sh) нужно указать: путь, где лежат скрипты (/etc/upd_prog), путь где будут лежать базы для апача (/var/www/nod32 (/var/www/nod323)) и путь где храняться базы (см выше)(/var/lib/nod32/mirror (/var/lib/nod32/mirror)).
  5. Теперь в crontab прописываем запуск скрипта
# Обновление баз NOD32 V2*
00 09,15 * * * root /etc/upd_prog/update.sh
# Обновление баз NOD32 V3*
05 09,15 * * * root /etc/upd_prog/update3.sh

и наслаждаемся автоматическим обновлением 2 раза в сутки


Source(s): NOD32 V3


Настройка сервера Apache для доступа к базам по паролю

Инструкция взята тут
Итак, если нам хочется настроить Ваше зеркало так, что бы только нужные пользователи могли обновляться с нашего сервера, то тогда нужно сделать следующее.


Source(s): NOD32 V3


Создание файла с паролями

Файл с учетными данными обычно называется .htpasswd и располагается в каталоге, доступ к которому необходимо ограничить. По умолчанию в Apache запрещен доступ ко всем файлам, которые начинаются на .ht, так что файл с паролями, как и файл .htaccess, не сможет быть прочитан ни одним посетителем вашего сайта. Но для ускорения работы сервера лучше использовать конфигурационный файл apache и файл паролей.

В каждой строке файла паролей хранятся данные об одном пользователе. Логин и зашифрованный пароль разделены двоеточием. Пример:

admin:YFC5nYLiUI2ig
vasya:bnqw1eZHP2Ujs

Допустим, что мы хотим создать доступ по паролю пользователя admin.
Для шифрации паролей применяется утилита htpasswd, которая поставляется в комплекте с Apache. Чтобы создать новый файл с данными о пользователе admin, войдите в каталог, где нужно ограничить доступ и будет лежать файл паролей (я использовал каталог с настройками apache - /var/www/html/nod32 (/var/www/html/nod323) и введите команду:

$ htpasswd -c .htpasswd admin

Внимание- При использовании ключа -c будет затерт старый файл с паролями, без всякого предупреждения.
Для добавления в уже существующий файл используется команда:

$ htpasswd .htpasswd vasya

После запуска, утилита попросит дважды ввести пароль и, если они совпадут, данные о пользователе будут добавлены.


Source(s): NOD32 V3


Настройка сервера Apache

Теперь, чтобы включить запрос на авторизацию при попытке доступа, необходимо внести изменения в файл конфигурации.
Эти строки нужно вставить в файл конфигурации вашего сервера:

<Directory "/var/www/html/nod32">
      AllowOverride  All  
</Directory>
<Directory "/var/www/html/nod323">
       AllowOverride  All
</Directory>

AllowOverride AuthConfig или AllowOverride All - необходимо, что бы сервер при работе учитывал параметры файла .htaccess
Если данные параметры установлены на весь сервер, то тут их вписывать необязательно.
После внесения изменений в файл конфигурации, не забудьте перезагрузить Apache.

Создание файлов .htaccess

Интересное описание структуры .htaccess с примерами я нашел тут.
В директориях с файлами баз (/var/www/html/nod32 и /var/www/html/nod323, в моем случае) создаем файлы .htaccess, следующего содержания

<FilesMatch  "\.(nup)$">
    AuthName "Private zone"
    AuthType Basic
    require valid-user
    AuthUserFile  /var/www/nod323/.htpasswd
    Order deny,allow
    Deny from all
    Allow from 172.16.130.0/24
    Satisfy Any
</FilesMatch>

FilesMatch "\.(nup)$" - означает, что на все файлы в данной директории с расширением .nup, сервер будет запрашивать пароль.
Вам необходимо изменить путь к файлу с паролями (AuthUserFile)- путь должен быть полным и строку-приглашение (AuthName), которая выдается на экран пользователю при запросе пароля.
Если Вы хотите, что бы в вашей локальной сети (172.16.130.0/24 - в моем случае) все обновлялись без пароля, добавьте еще три строки

    Order deny,allow
    Deny from all
    Allow from 172.16.130.0/24
    Satisfy Any

Я их показал снова, что бы было понятно, что за что отвечает.

Значение других директив вы можете узнать из документации Apache.