...
Настройка проходит в несколько этапов: генерация ключей на токене, настройка клиентского ПК, настройка сервера 1, настройка Сервера 2, подключение Клиента перенаправление сокета pcscd на Сервер 1, подключение к Серверу 12.
Генерация ключей
Обновите установленные пакеты:
sudo apt update
sudo apt dist-upgradeУстановите библиотеку rtPKCS11ECP для своего дистрибутива из Центра загрузки Рутокен.
Сгенерируйте ключевую пару на Рутокене:
pkcs11-tool --module
/usr/lib/librtpkcs11ecp
.so --keypairgen --key-
type
rsa:2048 -l --
id
<id>
В значении опции
--id
задайте произвольный ID ключа (например, 45).Сконвертируйте в формат SSH открытый ключ на Рутокене:
ssh
-keygen -D
/usr/lib/librtpkcs11ecp
.so -I <slot>:<id> >> key.pub
<slot>
— слот, к которому подключен токен;<id>
— ID ключа, который был задан в предыдущем шаге.Пример команды для токена, подключенного к слоту 0, и ключа с ID 45: ssh
-keygen -D
/usr/lib/librtpkcs11ecp
.so -I 0:45 >> key.pu
b
...
Для настройки Сервера 2 повторите шаги настройки Сервера 1.
Подключение Клиента к Серверу 1
...
Перенаправление сокета pcscd на Сервер 1
- C помощью SSH перенаправьте сокет pcscd на Сервер 1:
ssh -R /путь/к/.pcscd.comm:/var/run/pcscd/pcscd.comm -I /usr/lib/librtpkcs11ecp.so <user>@<server_address>
<user>@<server_address>
— имя пользователя и адрес сервера;/путь/к/.pcscd.comm
— путь, где будет находиться файл сокета на Сервере 1.Пример готовой команды для Сервера 1 с параметрами, указанными в разделе Параметры окружения: ssh -R /home/server1/.pcscd.comm:/var/run/pcscd/pcscd.comm -I /usr/lib/librtpkcs11ecp.so server1@192.168.5.155
- Настройте переменную окружения
PCSCLITE_CSOCK_NAME
, чтобы указать программе, какой сокет использовать для взаимодействия с pcscd:export PCSCLITE_CSOCK_NAME=/путь/к/.pcscd.comm
/путь/к/.pcscd.comm
— путь к файлу .pcscd.comm, который был выбран в предыдущем шаге.Пример готовой команды для Сервера 1 с параметрами, указанными в разделе Параметры окружения: export PCSCLITE_CSOCK_NAME=/home/server1/.pcscd.comm
Подключение к Серверу 2
Info |
---|
Работа с Рутокеном будет доступна только в той сессии и через ту консоль, через которую осуществлялся проброс сокета pcscd в предыдущем этапе. |
Подключитесь по SSH с
...
Сервера 1 к Серверу 2 с помощью Рутокена:
|
<user>@<server_address>
— имя пользователя и адрес сервера.Пример готовой команды для Сервера 2 с параметрами, указанными в разделе Параметры окружения: ssh -I /usr/lib/librtpkcs11ecp.so server2@192.168.5.164
Завершение сессии
После окончания сессии (выход из терминала или exit exit), необходимо удалить файл .pcscd.comm с Промежуточного сервера (Сервера 1), и пробрасывать сокет заново. В противном случае, промежуточный сервер (Сервер 1) будет говорить, что сервис не запущен (или что нет токена).