Размер
Скрипт создания зеркала обновлений для Eset Nod32 на Linux
Play

Скрипт создания зеркала обновлений для Eset Nod32 на Linux

Если вы занимаетесь администрированием, велика вероятность что рано или поздно встанет вопрос — «На клиентских машинах стоит антивирус Nod32, надо бы создать для них единое зеркало обновлений». И тут возможны несколько путей развития сюжета:

  1. «Сервер на Windows, денег достаточно». Тут всё довольно просто — покупаем лицензию, ставим нужный дистрибутив Nod32 на сервер, настраиваем, радуемся. Вариант более мифический, так как крайне редко, когда на IT «денег достаточно».
  2. «Сервер на Windows, денег не достаточно». Тут возможны варианты. Начиная от использования варезных лицензий, до ручного скриптинга и использования Linux-решений (cygwin в помощь).
  3. «Сервер на Linux». Деньги в этом случае особого значения просто не имеют. У нас есть руки, есть голова, и есть желание сделать всё довольно качественно и надежно.
Что переобуется для работы?
  • Unix-система (тестировался на CentOS 7, FreeNas 9.3 и FreeBSD 8.3);
  • Bash (тестировался на версиях 4.1.11(2), 4.2.24(1) и 4.2.45(1));
  • Установленные curl, wget, unrar (опционально), и некоторые другие стандартные приложения.
Установка

    Скачиваем крайнюю версию и распаковываем:

Особенности
  • Комплектуется скриптом для автоматического получения рабочего ключа с «пиратских» ресурсов. ВНИМАНИЕ! ДАННЫЙ ФУНКЦИОНАЛ ТОЛЬКО ДЛЯ ОЗНАКОМЛЕНИЯ И ИЗУЧЕНИЯ! ВЫ САМИ НЕСЕТЕ ОТВЕТСТВЕННОСТЬ ЗА ЕГО ИСПОЛЬЗОВАНИЕ! ИСПОЛЬЗУЙТЕ ТОЛЬКО ЛЕГАЛЬНЫЕ И КУПЛЕННЫЕ ВАМИ КЛЮЧИ!
  • Если произошла ошибка при обновлении с сервера, который указан, например, в updServer0 — производится попытка обновиться с сервера, указанного в updServer1 , updServer2 .. updServer10 ;
  • Скачивает только обновленные файлы обновлений (проверка выполняется с помощью wget --timestamping );
  • Работает только с нужными типами обновлений, нужным языком и обновлениями только для нужного ПО (без этого размер базы обновлений составляет чуть более чем 5,2Гб, с указанием типов — 0,6Гб);
  • Умеет поддерживать в актуальном состоянии только лишь файл update.ver, не скачивая сами файлы обновлений (при этом зеркало работает, но загрузка происходит не с вашего сервера, а с сервера-источника обновлений);
  • В комплекте идет заготовка для веб-интерфейса зеркала обновления (директория ./webface ).

Copyright © 2014 <github.com/tarampampam>

Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, добавление, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, также как и лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий:

Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного Обеспечения.

ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ ПРАВ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО ИСКАМ О ВОЗМЕЩЕНИИ УЩЕРБА, УБЫТКОВ ИЛИ ДРУГИХ ТРЕБОВАНИЙ ПО ДЕЙСТВУЮЩИМ КОНТРАКТАМ, ДЕЛИКТАМ ИЛИ ИНОМУ, ВОЗНИКШИМ ИЗ, ИМЕЮЩИМ ПРИЧИНОЙ ИЛИ СВЯЗАННЫМ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫМИ ДЕЙСТВИЯМИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.

В config.small.xml указываем необходимые настройки:

Где %%url_updates_server%% — в обоих случаях идентичны и равны адресу нашего сервера обновлений. Самый простой способ получить конфиг — Окно «ESET NOD32 Antivirus» → «Настройки» → «Импорт и экспорт параметров». Из получившего xml-файла удаляем всё, кроме необходимых настроек (благо все секции очень хорошо названы).

Далее скрипт установки install.cmd:

Таким образом, при двойном клике по полученному бинарнику происходит тихая распаковка в %TEMP%\Nod32Install\, запускается install.cmd, который запускает установку ESET_NOD32_Antivirus_4.2.71.3_(32-bit)_(rus).msi с настройками из config.small.xml не спрашивая ничего у пользователя, но отображая процесс установки. Для малоопытных пользователей — самое то.

Если у вас есть какие-либо вопросы, но вы не можете оставлять комментарии к этому посту или написать мне в личку — пишите комментарии к этой записи.

Update: Пост был переписан 09.02.2015, т.к. его прошлая редакция потеряла актуальность в большей своей степени

Update: 09.07.2016 скрипт был переписан чуть менее чем полностью. Если вы использовали ранее старую версию — настоятельно рекомендую обновиться. Исходники там-же как и всегда — на гите

📎📎📎📎📎📎📎📎📎📎