Чтобы выпустить сертификат клиентской аутентификации для сервисной учетной записи:
- Создайте шаблон сертификата.
- Получите сертификат.
- Установите сертификат в хранилище корневых сертификатов компьютера.
В веб-интерфейсе Aladdin eCA перейдите в раздел Шаблоны.
Создайте шаблон сертификата для Рутокен KeyBox на основе шаблона ECA-User: клонируйте шаблон и укажите имя нового шаблона. Откроется окно свойств шаблона.
При необходимости укажите Период действия сертификата.
Выберите Центр сертификации.
В выпадающем списке Тип субъекта выберите Пользователь.
В разделе Шифрование выключите опцию ECDSA. Рутокен KeyBox не поддерживает работу с сертификатами на основе алгоритма ECDSA.
На вкладках Расширения и Компоненты имени сертификата оставьте параметры по умолчанию.
Нажмите Сохранить.
- Перейдите в раздел Учетные записи.
- В строке с созданной сервисной учетной записью нажмите Создать сертификат и выберите опцию С закрытым ключом (PKCS#12).
- Выберите шаблон, созданный на предыдущем этапе, и нажмите Продолжить.
- При необходимости измените данные сервисной учетной записи и нажмите Продолжить.
- Создайте пароль для защиты ключевого контейнера PKCS#12.
- Выберите алгоритм и длину ключа или оставьте параметры по умолчанию.
- Нажмите Создать сертификат.
- Нажмите Скачать.
Файл сертификата скачивается в формате P12.
Выберите инструкцию в зависимости от ОС рабочей станции, где устанавливается сертификат.
Windows
- Добавьте выпущенный сертификат в Локальное хранилище компьютера (Local Computer) на сервере Рутокен KeyBox.
- Добавьте корневой сертификат Aladdin eCA в Доверенные корневые центры сертификации (Trusted Root Certification Authorities) на сервере Рутокен KeyBox.
- Выдайте системе права на чтение закрытого ключа сертификата:
- Перейдите в оснастку Сертификаты (Certificates).
- Правой кнопкой мыши нажмите на сертификат и выберите Все задачи (All tasks) → Управление закрытыми ключами... (Manage Private Keys...).
- Нажмите Добавить (Add).
- в меню Размещение (Location) укажите сервер.
- В поле Введите имена выбранных объектов (Enter the object names to select) укажите локальную группу IIS_IUSRS и нажмите Проверить имена (Check Names) и ОК.
- Выставите права Полный доступ (Full Control) и Чтение (Read).
- Нажмите Применить (Apply).
Linux
Выполните вход в систему с учетной записью, от имени которой запускается Рутокен KeyBox. По умолчанию это пользователь www-data.
Проверьте наличие пользователя www-data:
cat /etc/passwd | grep www-data
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
Если пользователя www-data не существует, создайте его:
sudo useradd -m -d /var/www -s /usr/sbin/nologin www-data
Выполните вход от имени пользователя www-data:
sudo su -s /bin/sh www-data
Конвертируйте формат файла сертификата, полученного в УЦ, с P12 на PFX.
sudo mv FILE.p12 <имя pfx-файла сертификата>
Разделите файл PFX на файл сертификата и файл закрытого ключа с помощью утилиты openssl.
openssl pkcs12 -in FILE.pfx -nokeys | sed -ne '/-BEGIN CERTIFICATE/,/END CERTIFICATE/p' > client.crt
openssl pkcs12 -in FILE.pfx -cacerts -nokeys | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > root-ca.crt
openssl pkcs12 -in FILE.pfx -nocerts -out clientencrypted.key
openssl rsa -in clientencrypted.key -out client.key
rm clientencrypted.key
Файл сертификата client.crt должен содержать следующее:
-----BEGIN CERTIFICATE-----
#Ваш сертификат#
-----END CERTIFICATE-----
Создайте поддиректорию домашнего каталога пользователя www-data:
sudo mkdir -p /var/www/.dotnet/corefx/cryptography/x509stores/my/
Объедините файл сертификата и файл ключа в файл PFX. Поместите файл PFX в поддиректорию домашнего каталога пользователя.
sudo openssl pkcs12 -export -out /var/www/.dotnet/corefx/cryptography/x509stores/my/FILE.pfx -inkey client.key -in client.crt
Настройте право доступа 600 к файлу PFX:
sudo chmod 600 /var/www/.dotnet/corefx/cryptography/x509stores/my/FILE.pfx
Добавьте корневой сертификат УЦ в список доверенных корневых сертификатов:
Debian-based
- Поместите корневой сертификат в хранилище доверенных корневых сертификатов:
sudo cp <путь к файлу CRT> /usr/share/ca-certificates/
- Перенастройте список доверенных корневых сертификатов:
sudo dpkg-reconfigure ca-certificates
- Перезапустите систему:
RHEL-based
- Поместите корневой сертификат в хранилище доверенных корневых сертификатов:
sudo cp <путь к файлу CRT> /etc/pki/ca-trust/source/anchors/
- Перенастройте список доверенных корневых сертификатов:
sudo update-ca-trust extract
- Перезапустите систему: