Для работы Агентов требуются следующие сертификаты:
- RutokenKeyBox Agent CA — корневой сертификат Агента RutokenKeyBox. Используется для выдачи сертификатов рабочим станциям пользователей, на которых будут устанавливаться Агенты.
- RutokenKeyBox Agent SSL — сертификат проверки подлинности, подписан корневым сертификатом. Необходим для установления двухстороннего защищенного соединения между сервером и рабочей станцией с установленным Агентом. Сертификат выдается на имя рабочей станции, на которой развернут сервер Рутокен KeyBox.
- Сертификат рабочей станции — выдаётся автоматически при регистрации Агента. Обращаясь к серверу клиентский компьютер предоставляет свой сертификат, сервер RutokenKeyBox проверяет подлинность сертификата после чего начинает доверять Агенту, установленному на рабочей станции пользователя, и готов передавать на него задачи.
Сертификаты Агента создаются при помощи утилиты IndeedCM.Agent.Cert.Generator.exe, входящей в состав дистрибутива Рутокен KeyBox (располагается в RutokenKeyBox.Server\Misc\AgentCertGenerator).
Параметры утилиты
Генерация корневого и SSL-сертификата:
/root - генерация корневого сертификата сервисов агента.
/rootKeySize - размер закрытого ключа корневого сертификата сервисов агента (не обязательный параметр, по умолчанию генерируется закрытый ключ размером 4096 бит, возможный диапазон от 512 до 8192 бит).
/sn <DNS-имя сервера> - генерация SSL-сертификата на указанное DNS-имя сервера.
/csn - генерация SSL-сертификата на имя сервера, на котором запущена утилита.
/sslKeySize - размер закрытого ключа SSL-сертификата (необязательный параметр, по умолчанию генерируется закрытый ключ размером 2048 бит, возможный диапазон от 512 до 4096 бит).
/pwd - пароль SSL-сертификата (необязательный параметр).
/installToStore - публикует выпущенные утилитой сертификаты в хранилища сертификатов сервера (необязательный параметр, используется только для ОС Windows):
- Сертификат CM Agent CA в Доверенные корневые центры сертификации (Trusted Root Certification Authorities).
- Сертификат CM Agent SSL в хранилище Личных сертификатов рабочей станции, на которой установлен сервер Рутокен Keybox.
Генерация только SSL-сертификата, используя уже выпущенный корневой сертификат CM Agent CA:
/rootKey - путь до файла корневого сертификата сервисов агента.
/ssl - генерация SSL-сертификата сервисов агента.
/sn <DNS-имя сервера> - генерация SSL-сертификата на указанное DNS-имя сервера.
/csn - генерация SSL-сертификата на имя сервера, на котором запущена утилита.
/pwd - пароль SSL-сертификата (необязательный параметр).
/sslKeySize - размер закрытого ключа SSL-сертификата (необязательный параметр, по умолчанию генерируется закрытый ключ размером 2048 бит, возможный диапазон от 512 до 4096 бит).
/installToStore - публикует выпущенный утилитой SSL-сертификат в хранилище Личных сертификатов рабочей станции, на которой установлен сервер системы (необязательный параметр, используется только для ОС Windows).
Запуск утилиты генерации сертификатов сервисов агента
- На ОС Windows:
- Запустите в командной строке, запущенной от имени администратора, на сервере RutokenKeyBox утилиту IndeedCM.Agent.Cert.Generator.exe c параметрами /root /csn /installToStore.
Пример:
|
- На ОС Linux:
На сервере Рутокен KeyBox запустите терминал.
Перейдите в директорию с утилитой и измените права на файл, добавив право на выполнение файла Cm.Agent.Cert.Generator:
sudo
chmod
+x Cm.Agent.Cert.Generator
- Запустите утилиту c параметрами /root /csn и дождитесь завершения её работы.
Пример:
|
В каталоге с утилитой появятся файлы:
- agent_root_ca.json - корневой сертификат сервисов агента с закрытым ключом в формате JSON.
- agent_root_ca.cer - корневой сертификат сервисов агента.
- agent_root_ca.key - закрытый ключ корневого сертификата сервисов агента.
- agent_ssl_cert.cer - SSL-сертификат сайта сервисов агента.
- agent_ssl_cert.key - закрытый ключ SSL-сертификата сайта сервисов агента.
- agent_ssl_cert.pfx - SSL-сертификат сервисов агента с закрытым ключом в формате PFX.
Поместите сертификат CM Agent CA (agent_root_ca.cer) в Доверенные корневые центры сертификации (Trusted Root Certification Authorities) на сервере системы.
Если в вашем окружении используется несколько серверов Рутокен Keybox с агентами, то для каждого сервера требуется выпустить SSL-сертификат сервисов агента, используя общий корневой сертификат CM Agent CA (корневой сертификат сервисов агента на всех серверах должен быть один и тот же). Для создания SSL-сертификата дополнительного сервера или обновления истекшего сертификата перенесите каталог с утилитой Cm.Agent.Cert.Generator и корневой сертификат сервисов агента с закрытым ключом в формате JSON (agent_root_ca.json) на сервер и выполните команду:
Cm.Agent.Cert.Generator.exe /rootKey <путь к файлу agent_root_ca.json> /ssl /sn <DNS-имя сервера Рутокен Keybox> /installToStore |
Пример запуска утилиты для создания дополнительного или обновление истекшего SSL-сертификата сервисов агента:
ОС Windows: |
Настройка защищенного соединения с сайтом сервисов агента
Для ОС Windows
- Перейдите в Диспетчер служб IIS (Internet Information Services (IIS) Manager).
- Выберите сайт Rutoken KeyBox Agent Site и перейдите в раздел Привязки... (Bindings...).
- Выберите привязку по порту 3003.
- Нажмите Изменить... (Edit...).
- Укажите в качестве SSL-сертификата сертификат CM Agent SSL или другой SSL/TLS-сертификат, выпущенный с любого доверенного УЦ в инфраструктуре на имя сервера системы и нажмите OK.
Порт 3003 устанавливается по умолчанию. Если вы используете другой порт, то создайте и настройте новую привязку для него. Убедитесь в том, что порт открыт для входящих подключений в брандмауэре.
В качестве SSL/TLS-сертификата допускается использование RSA-сертификата, выпущенного c любого доверенного УЦ на имя сервера Рутокен KeyBox.
- Субъект (Subject) сертификата должен содержать атрибут Общее имя (Common name) (FQDN сервера системы).
- Дополнительное имя субъекта (Subject Alternative Name) сертификата должно содержать атрибут DNS-имя (DNS Name) (FQDN сервера системы).
Например: rutokenkeybox.demo.local или соответствующую запись с подстановочными знаками, например: *. demo.local (Wildcard certificate). - Улучшенный ключ (Enhanced Key Usage) сертификата должен содержать значение Проверка подлинности сервера (Server Authentication).
Для ОС Linux
Скопируйте созданный утилитой SSL-сертификат сайта агентских сервисов и его приватный ключ в соответствующие хранилища на сервере Рутокен Keybox, а также корневой сертификат Агента в хранилище доверенных корневых сертификатов:
Пример:sudo
cp
.
/agent_ssl_cert
.cer
/etc/ssl/certs/
sudo
cp
.
/agent_ssl_cert
.key
/etc/ssl/private/
sudo
cp
.
/agent_root_ca
.cer
/usr/local/share/ca-certificates/
- Запустите команду обновления хранилища доверенных корневых сертификатов:
sudo
update-ca-certificates
- Укажите пути до сертификата и закрытого ключа в конфигурационном файле используемого web-сервера в разделе, описывающем сайт сервисов агента.
Порт 3003 используется по умолчанию. Если вы используете другой порт, то создайте и настройте новую привязку для него. Убедитесь в том, что порт открыт для входящих подключений в брандмауэре.
В качестве SSL/TLS-сертификата допускается использование RSA-сертификата, выпущенного c любого доверенного УЦ на имя сервера Рутокен KeyBox.
- Субъект (Subject) сертификата должен содержать атрибут Общее имя (Common name) (FQDN сервера системы).
- Дополнительное имя субъекта (Subject Alternative Name) сертификата должно содержать атрибут DNS-имя (DNS Name) (FQDN сервера системы).
Например: rutokenkeybox.demo.local или соответствующую запись с подстановочными знаками, например: *. demo.local (Wildcard certificate). - Улучшенный ключ (Enhanced Key Usage) сертификата должен содержать значение Проверка подлинности сервера (Server Authentication).