Содержание

Внимание! Это старый мануал! Устанавливайте только новую версию - 7.2.2

Пошаговая инструкция по установке сервера безопасности Тундук

1 Введение

Целевой аудиторией руководства по установке являются системные администраторы Сервера безопасности Тундук ответственные за установку и сопровождение программного обеспечения X-Road. Документ предназначен для читателей с умеренными знаниями администрирования Linux серверов и компьютерных сетей.

2 Установка

2.1 Поддерживаемые платформы

Сервер Безопасности работает под управлением операционной системы Ubuntu Server 18.04 Long-Term Support (LTS) на 64 разрядной платформе. Дистрибутив Сервера Безопасности распространяется в пакетах формата .deb через официальное хранилище которое расположено по адресу https://deb.tunduk.kg Программное обеспечение может быть развернуто как на физическом, так и на виртуализированном оборудовании (на данный момент работа ПО была протестирована в виртуальном окружении KVM ).

2.2 Справочные данные

Ref Explanation
1.0 Ubuntu 18.04, 64-bit 8 GB RAM, 50 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 Требования к серверу Безопасности

Минимальные рекомендации к аппаратному обеспечению:

  1. 64-x разрядный Intel dual-core, AMD или совместимый процессор; настоятельно рекомендуется наличие поддержки AES инструкций;
  2. 8 GB оперативной памяти (Для нормального функционирования сервера в промышленной эксплуатации рекомендуется от 8-ми гигабайт и более);
  3. 100 Mbps сетевой интерфейс ;
  4. USB порты для использования аппаратных токенов.

Требования к по и конфигурации:

2.4 Подготовка операционной системы

Перед началом установки произвести предварительную настройку системы

echo "LC_ALL=en_US.UTF-8" | sudo tee -a /etc/environment
sudo adduser admxroad --shell=/usr/sbin/nologin --no-create-home
wget -qO - https://deb.tunduk.kg/key.pub | sudo apt-key add - 
echo "deb https://deb.tunduk.kg/ubuntu18.04 /" |  sudo tee -a /etc/apt/sources.list.d/xroad.list
sudo apt-get update && sudo apt-get -y dist-upgrade

Заметка: Ниже производятся общие настройки межсетевого экрана, дополнительные правила требуются для настройки связи сервера безопасности с адаптером и предоставления административного доступа.

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

Включение фаерволла

Заметка: если вы управляете сервером посредством ssh сессия может прерваться

sudo ufw enable

Разрешение удаленного подключения к интерфейсу администратора сервера безопасности.

sudo ufw allow from INTERNAL_IP to any port 4000 proto tcp

2.5 Установка программного обеспечения сервера безопасности

sudo apt-get install net-tools xroad-securityserver xroad-addon-opmonitoring xroad-addon-hwtokens  libccid pcscd pcsc-tools unzip 

При первой установке пакетов система запросит следующую информацию.

/CN=server.domain.tld
IP:1.2.3.4,IP:4.3.2.1,DNS:servername,DNS:servername2.domain.tld
/CN=server.domain.tld
IP:1.2.3.4,IP:4.3.2.1,DNS:servername,DNS:servername2.domain.tld

2.6 Установить Поддержку аппаратных токенов (Smart-card, USB Token, Hardware Security Module)

ВНИМАНИЕ! Данный раздел является ОПЦИОНАЛЬНЫМ. Можно использовать только SoftToken, и на нём выпустить дополнительно LABEL SIGN.

В данном разделе инструкция описана относительно использования Rutoken ЭЦП 2.0 Для высоконагруженных и промышленных масштабов требуется использовать HSM оборудование так как USB токены имеют ограниченные возможности и могут со временем не справляться с высокий нагрузкой.

 sudo apt-get install opensc-pkcs11 opensc 

добавить в конец файла /etc/xroad/devices.ini следующие строки выполнив команду

echo "[Rutoken]
library = /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so"  | sudo tee -a  /etc/xroad/devices.ini

Отформатировать токен

sudo pkcs15-init --erase-card -p rutoken_ecp

Задать Пин код администратора токена. (Сгенерируйте свой пин код)

sudo pkcs15-init --create-pkcs15 --so-pin "Sheich0e" --so-puk ""

Задать пин код пользователя токена используя пин администратора. (Сгенерируйте свой пин код)

sudo pkcs15-init --store-pin --label "User PIN" --auth-id 02 --pin "Xo7ahkup" --puk "" --so-pin "Sheich0e" --finalize

Важно: Надежно сохранить сгенерированные ПИНы

Установка сервера безопасности завершена

Далее необходимо перезагрузить систему

sudo reboot

2.7 Проверка сервера после установки

Установка выполнена успешно, если запущены системные службы и пользовательский интерфейс отвечает. чтобы убедится что сервисы X-Road находятся в запущенном состоянии выполните в консоли (далее следует пример вывода):

sudo systemctl list-units "xroad*"
UNIT                     LOAD   ACTIVE SUB     DESCRIPTION
xroad-confclient.service loaded active running X-Road confclient
xroad-jetty.service      loaded active running X-Road Jetty server
xroad-monitor.service    loaded active running X-Road Monitor
xroad-proxy.service      loaded active running X-Road Proxy
xroad-signer.service     loaded active running X-Road signer

