Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
stylenone

Введение

Здесь приводится инструкция по настройке доступа к удаленному серверу с помощью OpenSSH и Рутокен ЭЦП. Рутокен работает как с библиотекой librtpkcs11ecp.so, так и библиотекой pkcs11.so из состава OpenSC.

Стенд

  • Сервер Ubuntu x86,
  • Клиент Ubuntu x86,
  • Клиент Windows 710;
  • Рутокен ЭЦП, отформатированный через Панель управления Рутокен.

Порядок действий для библиотеки librtpkcs11ecp.so

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

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

...

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

1. Генерация ключей

Первый вариант

На сервере или любой клиентской *nix машине выполняем следующие действия:

...

Здесь пара 0:10 - это <слот>:<id>.

2. Настройка сервера

2.1 Устанавливаем openssh-server:

...

Code Block
languagebash
$ chmod 0600 ~/.ssh/authorized_keys

3. Настройка *nix-клиента 

3.1 Устанавливаем opensc и openssh-client:

...

3.2 Устанавливаем библиотеку librtpkcs11ecp.so (http://www.rutoken.ru/support/download/pkcs/) в директорию /usr/lib/

3.3 Вызываем


Code Block
languagebash
ssh-agent -p /opt/aktivco/rutokenecp/amd64/*


3.3 4 Подключаемся к серверу:

Code Block
languagebash
 ssh -I /usr/lib/librtpkcs11ecp.so <username>@<server>

4. Настройка Windows-клиента

4.1 Устанавливаем драйверы Рутокен http://www.rutoken.ru/support/download/drivers-for-windows/.

4.2 В качестве SSH-клиента для Windows используем PuttySC. На вкладке SSH -> PKCS11 ставим галку напротив Attempt "PKCS#11 smartcard" auth, выбираем библиотеку rtPKCS11ECP.dll, затем токен и сертификат на токене. На вкладке Session указываем адрес сервера и имя пользователя (необязательно) и подключаемся.Начиная с Windows 10, можно использовать SSH через Командную строку или PowerShell, с указанием пути к нашей библиотеки rtPKCS11ECP.dll.

Code Block
languagebash
 ssh -I "C:\Windows\System32\rtPKCS11ECP.dll" <username>@<server>

  Image Removed Image Removed 

Порядок действий для библиотеки opensc-pkcs11.so

1. Настройка сервера

1.1 Устанавливаем openssh-server:

...

1.5 Полученный результат копируем в файл ~/.ssh/authorized_keys на сервере.

2. Настройка клиента

2.1 Устанавливаем opensc и openssh-client:

Code Block
languagebash
$ sudo apt-get install opensc openssh-client

2.2 Вызываем

Code Block
languagebash
ssh-agent -p <путь до физического расположения (не symlink) opensc-pkcs11.so>/*


2.3 Подключаемся к серверу:

Code Block
languagebash
$ ssh -I /usr/lib/opensc-pkcs11.so <username>@<server>

В случае подключения с использованием конфигурационного файла следует вместо параметра IdentityFile добавить SmartcardDevice со значением /usr/lib/librtpkcs11ecp.so.

Дополнительная информация

  1. Using OpenSSH with smartcards