Установка в конфигурации single-install¶
Конфигурация single-install подразумевает установку Системы без балансировщика нагрузки и без репликации сервисов с помощью оркестрации и кластеризации контейнеров.
Важно
Развертывание Системы должно проводиться с ЭВМ Администратора (локальной или виртуальной). Для этого необходимо обеспечить доступ между ЭВМ Администратора и сервером, на котором будет устанавливаться «Weblock.». Также необходимо организовать доступность по умолчанию порта 22 со стороны сервера (для подключения используется протокол SSH), если выбран другой порт, то это значение следует изменить в конфигурационном файле «Weblock.».
Обращаем Ваше внимание, что развертывание Системы проводится с другой ЭВМ, отличной от той, где будет установлена Система.
Установка пакетов¶
На ЭВМ, с которой будет проводиться установка дистрибутива «Weblock.», необходимо произвести обновление списка пакетов и установить следующие пакеты:
Python3;
Ansible версии 2.15 или выше;
JQ.
На сервер, где будет установлена Система, (далее – целевая машина) необходимо установить следующие пакеты:
Sudo;
Python3 (включая пакет Python3-apt).
Примечание
Подробнее Дополнение. Установка программ.
Подготовка дистрибутива и настройка SSH¶
Распаковать архив дистрибутива «Weblock.» на ЭВМ, с которой будет проводиться установка дистрибутива.
Публичный SSH-ключ перенести с ЭВМ, с которой будет проводиться установка дистрибутива, на целевую машину, добавив его в файл ~/.ssh/authorized_keys
.
Настройка конфигурационных файлов Системы¶
В дистрибутиве «Weblock.» в конфигурационном файле inventory/all.yml
необходимо настроить директиву:
hosts
– полное доменное имя или полный IP-адрес целевой машины.
А в конфигурационном файле inventory/group_vars/waf.yml
необходимо настроить следующие директивы:
ansible_user
– пользователь на целевой машине;ansible_port
– порт целевой машины;cluster_name
– имя кластера ≥ 5 символов (кластер – логическая структура, объединяющая группу защищаемых веб-ресурсов);waf_reverse_proxy_domain
– доменное имя или IP-адрес для доступа в Личный кабинет;waf_reverse_proxy_port
– порт, на котором будет доступен Личный кабинет;waf_admin_email
– адрес электронной почты администратора или техподдержки, который будет указываться в сообщении об ошибке 403 (доступ к защищаемому ресурсу запрещен);external_kafka_host
– доменное имя или IP-адрес брокера сообщений, по умолчанию сервера с ядром Системы;external_kafka_port
– порт, на котором будет доступен брокер сообщений, по умолчанию 9093.
Установка и запуск Системы¶
Перейти в папку дистрибутива «Weblock.».
Для достижения консистентности информационной системы необходимо 2 раза выполнить нижеприведенную команду:
$ ansible-playbook deploy_waf.yml
По ходу установки ознакомиться с лицензионным соглашением, подтвердить или отклонить согласие, ввести пароль SSH-ключа, дождаться загрузки дистрибутива.
Пример успешного выполнения:
PLAY RECAP
***********************************************************************************
waf : ok=176 changed=140 unreachable=0 failed=0 skipped=23 rescued=0 ignored=0
Проверка установки Системы¶
Чтобы убедиться, что Система установлена и запустилась корректно, можно выполнить следующую команду
$ curl http://domain:80
где вместо domain
– значение переменной waf_reverse_proxy_domain
конфигурационного файла Системы.
В ответе получите html-код веб-страницы с логотипом Системы.
Важно
Для авторизации в Личном кабинете используйте доменное имя, указанное в переменной waf_reverse_proxy_domain
конфигурационного файла Системы, иначе возможно возникновение CORS-ошибки.
Перезагрузка Системы¶
В качестве Веб-сервера, перечисленного в структуре Системы, используется веб-сервер Nginx.
После изменения конфигурации Системы, в том числе его конфигурационных файлов, требуется проверить синтаксис изменений и перезагрузить веб-сервер Nginx командами::
$ sudo nginx -t
$ sudo systemctl restart waf-ngxcnd
Остановка Системы¶
Для остановки веб-серверов Системы следует выполнить следующие команды:
сначала команду остановки веб-сервера для доступа в Личный кабинет (веб-интерфейс):
$ systemctl stop apache2
затем команду остановки веб-сервера Nginx:
$ systemctl stop nginx
После остановки возможен повторный запуск Системы.
Дополнение. Установка программ¶
На машину, с которой будет проводиться установка дистрибутива «Weblock.», необходимо установить следующие пакеты:
Python3;
Ansible версии 2.15 или выше;
JQ.
Для этого сначала рекомендуется произвести обновление списка пакетов (здесь и далее приведены команды для ОС Debian/Ubuntu):
$ sudo apt update
Установить Python3 и его менеджер пакетов Pip:
$ sudo apt install python3
$ sudo apt install python3-pip
Проверить номер версии с помощью команды:
$ python3 --version
Установить Ansible версии 2.15 или выше:
$ sudo apt install ansible
Проверить номер версии с помощью команды:
$ ansible --version
Установить JQ:
$ sudo apt install jq
Проверить установку с помощью команды:
$ jq --version
На машину, на которую производится установка дистрибутива «Weblock.», (ОС Debian) необходимо установить следующие пакеты:
Sudo;
Python3 (включая пакет Python3-apt).
Сначала желательно произвести обновление списка пакетов командой:
$ apt update
Установить Sudo командой:
$ apt install sudo
Проверить установку с помощью команды:
$ dpkg -l | grep sudo
Установить Python3, включая пакет Python3-apt:
$ apt install python3 python3-apt
Проверить номер версии с помощью команд:
$ python3 --version
$ dpkg -l | grep python3-apt
Для записи в журнал регистрации процесса развертывания можно в файл ansible.cfg
добавить директиву
log_path = <путь к файлу с журналом регистрации>
Пример.
log_path = /var/log/ansible/ansible.log