Убедитесь что интерфейс пользователя сервера безопасности https://SECURITYSERVER:4000/ может быть открыт в веб браузере (смотрите пункт: 1.8; 1.6). Для входа в интерфйс воспользуйтесь учетной записью пользователя, логин которого был выбран во время установки (смотрите пункт: 1.3). Для запуска Веб интерфейса требуется некоторое время и вы можете увидеть ошибку «502 Bad Gateway».

3 Первоначальная настройка сервера безопасности

Во время первоначальной настройки сервера безопасности задаются параметры о принадлежности сервера безопасности к конкретному экземпляру X-Road и пин код программного токена.

3.1 Предпосылки

Настройка сервера безопасности предполагает, что владелец сервера безопасности является членом экземпляра X-Road.

3.2 Справочные данные

ВНИМАНИЕ : позиции 2.1 - 2.3 в справочных данных предоставляются владельцу сервера безопасности администраторами центральных компонентов X-Road. Код сервера безопасности (server code) и пин код программного токена (software token’s PIN) будут заданы человеком производящим установку сервера безопасности

2.1 Получить у администраторов СМЭВ Тундук Файл привязки глобальной конфигурации
2.2 GOV - Привителственный,COM - Коммерческий Класс участника владельца сервера безопасности
2.3 <регистрационный код владельца владельца сервера безопасности> Получить от администраторов СМЭВ ТундукКод участника владельца сервера безопасности
2.4 <Задать идентификационное имя сервера безопасности>Код сервера безопасности (Security server's code). Имя сервера безопасности так или иначе должен содержать название организации
2.5 <Задать ПИН для программного токена>PIN-код программного токена (token’s PIN)

3.3 Настройка

Чтобы выполнить первоначальную настройку, перейдите по адресу https://SECURITYSERVER:4000

с помощью веб браузера (смотрите пункт: 1.8; 1.6). Чтобы войти, используйте имя пользователя заданного во время установки (смотрите пункт: 1.3).

При первом входе в систему система запрашивает следующую информацию.. Файл привязки глобальной конфигурации(The global configuration anchor file) (смотрите пункт: 2.1). Проверьте значение хеша привязки с опубликованным значением. Файл привязки можно получить у администратора СМЭВ «Тундук»

Если конфигурация успешно загружена, система запрашивает следующую информацию.

Если класс участника и код участника правильно введены, система отображает имя владельца сервера безопасности, зарегистрированное в центре X-Road.

3.4 Настройка службы времени

В левом меню в разделе CONFIGURATION ⇒ System Parameters ⇒Timestamping Services ⇒ ADD Выбираем TSP

3.6 Генерация ключей и запросов на подписание сертификатов

После после того как начальная конфигурация сервера была задана необходимо ввести пины программного и аппаратного токенов

Вводим пины программного и аппаратного токенов нажав «ENTER PIN» на соответствующем токене и вводим пин код в диалоговом окне.

3.7 Генерируем запросы на получение сертификатов

в меню MANAGEMENT ⇒ Keys and Certificates выберите token: softToken-0 Нажать GENERATE KEY и в появившемся диалоговом окне в поле LABEL задать значение AUTH

Ниже появится KEY: AUTH(?) Кликаем на него и нажимаем GENERATE CSR В полях выбираем значения как изображено ниже.

Кликаем ОК

В появившемся окне ещё раз OK Сохраняем запрос на сертификат на компьютере.

в меню MANAGEMENT ⇒ Keys and Certificates выберите token: JaCarta или token: Rutoken в зависимости какого производителя у вас токен. (Либо, выбираем *token: softToken-0*) Нажать GENERATE KEY и в появившемся диалоговом окне в поле LABEL задать значение SIGN

Ниже появится KEY: SIGN(?) Кликаем на него и нажимаем GENERATE CSR В полях выбираем значения как изображено ниже.

Кликаем ОК

В появившемся окне ещё раз OK Сохраняем запрос на сертификат на компьютере.

Внимательно прочитайте все условия и заключите соглашение с компанией инфоком - https://infocom.kg/ru/pki/

3.8 Импорт сертификатов и Регистрация

После получения сертификатов импортировать сертификаты ключей

Выбираем KEY: AUTH ⇒ REQUEST Нажимем IMPORT CERTIFICATE ⇒ OK

Повторяем тоже самое с ключем подписи

Выбираем KEY: SIGN ⇒ REQUEST Нажимем IMPORT CERTIFICATE ⇒ OK

Выбрать аутентификационный сертификат Нажать ACTIVATE

Затем нажать REGISTER В открывшемся диалоговом окне ввести публичное DNS имя сервера Затем нажать ОК

Теперь когда горит стату registration in progress необходимо передать аутентификационный сертификат сервера Администраторам центра электронного взаимодействия. И дождаться подтверждия регистрации в системе. После того, как Центр электронного взаимодействия одобрит вашу регистрацию в системе установка сервера безопасности завершена.


Автор С.Бутенко