Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
outlinetrue
stylenone

Введение

Проверка модели устройства

  1. Подключите USB-токен к компьютеру.
  2. Для определения названия модели USB-токена откройте Терминал и введите команду:

...

В результате в окне Терминала отобразится название модели USB-токена :или только ID.

Image Added

Image AddedImage Removed

Убедитесь, что используете: Aktiv Rutoken ECP

Info

Стенд

В некоторых случаях название устройства может не отображаться, тогда ориентируйтесь на значение 0a89 в ID - такой вендор id имеют все устройства Рутокен.

Стенд

Для примера возьмем Рутокен ЭЦП 2.0 2100Нам понадобится Рутокен ЭЦП, отформатированный через Панель управления Рутокен, сервер и клиент. В качестве дистрибутива использовалась Ubuntu -12.10-desktop-i386.1804.

Общий порядок действий

Сервер

1. Устанавливаем необходимые для работы Рутокен ЭЦП 2.0 пакеты:

Code Block
$ sudo apt-get install pcscd libpcsclite1 libccid 

...

Создаем сертификат УЦ: Certificates->New Certificate согласно представленным скриншотам.:

Image RemovedImage Added     Image Removed Image Added     Image Removed Image Added

3.3 Создаем ключ сервера OpenVPN: Private Keys-> New Key, назовем его Serverkey, Keytype - RSA, Keysize - 2048 bit.

Создаем сертификат сервера: Certificates->New Certificate согласно представленным скриншотам.

Image RemovedImage Added     Image Removed Image Added      Image Removed

Image Added

3.4 Экспортируем сертификат УЦ в файл CA.crt, ключ сервера в файл Serverkey.pem и сертификат сервера в файл Server.crt (Private Keys->Export, Certificates->Export).

4. Для работы с Рутокен ЭЦП нужна библиотека PKCS#11. Указываем Загрузить ее можно по ссылке. После загрузки устанавливаем библиотеку и указываем путь к ней: File->Options.

Image RemovedImage Added

4.1 Подключаем Рутокен. Создаем ключ «на борту» Рутокен ЭЦП: PrivateKeys -> NewKey. По запросу вводим PIN-код.

Image RemovedImage Added

4.2 Создаем сертификат клиента:

Image RemovedImage Added      Image Removed Image Added     Image Removed

Image Added

4.3 Когда XCA предложит сохранить сертфиикат сертификат на токен, нажимаем «Yes» и вводим PIN-код. Закрываем XCA.

...

Code Block
$ openssl dhparam -out dh1024dh2048.pem 10242048

7.Создаем конфигурационный файл сервера OpenVPN:

...

Code Block
port 1194
proto tcp
dev tap

ca /home/asduser/CA.crt
cert /home/asduser/Server.crt
key /home/asduser/Serverkey.pem
dh /home/asduser/dh1024dh2048.pem

server 10.0.0.0  255.255.255.0
ifconfig-pool-persist ipp.txt

keepalive 10 120

cipher BF-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3

...

Code Block
$ sudo openvpn --config /home/asduser/openvpn.conf

Клиент

9. Устанавливаем пакеты, необходимые для работы Рутокен ЭЦПРутокена:

Code Block
$ sudo apt-get install pcscd libpcsclite1 libccid 

...

Code Block
$ sudo apt-get install openvpn

11. Узнаем ID контейнера, в котором на Рутокене хранятся ключ и сертификат. Узнать этот ID можно с помощью команды:

Code Block
$ openvpn --show-pkcs11-ids [путь к библиотеке PKCS#11 Рутокен ЭЦП]

12. Создаем конфигурационный файл клиента.

Code Block
client
dev tap
proto tcp
remote xxx.xxx.xxx.xxx 1194
resolv-retry infinite
nobind
persist-key
persist-tun

ca /home/qwe/CA.crt
pkcs11-providers /usr/lib/librtpkcs11ecp.so
pkcs11-id 'Aktiv\x20Co\x2E/Rutoken\x20ECP/2d105684/Rutoken\x20ECP\x20\x3Cno\x20label\x3E/C67F8A314C24E080'

pkcs11-pin-cache 300

comp-lzo
verb 3


  • В параметре pkcs11-providers указываем путь к библиотеке PKCS#11.
  • В параметре pkcs11-id

...

  • указываем  ID контейнера,

...

  • полученный на 11 шаге.


13

Code Block
$ openvpn --show-pkcs11-ids [путь к библиотеке PKCS#11 Рутокен ЭЦП]

 

12. Подключаемся к VPN-серверу:

Code Block
$ openvpn --config [путь к файлу конфига]


Info

Если запроса PIN-кода Рутокена не происходит, выполните действия по инструкции.