Найти в Дзене
Stas Klaisen

Fedora 35 KDE Spins и смарт-карты

Для тех кто зависим от смарт-карт как и я. суть статьи: подготовка к настройке конфигурации OpenVPN и последующего соединения. Понизим разрешенный TLS до 1.1 sudo vim /etc/crypto-policies/back-ends/opensslcnf.config TLS.MinProtocol = TLSv1.1 РуТокен ЭЦП и ЭЦП PKI. Под руками из чистых ключей есть только РуТокен S, а его даже производитель не рекомендует для использования в GNU/Linux, в общем это больно https://forum.rutoken.ru/topic/2377/. dnf in opensc openssl-pkcs11 pkcs11-helper pam dnf-utils openvpn pcsc-lite-libs pcsc-perl pcsc-tools pcsc-lite-ccid pcsc-lite-acsccid pcsc-lite sudo systemctl enable pcscd sudo systemctl start pcscd echo "alias openvpn='sudo openvpn'" >> ~/.bashrc openvpn --version | grep PKCS OpenVPN 2.5.5  [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on mkdir openvpn.user && cd openvpn.user wget https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x64/librtpkcs11ecp.so sudo cp ./librtpkcs11ecp.so /usr/lib64/librtpkcs11ecp.so ИЛИ wg
Оглавление

Для тех кто зависим от смарт-карт как и я.

суть статьи: подготовка к настройке конфигурации OpenVPN и последующего соединения.

Понизим разрешенный TLS до 1.1

sudo vim /etc/crypto-policies/back-ends/opensslcnf.config
  • строка TLS.MinProtocol изменить на:

TLS.MinProtocol = TLSv1.1

РуТокен ЭЦП и ЭЦП PKI.

Под руками из чистых ключей есть только РуТокен S, а его даже производитель не рекомендует для использования в GNU/Linux, в общем это больно https://forum.rutoken.ru/topic/2377/.

dnf in opensc openssl-pkcs11 pkcs11-helper pam dnf-utils openvpn pcsc-lite-libs pcsc-perl pcsc-tools pcsc-lite-ccid pcsc-lite-acsccid pcsc-lite
sudo systemctl enable pcscd
sudo systemctl start pcscd
echo "alias openvpn='sudo openvpn'" >> ~/.bashrc
  • Выполнить и проверить что OpenVPN из коробки собран c PKCS11
openvpn --version | grep PKCS
  • Вывод будет похож на это

OpenVPN 2.5.5  [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on

  • Качаем библиотеку
mkdir openvpn.user && cd openvpn.user
wget https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x64/librtpkcs11ecp.so
sudo cp ./librtpkcs11ecp.so /usr/lib64/librtpkcs11ecp.so

ИЛИ

wget https://download.rutoken.ru/Rutoken/PKCS11Lib/2.3.2.0/Linux/x64/librtpkcs11ecp-2.3.2.0-1.x86_64.rpm
dnf in ./librtpkcs11ecp-2.3.2.0-1.x86_64.rpm
  • Проверяем
openvpn --show-pkcs11-ids /usr/lib64/librtpkcs11ecp.so

Если все верно, и на ключе есть OpenSSL сертификат то консоль отдаст серийный номер токена. по настройке конфигурации - в каждом индивидуальном случае, она будет своя. Но скажу, нужны pem и key файлы для использования OpenVPN.

eToken.

dnf in opensc openssl-pkcs11 pkcs11-helper pam dnf-utils openvpn pcsc-lite-libs pcsc-perl pcsc-tools pcsc-lite-ccid pcsc-lite-acsccid pcsc-lite
sudo systemctl enable pcscd
sudo systemctl start pcscd
echo "alias openvpn='sudo openvpn'" >> ~/.bashrc
  • Выполнить и проверить что OpenVPN из коробки собран c PKCS11
openvpn --version | grep PKCS
  • Вывод будет похож на это

OpenVPN 2.5.5  [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on

  • Дальше под root так удобнее и быстрее.
cd ~
mkdir sac-rpm | cd sac-rpm
wget https://www.globalsign.com/en/safenet-drivers/USB/10.7/Safenet_Linux_Installer_RPM_x64.zip
unzip Safenet_Linux_Installer_RPM_x64.zip
mv Linux\ RPM\ x64/ safenet
cd safenet
dnf in ./SafenetAuthenticationClient-10.7.77-1.x86_64.rpm
cd ~
rm -rf sac-rpm
ln -s /usr/lib64/libeToken.so /usr/lib/libeToken.so
pkcs11-tool --module /usr/lib64/libeToken.so -T
  • Вывод примерно такой:

Available slots:

Slot 0 (0x0): SafeNet eToken 5100 [Main Interface] 00 00

token label        : eToken

token manufacturer : SafeNet, Inc.

token model        : eToken