Установка pcscd astra linux
Конфигурация:
Astra Linux 1.5/1.6 Special Edition (Смоленск) + установочный диск OC
ключ доступа к КриптоПро HSM (в данном примере используется носитель Рутокен S)
(для данной цели рекомендуется создать пользователя КриптоПро HSM типа Обычный пользователь (не Компьютер), и использовать его ключ доступа)
Последовательность необходимых действий (команды, начинающиеся с символа #, требуют привилегий root; сам символ # набирать не нужно):
1) Скачать архив с КриптоПро CSP 4.0 R4, распаковать этот архив:
tar xvf linux-amd64_deb.tgz
и установить минимальный набор пакетов КриптоПро CSP:
cd linux-amd64_deb
# ./install.sh kc2
2) Установить пакеты cprocsp-stunnel, cprocsp-rdr-pcsc, cprocsp-rdr-rutoken и ifd-rutokens из состава дистрибутива КриптоПро CSP 4.0 R4:
# dpkg -i \
cprocsp-stunnel-64_4.0.9963-5_amd64.deb \
cprocsp-rdr-pcsc-64_4.0.9963-5_amd64.deb \
cprocsp-rdr-rutoken-64_4.0.9963-5_amd64.deb \
ifd-rutokens_1.0.1_amd64.deb
3) Вставить установочный диск ОС в привод и выполнить команды добавления репозитория на этом диске:
# apt-cdrom add
# apt-get update
4) Установить пакеты pcscd и libccid из установочного диска ОС:
# apt-get install pcscd libccid
5) Добавить в конфигурационный файл /etc/opt/cprocsp/config64.ini секции криптопровайдеров КриптоПро HSM в соответсвующем разделе [Defaults\Provider]:
[Defaults\Provider\"Crypto-Pro HSM CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 75
Channel = ".clientk2"
[Defaults\Provider\"Crypto-Pro GOST R 34.10-2012 HSM CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 80
Channel = ".clientk2"
[Defaults\Provider\"Crypto-Pro GOST R 34.10-2012 Strong HSM CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 81
Channel = ".clientk2"
[Defaults\Provider\"Crypto-Pro ECDSA and AES HSM CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 16
Channel = ".clientk2"
[Defaults\Provider\"Crypto-Pro Enhanced RSA and AES HSM CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 24
Channel = ".clientk2"
[Defaults\Provider\"Crypto-Pro HSM RSA CSP"]
"Image Path" = "/opt/cprocsp/lib/amd64/libcspr.so"
"Function Table Name" = "CPSRV_GetFunctionTable"
Type = 1
Channel = ".clientk2"
6) Перезапустить службы cprocsp и pcscd:
# service cprocsp restart
# service pcscd restart
7) Экспортировать в файл корневой сертификат КриптоПро HSM из ключевого контейнера ключа доступа:
# /opt/cprocsp/bin/amd64/csptest -keys -cont cont_name -saveext /root/hsmroot.p7b
Имя ключевого контейнера можно вывести командой:
# /opt/cprocsp/bin/amd64/csptest -keys -enum -verifyc
8) Установить корневой сертификат КриптоПро HSM:
# /opt/cprocsp/bin/amd64/certmgr -inst -store root -file /root/hsmroot.p7b
9) Установить сертификат ключа доступа с привязкой к ключевому контейнеру:
# /opt/cprocsp/bin/amd64/csptest -absorb -certs -autoprov
10) Экспортировать сертификат ключа доступа в файл:
# /opt/cprocsp/bin/amd64/certmgr -export -dest /root/user.cer
11) Создать файл /etc/opt/cprocsp/stunnel/stunnel.conf со следующим содержимым:
pid = /var/opt/cprocsp/tmp/stunnel-k2.pid
output = /var/log/stunnel-k2.log
socket = r:TCP_NODELAY=1
socket = r:SO_KEEPALIVE=1
TIMEOUTidle = 2147483
debug = 0
for_hsm = yes
[clientk2]
client = yes
connect = 192.168.0.1:1501
accept = /var/opt/cprocsp/tmp/.clientk2
cert = /root/user.cer
pincode =12345678
В данном случае IP-адрес КриптоПро HSM 192.168.0.1, пин-код ключевого контейнера 12345678.
12) Запустить процесс stunnel_fork:
# /opt/cprocsp/sbin/amd64/stunnel_fork
13) Проверить доступность криптопровайдеров КриптоПро HSM:
/opt/cprocsp/bin/amd64/csptest -enum -provider "Crypto-Pro HSM CSP" -provtype 75 -info
/opt/cprocsp/bin/amd64/csptest -enum -provider "Crypto-Pro GOST R 34.10-2012 HSM CSP" -provtype 80 -info
/opt/cprocsp/bin/amd64/csptest -enum -provider "Crypto-Pro GOST R 34.10-2012 Strong HSM CSP" -provtype 81 -info
14) При необходимости настроить автозапуск в Astra Linux 1.5 необходимо добавить в файл /etc/rc.local перед строкой exit 0 следующую строку
/opt/cprocsp/sbin/amd64/stunnel_fork
В Astra Linux 1.6 и других дистрибутивах настроить автозапуск stunnel_fork как службы можно согласно статьи .
Инструкция по настройке электронной подписи для Astra Linux Special Edition (Смоленск)
Вначале в центре загрузки (требуется предварительная регистрация) нужно скачать дистрибутив КриптоПро CSP 5.0 для Linux (x64, deb). Затем нужно открыть приложение консоли Terminal Fly (для этого можно нажать клавиши Ctrl+T). В нем перейти в директорию с загруженным файлом (скорее всего, /home/user/Загрузки), распаковать архив и установить основные компоненты КриптоПро CSP, выполнив последовательно команды:
cd /home/user/Загрузки/
tar zxvf linux-amd64_deb.tgz
cd linux-amd64_deb/
sudo ./install_gui.sh
В открывшемся приложении «Установщик КриптоПро CSP» отметить как минимум следующие флажки:
- Криптопровайдер КС1
- Графические диалоги
- Поддержка токенов и смарт-карт
- cptools, многоцелевое графическое приложение
- Библиотека PKCS #11 (для gosuslugi.ru)
Затем нужно установить дополнительные пакеты следующими командами:
После этого на сайте «Рутокен» перейти в раздел Поддержка > Центр загрузки > Библиотека PKCS#11 и скачать оттуда библиотеку rtPKCS11ecp для GNU/Linux DEB 64-bit (x64). Устанавить эту библиотеку командой:
cd /home/user/Загрузки
sudo dpkg -i librtpkcs11ecp_2.3.2.0-1_amd64.deb
После этого нужно вставить в CD-ROM диск с дистрибутивом Astra Linux Special Edition (Смоленск) и выполнить команды:
sudo apt install libccid pcscd libgost-astra
sudo service pcscd restart
Установка браузерного плагина
Устанавливаем плагин и настраиваем его в браузере — инструкция
cd /home/user/Загрузки
sudo dpkg -i cprocsp-pki-cades64.
sudo dpkg -i cprocsp-pki-plugin64…
Установка корневого сертификата удостоверяющего центра
Устанавливаем сертификат удостоверяющего центра Ролис. Для этого скачиваем его, после чего запускаем приложение cptools:
И в появившемся окне на вкладке «Сертификаты» нажимаем «Установить сертификаты», в открывшемся окне выбора файла выбираем скаченный файл сертификата и нажимаем кнопку «Открыть».
Настройка списка доверенных узлов
В адресной строке браузера вводим:
На открывшейся странице вводим два адреса (и нажимаем на плюсик):