Рабочая инструкция как имея действующий аккаунт лицензионного ключа Nod32 поднять в своей локальной сети действующий mirror сервис по обновлению антивируса и все ниже адаптировано под Ubuntu 18.04 Server. В роли клиента на рабочей станции выступает дистрибутив: ESET Endpoint Antivirus, версия 5.0.2271.3

Также данная инструкция вынесена и применяется на моем блоге для тех кому я устанавливаю операционную систему и антивирус в придачу за N'ое количество денег.

ekzorchik@srv-bionic:~$ sudo apt-get -y install nginx unrar curl

ekzorchik@srv-bionic:~$ sudo rm /var/www/html/index.nginx-debian.html

ekzorchik@srv-bionic:~$ sudo mkdir /var/www/html/nod32/

ekzorchik@srv-bionic:~$ wget https://github.com/tarampampam/nod32-update-mirror/archive/master.zip

ekzorchik@srv-bionic:~$ unzip master.zip

ekzorchik@srv-bionic:~$ mv nod32-update-mirror-master/ nod32

ekzorchik@srv-bionic:~$ sudo cp -r nod32/nginx/html/* /var/www/html/nod32/

ekzorchik@srv-bionic:~$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nod32

ekzorchik@srv-bionic:~$ sudo ln -s /etc/nginx/sites-available/nod32 /etc/nginx/sites-enabled/nod32

ekzorchik@srv-bionic:~$ sudo nano /etc/nginx/sites-available/nod32

server {

listen 38000;

server_name 172.33.33.6;

root /var/www/html/nod32;

charset utf-8;

index index.html;

if ($http_user_agent ~* ^(Wget|aria2|NOD32view|perl|php|curl|Google|Yandex|Yahoo)|(Mirror|spider|bot|Parser|RSS|grab)) {

return 403;

}

location ~* ^.+.(htaccess|htpasswd|pl|cqi|sh|sql|conf|tmp)$ {

return 403;

}

location / {

autoindex on;

auth_basic "Restricted Content";

auth_basic_user_file /var/www/html/.htpasswd;

}

}

ekzorchik@srv-bionic:~$ sudo nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

ekzorchik@srv-bionic:~$ sudo systemctl restart nginx && sudo systemctl status nginx | head -n5

● nginx.service - A high performance web server and a reverse proxy server

Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)

Active: active (running) since Sat 2020-01-18 01:00:00 MSK; 13ms ago

Docs: man:nginx(8)

Process: 20851 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)

ekzorchik@srv-bionic:~$

ekzorchik@srv-bionic:~$ sudo sh -c "echo -n 'ekzorchik:' >> /var/www/html/.htpasswd"

ekzorchik@srv-bionic:~$ sudo sh -c "openssl passwd -apr1 >> /var/www/html/.htpasswd"

Password: 12345

Verifying - Password: 12345

ekzorchik@srv-bionic:~$

ekzorchik@srv-bionic:~$ cat /var/www/html/.htpasswd

ekzorchik:$apr1$engOQVIy$dLoN2HYuqLN1VZuhmY6Xm.

ekzorchik@srv-bionic:~$

ekzorchik@srv-bionic:~$ cp nod32/src/nod32-mirror.sh ~/nod32/

ekzorchik@srv-bionic:~$ cp -r nod32/src/include/ ~/nod32/

ekzorchik@srv-bionic:~$ cp nod32/src/settings.conf ~/nod32

ekzorchik@srv-bionic:~$ chmod +x ~/nod32/nod32-mirror.sh

ekzorchik@srv-bionic:~$ nano nod32/settings.conf

export NOD32MIRROR_DEBUG_MODE=0;

export NOD32MIRROR_USE_FREE_KEY=0;

export NOD32MIRROR_MIRROR_DIR="/var/www/html/nod32";

export NOD32MIRROR_SERVER_0='http://update.eset.com:80/eset_upd/ EAV-ID PASSWORD';

export NOD32MIRROR_LANGUAGES='1033 1049';

export NOD32MIRROR_VERSIONS='pcu 5';

export NOD32MIRROR_LOG_PATH="/var/log/nod32/nod32mirror.log";

export NOD32MIRROR_CURL_BIN='false';

export NOD32MIRROR_TEST_URI='http://update.eset.com:80/v8-rel-sta/mod_010_smon_1036/em010_32_l0.nup';

export NOD32MIRROR_TIMESTAMP_FILE_NAME='lastevent.txt';

export NOD32MIRROR_VERSION_FILE_NAME='version.txt';

После не забываем сохранить внесенные изменения.

Наполняем свое зеркало обновления для используемой версии антивируса на рабочем месте:

ekzorchik@srv-bionic:~$ sudo ~/nod32/nod32-mirror.sh -u

[22:59:54] Checking server (http://update.eset.com:80/eset_upd/ [EAV-ID:**********]).. Available

[22:59:59] Starting mirroring "http://update.eset.com:80/eset_upd/" -> "/var/www/html/nod32"

[22:59:59] Download versions file (http://update.eset.com:80/eset_upd/update.ver).. Success

[23:00:00] Parsing & writing new (/var/www/html/nod32/update.ver) versions file

ожидаю закачки файлов обновления….

[23:05:20] Mirroring "http://update.eset.com:80/eset_upd/v5/" -> "/var/www/html/nod32/v5" complete!

[23:05:20] Successfully downloaded files: 83, skipped: 0, with errors: 0

[23:05:20] Timestamp file created (lastevent.txt)

[23:05:20] Total updates (*.nup) files count: 151 file(s)

[23:05:20] Total updates (*.nup) files size: 253.5M

[23:05:20] Mirror directory size is 255M

ekzorchik@srv-bionic:~$

Прописываю в планировщик проверку обновлений каждый час:

ekzorchik@srv-bionic:~$ sudo crontab -e

* 1 * * * root /home/ekzorchik/nod32/nod32-mirror.sh -u > /dev/null 2>&1

* 1 * * * root chown -R www-data:www-data /var/www/html/nod32 > /dev/null 2>&1

Размер каталога /var/www/html/nod32 после скачивания обновлений:

ekzorchik@srv-bionic:~$ sudo du -sh /var/www/html/nod32/

254M /var/www/html/nod32/

ekzorchik@srv-bionic:~$ sudo chown -R www-data:www-data /var/www/html/nod32/

Прописываю настройки обновления на компьютере под управлением Windows 10 Pro x64

Настройка — Перейти к дополнительным настройкам… — Обновление — Общие — (Сервер обновлений) Изменить — указываю (Сервер обновлений): http://172.33.33.6:38000 и нажимаю «Добавить», затем указываю «Имя пользователя» и «Пароль» и нажимаю «OK».

Указываю параметры где брать обновления

 

и обновления успешно выкачиваются и устанавливаются. Выхожу из элемента меню «Настройка», а перехожу на «Обновление» и нажимаю «Обновить базу данных сигнатур вирусов» и обновления с моего Mirror сервиса успешно скачиваются на клиентскую рабочую станцию.

Обновления успешно скачались на клиентскую рабочую станцию

 

Информация об установленном антивирусе следующая:

Информация об установленном антивирусе следующая:

Если нужно добавить еще одну связку логин и пароль, то:

Создаем пароль:

ekzorchik@srv-bionic:~$ openssl passwd -apr1

Password: Aa1234567

Verifying - Password: Aa1234567

$apr1$RMWiFCfQ$LULylbylYVFLzn8BfDbV20

ekzorchik@srv-bionic:~$

Указываю произвольный логин и копирую через двоеточие после него сгенерированный выше пароль, получается вот так:

ekzorchik@srv-bionic:~$ sudo nano /var/www/html/.htpasswd

ekzorchik:$apr1$engOQVIy$dLoN2HYuqLN1VZuhmY6Xm.

ekz:$apr1$8JOcSpoZ$RybJqyYbPrAB46z3wQ3q3/

После не забываем сохранить внесенные изменения.

Поправляем права доступа:

ekzorchik@srv-bionic:~$ sudo chown www-data:www-data /var/www/html/.htpasswd

и прописываем логин и пароль на доступ к обновлению на клиенте с такого-то сервера + порт.

На заметку: Если нужны другие версии под используемый клиент на рабочем месте то следует отредактировать строку до вида:

export NOD32MIRROR_VERSIONS='pcu 4 5 6 7 8 9 10 11';

в конфигурационном файле

ekzorchik@srv-bionic:~$ nano nod32/settings.conf

Итого заметка работоспособна.

ekzorchik@srv-bionic:~$ sudo ~/nod32/nod32-mirror.sh -u

ekzorchik@srv-bionic:~$ sudo chown -R www-data:www-data /var/www/html/nod32/

На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.