Создание зеркала Nod32 на Synology

Заметка на память

  1. Распаковываем архив со скриптом в /volume1/web/nod
  2. В Web Station создаем виртуальный хост с именем nod. Открываем порты 443 и 80.
  3. Корневым каталогом указываем /web/nod/www
  4. В планировщике задач создаем новую с произвольным именем. В качестве команды для выполнения указываем
/usr/local/bin/php74 -f /volume1/web/nod/update.php &

Пользователь root.

  1. Подключаемся к NAS по SSH, создаем файл /etc/nginx/sites-enabled/nod.conf:
touch /etc/nginx/sites-enabled/nod.conf
  1. Открываем файл на редактирование:
vi /etc/nginx/sites-enabled/nod.conf

Для начала редактирования нужно нажать английскую клавишу «i». Затем вставляем из буфера обмена текст из пункта 7.

  1. Правим этот файл и приводим к виду:
map $http_user_agent $ver {
        "~^.*(EEA|EES|EFSW)+\s+Update.*BPC\s+(\d+)\..*$" "ep$2";
        "~^.*Update.*BPC\s+(\d+)\..*$" "v$1";
}

server {
                listen 80;
                listen 2221;
                server_name nod.home.mikhailov.by;

                # Optional: Charset
                charset utf-8;

                # Path to the root of your installation
                root /volume1/web/nod/www;

                # Index file
                index index.html;

                # Доп. заголовки
                add_header X-Robots-Tag "noindex, nofollow, nosnippet, noarchive";
                add_header Cache-Control "no-cache, public, must-revalidate";

                ################# Nginx Rewrite #################

                location ~* \.ver$ {
                        auth_basic "Restricted";
                        auth_basic_user_file /volume1/web/nod/htpasswd;

                        if ($ver ~ "^ep[6-9]$") {
                                rewrite ^/(dll/)?update.ver$ /eset_upd/$ver/$1update.ver break;
                        }

                        if ($ver ~ "^v(5|9)$") {
                                rewrite ^(.*) /eset_upd/$ver/update.ver break;
                        }

                        if ($ver ~ "^v[3-8]$") {
                                rewrite ^(.*) /eset_upd/v3/update.ver break;
                        }

                        if ($ver ~ "^v1[0-1]$") {
                                rewrite ^(.*) /eset_upd/v10/dll/update.ver break;
                        }
                        if ($ver ~ "^v1[2-9]$") {
                                rewrite ^(.*) /eset_upd/$ver/dll/update.ver break;
                        }
                }

                ################################################
}
  1. Завершаем редактирование нажатием клавиши Esc. Затем нужно ввести двоеточие и следом за ним буквы wq. Внизу слева должно получиться следующее:
:wq

Теперь нажимаем Enter. Буква w означает запись, буква q — выход из программы. Если возникнут вопросы по редактору, гуглим vi.

  1. В папке /volume1/web/nod создаем файл htpasswd.
  2. Добавляем в него пользователя:
htpasswd -b /volume1/web/nod/htpasswd username password
  1. Перезапускаем nginx:
nginx -s reload
  1. Проверяем доступность зеркала и запрос пароля
Отправить
Поделиться
1 комментарий
Андрей 2022

Что такое Synology, зачем антивирусу NOD32 зеркало и откуда на линуксе вирусы? В этой статье непонятно примерно всё)

Копытов Иван 2022

В данном случае под Synology подразумевается NAS. Ну раз вы не знаете ответов на следующие два вопроса, то оно вам, слава богу, и не нужно знать :-)