Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
обновление_сервера_безопасности_626_721_бэкап [2023/05/13 12:07] infra |
обновление_сервера_безопасности_626_721_бэкап [2023/12/21 05:22] (текущий) infra |
||
---|---|---|---|
Строка 3: | Строка 3: | ||
====== Пошаговая инструкция по обновлению сервера безопасности с версии 6.25.2 до версии 7.2.2 на Ubuntu 20.04====== | ====== Пошаговая инструкция по обновлению сервера безопасности с версии 6.25.2 до версии 7.2.2 на Ubuntu 20.04====== | ||
- | ====Как установить версию 6.26.3 на Ubuntu20.04==== | + | ====Как установить версию 6.25.3 на Ubuntu20.04==== |
+ | <note warning>Внимание! Данная инструкция рассматривает установку X-Road версии 6.25.2.</note> | ||
+ | <note important>Внимание! Согласно пункту 3 ст. 10 главы 3 и ст. 36 главы 6 Требований к взаимодействию информационных систем в системе межведомственного электронного взаимодействия «Түндүк», участник обязан минимум 3 года обеспечить хранение лог-файлов. В связи с этим рекомендуется периодично производить резервную копию содержимого в директории /var/lib/xroad/ сервера безопасности в другое дисковое хранилище. После резервного копирования можно удалить старые файлы из директории /var/lib/xroad/ за определенный период, если дисковое пространство заполнилось и нет возможности увеличить его.</note> | ||
+ | |||
+ | === Пошаговая инструкция по установке сервера безопасности Тундук === | ||
+ | |||
+ | == 1 Введение == | ||
+ | |||
+ | <note warning>Целевой аудиторией руководства по установке являются системные администраторы Сервера безопасности Тундук ответственные за установку и сопровождение программного обеспечения X-Road. | ||
+ | Документ предназначен для читателей с умеренными знаниями администрирования Linux серверов и компьютерных сетей.</note> | ||
+ | |||
+ | == 2 Установка == | ||
+ | == 2.1 Поддерживаемые платформы == | ||
+ | |||
+ | <note tip>Сервер Безопасности работает под управлением операционной системы Ubuntu Server 20.04 Long-Term Support (LTS) на 64 разрядной платформе. Дистрибутив Сервера Безопасности распространяется в пакетах формата .deb через официальное хранилище которое расположено по адресу https://deb.tunduk.kg</note> | ||
+ | |||
+ | Программное обеспечение может быть развернуто как на физическом, так и на виртуализированном оборудовании. | ||
+ | |||
+ | == 2.2 Справочные данные == | ||
+ | * ''Заметка:'' Информация в пустых ячейках должна быть определена до начала установка Сервера Безопасности, ответственным за установку программного обеспечения лицом. | ||
+ | * ''Внимание:'' Данные, необходимые для функционирования операционной системы, не включены. | ||
+ | |||
+ | ^ Ref ^ ^ Explanation ^ | ||
+ | | 1.0 |Ubuntu 20.04, 64-bit 4 GB RAM, 100 GB free disk space |Минимальные требования | | ||
+ | | 1.1 |https://deb.tunduk.kg |Хранилище пакетов X-Road| | ||
+ | | 1.2 |https://deb.tunduk.kg/key.pub |GPG ключ хранилища | | ||
+ | | 1.3 | |Имя учетной записи в интерфейсе пользователя | | ||
+ | | 1.4 |TCP 5500 |Порт входящих соединений (Из внешней сети к Серверу Безопасности) \\ Обмен сообщениями между Серверами Безопасности | | ||
+ | | |TCP 5577 |Порт входящих соединений (Из внешней сети к Серверу Безопасности) \\ Запрос ответов OCSP между серверами безопасности | | ||
+ | | |TCP 2080 |Порт входящих соединений (Из локальной сети к Серверу Безопасности) \\ Обмен сообщениями между Сервером Безопасности и демоном мониторинга оперативных данных (по умолчанию - localhost) | | ||
+ | | |TCP 9011 |Порт входящих соединений (Из локальной сети к Серверу Безопасности) \\ демон мониторинга оперативных данных - JMX listening port | | ||
+ | | 1.5 |TCP 5500 |Порт исходящих соединений (От Сервера безопасности во внешнюю сеть) \\ Обмен сообщениями между Серверами Безопасности | | ||
+ | | |TCP 5577 |Порт исходящих соединений (От Сервера безопасности во внешнюю сеть) \\ Запрос ответов OCSP между серверами безопасности | | ||
+ | | |TCP 4001 |Порт исходящих соединений (От Сервера безопасности во внешнюю сеть) \\ Связь с центральным сервером | | ||
+ | | |TCP 80 |Порт исходящих соединений (От Сервера безопасности во внешнюю сеть) \\ Получение глобальной конфигурации | | ||
+ | | |TCP 62301,62302 |Порт исходящих соединений (От Сервера безопасности во внешнюю сеть) \\ порты для OCSP и time-stamping сервисов удостоверяющего центра | | ||
+ | | 1.6 |TCP 4000 |Интерфейс пользователя (внутренняя сеть) | | ||
+ | | 1.7 |TCP 80 |Точка доступа информационной системы (в локальной сети) \\ Соединения от информационной системы | | ||
+ | | |TCP 443 |Точка доступа информационной системы (в локальной сети) \\ Соединения от информационной системы | | ||
+ | | 1.8 | |Внутренний IP адрес(а) и имя(имена) хоста(ов) | | ||
+ | | 1.9 | |Публичный адрес Сервера Безопасности, NAT адрес | | ||
+ | | 1.10 |<по умолчанию, IP адреса и имена сервера включены в отличительное имя сертификата (DN) поле> |Информация о TLS сертификате интерфейса пользователя | | ||
+ | | 1.11 |<по умолчанию, IP адреса и имена сервера включены в отличительное имя сертификата (DN) поле> |Информация о TLS сертификате сервера | | ||
+ | | 1.12 |TCP 2552 |Порт коммуникации между процессами xroad-proxy и xroad-monitoring | | ||
+ | |||
+ | == 2.3 Требования к серверу Безопасности == | ||
+ | |||
+ | Минимальные рекомендации к аппаратному обеспечению: \\ | ||
+ | * Аппаратное обеспечение сервера (материнская плата, центральный процессор, сетевые карты, системы хранения данных) должны полностью поддерживаться операционной системой Ubuntu 18.04; | ||
+ | |||
+ | - 64-x разрядный Intel dual-core, AMD или совместимый процессор; настоятельно рекомендуется наличие поддержки AES инструкций; | ||
+ | - 4 GB оперативной памяти (**Для нормального функционирования сервера в промышленной эксплуатации рекомендуется от 4-х гигабайт и более**); | ||
+ | - 100 Mbps сетевой интерфейс ; | ||
+ | - USB порты для использования аппаратных токенов (опционально, если будете использовать HWS) | ||
+ | |||
+ | Требования к по и конфигурации: | ||
+ | * При установке Ubuntu 20.04 необходимо использовать данный образ официальный образ | ||
+ | * Установленная и настроенная операционная система Ubuntu 18.04 LTS x86-64; | ||
+ | | ||
+ | * Если сервер безопасности разделен от других сетей брандмауэром и/или NATом, необходимые сетевые соединения от и к Серверу Безопасности разрешены (справочные данные: 1.4; 1.5; 1.6; 1.7). Задействование вспомогательных сервисов необходимых для функционирования и управления операционной системой (такие как DNS, NTP и SSH) не входят в рамки данного руководства; | ||
+ | * Если Сервер Безопасности имеет приватный IP адрес, соответствующие правила NAT должны быть созданы на сетевом фильтре (справочные данные: 1.9). | ||
+ | |||
+ | == 2.4 Подготовка операционной системы == | ||
+ | |||
+ | Перед началом установки произвести предварительную настройку системы | ||
+ | * Глобально задать переменную окружения для установки локали системы | ||
+ | <code>echo "LC_ALL=en_US.UTF-8" | sudo tee -a /etc/environment</code> | ||
+ | |||
+ | * Cоздать административного пользователя (пункт 1.3) выполнив команду и заменив <local_user> на любое другое имя | ||
+ | <code>sudo adduser <local_user> --shell=/usr/sbin/nologin --no-create-home</code> | ||
+ | |||
+ | * Импортировать GPG ключ репозитория | ||
+ | <code>wget -qO - https://deb.tunduk.kg/key.pub | sudo apt-key add - </code> | ||
+ | * Добавить репозиторий в список источников пакетов ОС | ||
+ | <code>echo "deb https://deb.tunduk.kg/ubuntu20.04-6.25.2 /" | sudo tee -a /etc/apt/sources.list.d/xroad.list</code> | ||
+ | * Произвести обновление обновление системы | ||
+ | <code>sudo apt-get update && sudo apt-get -y full-upgrade</code> | ||
+ | * Настроить правила межсетевого экрана | ||
+ | ''Заметка:'' Ниже производятся общие настройки межсетевого экрана, дополнительные правила требуются для настройки связи сервера безопасности с адаптером и предоставления административного доступа. | ||
+ | <code> | ||
+ | sudo ufw default deny outgoing | ||
+ | sudo ufw default deny incoming | ||
+ | sudo ufw allow out 53/tcp | ||
+ | sudo ufw allow out 53/udp | ||
+ | sudo ufw allow in 5500/tcp | ||
+ | sudo ufw allow out 5500/tcp | ||
+ | sudo ufw allow in 5577/tcp | ||
+ | sudo ufw allow out 5577/tcp | ||
+ | sudo ufw allow out 4001/tcp | ||
+ | sudo ufw allow out 80/tcp | ||
+ | sudo ufw allow out 443/tcp | ||
+ | sudo ufw allow out 62301/tcp | ||
+ | sudo ufw allow out 62302/tcp | ||
+ | sudo ufw allow out 123/udp | ||
+ | </code> | ||
+ | Включение фаерволла | ||
+ | |||
+ | ''Заметка: если вы управляете сервером посредством ssh сессия может прерваться'' | ||
+ | <code>sudo ufw enable</code> | ||
+ | |||
+ | Разрешение удаленного подключения к интерфейсу администратора сервера безопасности. | ||
+ | <code>sudo ufw allow from INTERNAL_IP to any port 4000 proto tcp</code> | ||
+ | |||
+ | <note tip>Опционально, добавьте подключение по ssh к серверу если такое требуется.</note> | ||
+ | |||
+ | == 2.5 Установка программного обеспечения сервера безопасности == | ||
+ | * Чтобы установить программное обеспечение сервера безопасности X-Road, выполните следующие действия. | ||
+ | <code>sudo apt-get install net-tools xroad-securityserver xroad-addon-opmonitoring xroad-addon-hwtokens libccid pcscd pcsc-tools unzip </code> | ||
+ | |||
+ | <note tip>xroad-addon-hwtokens, libccid, pcscd, pcsc-tools - эти пакеты предоставляют PC/SC-драйвер для считывателей смарт-карт, подключаемых через USB, и различные инструменты командной строки для взаимодействия со смарт-картами. Не устанавливайте эти пакеты, если не планируете использовать RuToken. | ||
+ | HWS токены не были протестированы. | ||
+ | </note> | ||
+ | === При первой установке пакетов система запросит следующую информацию. === | ||
+ | |||
+ | * Имя учетной записи для пользователя, которому будут предоставлены права на выполнение всех действий в пользовательском интерфейсе (смотрите пункт: 1.3). | ||
+ | * Уникальное имя самоподписанного TLS сертификата (Subject DN) и его альтернативные имена (subjectAltName) (смотрите пункт: 1.8; 1.10). | ||
+ | <note important>Этот сертификат используется для защиты сетевого соединения интерфейса пользователя. В качестве значений по умолчанию предлагаются имя хоста и IP-адреса, обнаруженные в операционной системе.</note> | ||
+ | * Subject DN должен вводится в следующем формате: | ||
+ | <code>/CN=server.domain.tld</code> | ||
+ | |||
+ | * Все используемые IP-адреса и имена доменов должны быть введены в качестве альтернативных имен в формате: | ||
+ | <code>IP:1.2.3.4,IP:4.3.2.1,DNS:servername,DNS:servername2.domain.tld</code> | ||
+ | |||
+ | * Уникальное имя владельца сертификата TLS, используемого для обеспечения доступа информационных систем к точке доступа HTTPS (смотрите пункт: 1,8; 1.11). В качестве значений по умолчанию предлагаются имя и IP-адреса, обнаруженные в системе. | ||
+ | * Subject DN должен вводится в следующем формате: | ||
+ | <code>/CN=server.domain.tld</code> | ||
+ | |||
+ | * Все используемые IP-адреса и имена доменов должны быть введены в качестве альтернативных имен в формате: | ||
+ | |||
+ | <code>IP:1.2.3.4,IP:4.3.2.1,DNS:servername,DNS:servername2.domain.tld</code> | ||
+ | |||
+ | == 2.6 Установить Поддержку аппаратных токенов (Smart-card, USB Token, Hardware Security Module) == | ||
+ | |||
+ | <note warning>ВНИМАНИЕ! | ||
+ | Данный раздел является ОПЦИОНАЛЬНЫМ. Можно использовать только SoftToken, и на нём выпустить дополнительно LABEL SIGN.</note> | ||
+ | |||
+ | <note warning>В данном разделе инструкция описана относительно использования Rutoken ЭЦП 2.0 | ||
+ | Для высоконагруженных и промышленных масштабов требуется использовать HSM оборудование так как | ||
+ | USB токены имеют ограниченные возможности и могут со временем не справляться с высокий нагрузкой.</note> | ||
+ | |||
+ | * Для установки Rutoken ЭЦП 2.0 произведите следующие действия | ||
+ | |||
+ | <code> sudo apt-get install opensc-pkcs11 opensc </code> | ||
+ | добавить в конец файла /etc/xroad/devices.ini следующие строки выполнив команду | ||
+ | <code>echo "[Rutoken] | ||
+ | library = /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so" | sudo tee -a /etc/xroad/devices.ini</code> | ||
+ | |||
+ | |||
+ | Отформатировать токен | ||
+ | <code>sudo pkcs15-init --erase-card -p rutoken_ecp</code> | ||
+ | |||
+ | Задать Пин код администратора токена. (Сгенерируйте свой пин код) | ||
+ | <code>sudo pkcs15-init --create-pkcs15 --so-pin "Sheich0e" --so-puk ""</code> | ||
+ | |||
+ | Задать пин код пользователя токена используя пин администратора. (Сгенерируйте свой пин код) | ||
+ | <code>sudo pkcs15-init --store-pin --label "User PIN" --auth-id 02 --pin "Xo7ahkup" --puk "" --so-pin "Sheich0e" --finalize</code> | ||
+ | |||
+ | <note warning>**Важно**: Надежно сохранить сгенерированные ПИНы | ||
+ | Если пин каким-то образом будет утерян, придётся перевыпускать сертификаты и покупать новый RuToken, если таковой имеется.</note> | ||
+ | |||
+ | |||
+ | == Установка сервера безопасности завершена == | ||
+ | Далее необходимо перезагрузить систему | ||
+ | |||
+ | <code>sudo reboot</code> | ||
+ | |||
+ | == 2.7 Проверка сервера после установки == | ||
+ | |||
+ | Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. | ||
+ | чтобы убедится что сервисы X-Road находятся в запущенном состоянии выполните в консоли (далее следует пример вывода): | ||
+ | |||
+ | |||
+ | <code>sudo systemctl list-units "xroad*"</code> | ||
+ | |||
+ | <code> | ||
+ | UNIT LOAD ACTIVE SUB DESCRIPTION | ||
+ | xroad-addon-messagelog.service loaded active running X-Road Messagelog Archiver | ||
+ | xroad-base.service loaded active exited X-Road initialization | ||
+ | xroad-confclient.service loaded active running X-Road confclient | ||
+ | xroad-monitor.service loaded active running X-Road Monitor | ||
+ | xroad-opmonitor.service loaded active running X-Road opmonitor daemon | ||
+ | xroad-proxy-ui-api.service loaded active running X-Road Proxy UI REST API | ||
+ | xroad-proxy.service loaded active running X-Road Proxy | ||
+ | xroad-signer.service loaded active running X-Road signer | ||
+ | </code> | ||
+ | |||
+ | Убедитесь что интерфейс пользователя сервера безопасности https://SECURITYSERVER:4000/ может быть открыт в веб браузере (смотрите пункт: 1.8; 1.6). | ||
+ | Для входа в интерфейс воспользуйтесь учетной записью пользователя, логин которого был выбран во время установки (смотрите пункт: 1.3). | ||
+ | Для запуска Веб интерфейса требуется некоторое время и вы можете увидеть ошибку "502 Bad Gateway". | ||
+ | |||
+ | |||
+ | <note warning>Далее необходимо восстановить из бэкапа Ubuntu 18.04 версии 6.25.2 образ. О том, как это сделать можете прочитать в статье [[обновление_сервера_безопасности_сбэкапа|Как поднять с бэкапа сервер безопасности]]</note> | ||
+ | |||
+ | ====Как обновить Сервер Безопасности с версии 6.25.2 до версии 6.26.3==== | ||
+ | |||
+ | Удалить репозиторий https://deb.tunduk.kg/ubuntu18.0-6.25.2 из файла /etc/apt/sources.list.d/xroad.list | ||
+ | <code> | ||
+ | $ sudo rm /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | Добавить репозиторий в список источников пакетов ОС | ||
+ | <code> | ||
+ | $ echo "deb https://deb.tunduk.kg/ubuntu20.04-6.26.3 /" | sudo tee -a /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | Произвести обновление обновление системы | ||
+ | <code> | ||
+ | $ sudo apt update && apt full-upgrade | ||
+ | </code> | ||
+ | |||
+ | Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. чтобы убедится что сервисы X-Road находятся в запущенном состоянии: | ||
+ | <code> | ||
+ | $ sudo systemctl reset-failed | ||
+ | $ sudo systemctl list-units "xroad*" | ||
+ | $ dpkg -l | grep "xroad" | ||
+ | </code> | ||
+ | |||
+ | ====Как обновить Сервер Безопасности с версии 6.26.3 до версии 7.0.4==== | ||
+ | |||
+ | Удалить репозиторий https://deb.tunduk.kg/ubuntu18.0-6.25.2 из файла /etc/apt/sources.list.d/xroad.list | ||
+ | <code> | ||
+ | $ sudo rm /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | Добавить репозиторий в список источников пакетов ОС | ||
+ | <code> | ||
+ | $ echo "deb https://deb.tunduk.kg/ubuntu20.04-7.0.4 /" | sudo tee -a /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | Произвести обновление обновление системы | ||
+ | <code> | ||
+ | $ sudo apt update && apt full-upgrade | ||
+ | </code> | ||
+ | |||
+ | Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. чтобы убедится что сервисы X-Road находятся в запущенном состоянии: | ||
+ | <code> | ||
+ | $ sudo systemctl reset-failed | ||
+ | $ sudo systemctl list-units "xroad*" | ||
+ | $ dpkg -l | grep "xroad" | ||
+ | </code> | ||
+ | |||
+ | |||
+ | <note warning> | ||
+ | На этом этапе строго рекомендуется к прочтению данный гайд - [[обновление_сервера_безопасности_гайд|Гайд по миграции XROAD с версии 6 на версию 7]]</note> | ||
+ | |||
+ | ====Как обновить Сервер Безопасности с версии 7.0.4 до версии 7.2.1==== | ||
+ | |||
+ | =====Как обновиться с версии 7.0.4 на 7.2.1===== | ||
+ | |||
+ | Удалить репозиторий https://deb.tunduk.kg/ubuntu20.0-7.0.4 из файла /etc/apt/sources.list.d/xroad.list | ||
+ | <code> | ||
+ | $ sudo rm /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | |||
+ | Добавить репозиторий в список источников пакетов ОС | ||
+ | <code> | ||
+ | $ echo "deb https://deb.tunduk.kg/ubuntu20.04-7.2.1-newCertificate /" | sudo tee -a /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | |||
+ | Произвести обновление системы | ||
+ | <code> | ||
+ | $ sudo apt update && apt full-upgrade | ||
+ | </code> | ||
+ | |||
+ | Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. чтобы убедится что сервисы X-Road находятся в запущенном состоянии: | ||
+ | <code> | ||
+ | $ sudo systemctl list-units "xroad*" | ||
+ | </code> | ||
+ | |||
+ | =====Как обновиться с версии 7.2.1 на 7.2.2===== | ||
+ | |||
+ | Удалить репозиторий https://deb.tunduk.kg/ubuntu20.0-7.0.4 из файла /etc/apt/sources.list.d/xroad.list | ||
+ | <code> | ||
+ | $ sudo rm /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | |||
+ | Добавить репозиторий в список источников пакетов ОС | ||
+ | <code> | ||
+ | $ echo "deb https://deb.tunduk.kg/ubuntu20.04-7.2.2 /" | sudo tee -a /etc/apt/sources.list.d/xroad.list | ||
+ | </code> | ||
+ | |||
+ | Произвести обновление системы | ||
+ | <code> | ||
+ | $ sudo apt update && apt full-upgrade | ||
+ | </code> | ||
+ | |||
+ | Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. чтобы убедится что сервисы X-Road находятся в запущенном состоянии: | ||
+ | <code> | ||
+ | $ sudo systemctl list-units "xroad*" | ||
+ | </code> | ||
+ | |||
+ | |||
+ | <note tip>Рекомендуется к прочтению статья [[обнудаление_пакета|Удаление пакета java 8]]</note> | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | Автор Даниил Горбенко |