Меню Рубрики

Установка etoken на mint

HowTo: Подключение к Cisco VPN с использованием Aladdin eToken в Linux (Ubuntu)

Сравнительно недавно я решил перевести домашний компьютер с Windows на Linux. То есть идея такая бродила уже некоторое время, подогреваемая новостями с фронтов борьбы с добровольно-принудительной установкой Windows 10 и размышлениями о неизбежном устаревании «семерки» следом за XP, а вот поводом взяться за дело стал выход очередного LTS-релиза Ubuntu. При этом основным мотивом такого перехода я назову простое любопытство: домашний компьютер используется в основном для развлечений, ну а знакомство с новой ОС — развлечение не хуже прочих. Причем развлечение, как мне кажется, полезное в плане расширения кругозора. Дистрибутив же от Canonical был выбран просто как наиболее популярный: считаю при первом знакомстве с системой это немаловажным подспорьем.

Довольно быстро я на собственном опыте убедился, что для котиков и кино Ubuntu вполне подходит. Но, поскольку компьютер используется еще и для удаленной работы, для отказа от Windows не хватало настроенного подключения к Cisco VPN c авторизацией по eToken.

Набор программ

Было ясно, что для подключения понадобятся по меньшей мере драйвер токена и некий VPN-клиент. В результате поисков в сети получился такой список:

  1. OpenConnect — VPN-клиент, «совершенно случайно» совместимый с серверами Cisco «AnyConnect»
  2. GnuTLS — свободная реализация протоколов TLS и SSL. Что важно, в состав этой библиотеки входит утилита p11tool для работы со смарт-картами
  3. SafeNet Authentication Client — набор драйверов и дополнительных утилит, обеспечивающий работу с электронными ключами eToken

Поскольку для установки соединения OpenConnect-у требуется URL сертификата клиента, который можно узнать с помощью утилиты p11tool, и обеим программам требуется драйвер для работы со смарт-картой — с установки этого драйвера и начнем.

Установка клиента eToken

Как резонно замечено в статье про настройку eToken в Ubuntu 12.04, ссылка на SafeNet Authentication Client почти секретная. Но в то же время на просторах интернета нашлась более свежая заметка про аналогичные танцы с бубном уже в 14.04, причем с живой ссылкой на дистрибутив где-то в бразильском филиале SafeNet. Что еще интереснее, на том же сервере есть файл с актуальной версией клиента — 9.1, которая, ура-ура, не требует устаревших библиотек. Правильный же способ получения клиента — конечно обратиться к поставщику вашего ключа.

На текущий момент пакет SafenetAuthenticationClient-9.1.7-0_amd64.deb ( или SafenetAuthenticationClient-9.1.7-0_i386.deb для 32-битных систем ) элементарно ставится двойным щелчком по нему в файловом менеджере. Но во время начала работы над этим материалом еще не была исправлена ошибка в Ubuntu Software, из-за которой не работала установка сторонних пакетов. Поэтому была написана

При успешной установке в меню Applications появляется приложение SafeNet Authentication Client Tools.

Установка и настройка GnuTLS

Дело в том, что в определенный момент я совершенно застрял, не понимая, почему токен из родного клиента виден, а через p11tool — нет. И именно отсюда я понял, где же лежит собственно драйвер. Зная путь к драйверу, ставим и настраиваем GnuTLS по инструкции.

Теперь с токеном смогут работать любые приложения, использующие GnuTLS. А мы сможем воспользоваться утилитой p11tool для выяснения URL-а нашего сертификата.

Чтение данных токена

Вывести список имеющихся в токене сертификатов можно следующей командой:

Вывод p11tool выглядит примерно так:

Object 0:
URL: pkcs11:model=eToken;manufacturer=SafeNet%2c%20Inc.;serial=99999999;token=Username; > Type: X.509 Certificate
Label:
ID: XX:XX
Object 1:…

Сертификатов может быть несколько, а для подключения требуется один конкретный. В инструкции по p11tool от OpenConnect в такой ситуации предлагают попробовать каждый. Я же для сопоставления сертификата с его URL составил небольшой скрипт, который выводит как URL, так и текстовые данные каждого сертификата:

Здесь в цикле по URL-ам объектов p11tool —info выводит данные сертификата в своем представлении, а p11tool —export передает сертификат в формате pem-файла на вход openssl, который и выводит текстовое представление. Для передачи в OpenConnect нам нужен тот, где найдется строка Client Authentication — запоминаем его URL. Кроме того, если сервер использует самоподписанный сертификат, запоминаем еще и URL объекта с флагом CKA_CERTIFICATE_CATEGORY=CA.

Экспортируем сертификат удостоверяющего центра в файл (весь URL не обязателен — лишь бы он однозначно определял объект):

Наконец-то OpenConnect

Минимальный набор аргументов для подключения приведен в следующей команде:

Если сервер использует самоподписанный сертификат, при запуске в таком виде OpenConnect уточнит, доверяем ли мы серверу, и к тому же будет занято окно терминала. Поэтому слегка расширим команду:

С помощью cafile мы указали сертификат удостоверяющего центра — теперь не будет вопроса относительно доверия серверу. Опция background говорит сама за себя, а pid-file позволяет указать имя файла, в котором сохранится идентификатор фонового процесса. Кроме того, пароль токена может быть указан прямо в URL с помощью атрибута pin-value. Но это несколько… небезопасно.

Останавливать фоновый процесс правильно следующей командой:

По сообщению SIGINT OpenConnect корректно завершает соединение, а если разорвать соединение «жестко», могут быть проблемы при следующем подключении. Хотя у меня не было.

Послесловие

Задача решена, и я радостно пользуюсь для удаленного доступа приложением Remmina, которое запускаю сразу при подключении к vpn, добавив в скрипт запуска OpenConnect команду:

Правда, пришлось отключить синхронизацию буфера обмена: иначе на удаленной машине он в некоторых приложениях не работает; и включить настройку «Disable tray icon»: в противном случае при каждом подключении в трей добавляется новая иконка. Опять же, переход в домашнюю директорию перед вызовом Remmina неспроста: приложение почету-то не видит путь , а задавать полный путь с именем пользователя мне кажется неправильным.

Выводов относительно применимости Linux дома делать не буду — мне пока хватает, а статья задумана именно как HowTo.

P.S.: На окончательный выбор версии Ubuntu повлияло именно решение данной задачи: в пятой, включенной в Ubuntu 14.04, версии OpenConnect обнаружилась ошибка, мешавшая установке соединения. Вот ради лишенной той ошибки седьмой версии OpenConnect я и поставил возможно еще сырую 16.04.

EDIT: в Ubuntu 19.04 обновилась версия libcrypto и даже драйвер, поставляемый с 10 версией SafeNet, не находит данную библиотеку. Спасаемся симлинком
sudo ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 /usr/lib/libcrypto.so

Еще раз ссылки на использованные материалы:

источник

Настройка eToken на Линукс

Расскажу как поставить клиент-банк банка Промсвязьбанк на Линукс.

Для начала настраивается работа с eToken, который вы должны получить в банке вместе с памяткой 😉
Делается всё по инструкции самого банка: вот тут вот она

1. Установка (обновление) Java.

Сначала убедитесь, что у вас Java требует обновления (то есть не установлена вовсе либо установлена не очень свежая версия). Для этого в браузере Mozilla Firefox откройте Инструменты->Дополнения->Плагины

Перво-наперво скачиваем свежую версию. Например тут

Далее начинаем «устанавливать». Для Java это означает, что вы должны выбрать какой-нибудь каталог, куда распакуете содержимое скачанного архива. Пусть это будет /usr/java После чего нужно положить ссылку на файл плагина в папку с плагинами браузера. Найти ее не так то просто ) Хорошо, если у вас какая-то версия Java уже есть. Тогда делаем такую команду:

Мы увидим приблизительно такую картину:
/etc/alternatives/libnpjp2.so
/usr/lib/jvm/java-7-oracle/jre/lib/i386/libnpjp2.so
/usr/lib/mozilla/plugins/libnpjp2.so
/var/lib/dpkg/alternatives/libnpjp2.so

Отсюда понятно, что папка, в которой содержатся плагины фаерфокса в нашем линуксе — /usr/lib/mozilla/plugins/
Удалим ссылку на старую версию Java и создадим ссылку на новую (сам процесс установки):

2. Установка драйвера SafeNet Authentication Client 8.3 для Linux

Скачиваем по ссылке из инструкции с сайта банка (см. выше), разархивируем.
Выбираем нужный .deb — пакет в зависимости от архитектуры (32 или 64 bit)
Кликаем на него. В открывшемся окне жмём кнопку «Установить».

У меня с этим возникли сложности: установщик ругался на наличие другого пакета в системе, который мешал:

Распаковывается пакет safenetauthenticationclient (из файла SafenetAuthenticationClient-8.3.34-0_i386.deb)…
dpkg: не удалось обработать параметр SafenetAuthenticationClient-8.3.34-0_i386.deb (—install):
попытка перезаписать «/etc/eToken.common.conf», который уже имеется в пакете pkiclient 5.00.59-0
dpkg-deb: ошибка: подпроцесс вставка уничтожен по сигналу (Обрыв канала)
Обрабатываются триггеры для libc-bin …
ldconfig deferred processing now taking place
При обработке следующих пакетов произошли ошибки:
SafenetAuthenticationClient-8.3.34-0_i386.deb

Решено было действовать кардинально — удалить мешающийся пакет:

Далее повторяем установку. Должно пройти удачно.

Теперь коротенечко, без лишних скриншотов перескажу инструкцию настройки данного пакета.

3. Настраиваем SafeNet Authentication Client
(кстати, непонятно, почему в банке приложение называют драйвером, ну да Бог с ними)

В конец раздела [GENERAL] добавляем:
TolerantX509Attributes=1
Закрываем редактор.
Можно запустить SafeNet Authentication Client и подключить eToken к компьютеру. Он должен увидеться.

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

источник

ИТ-услуги для бизнеса

Настройка клиент-банка Альфа-Банк, Промсвязьбанк и др. для работы в linux

Установка необходимых драйверов для работы с клиент-банком с аутентификацией Etoken от Alladin на примере Debian Wheezy x64.

В настоящий момент ситуация с драйверами устройств в Linux для ключей Etoken заметно улучшилась. Это Вам не «работает из коробки», но все же не такие «танцы с бубном» как пару лет назад. Вкупе с портированием программы-клиента всем известной 1С от одноименной компании на ОС Linux, у малого бизнеса есть все шансы выйти из «тени» в ситуации с не лицензионным софтом. Но что-то мы ушли от темы.

Если у Вас установлена открытая версия JRE, рекомендуется установить версию от Oracle. Смотрим версию Java:

если установлены пакеты java OpenJDK — удаляем их:

sudo apt-get remove OpenJDK*

Устанавливаем java от Oracle:

sudo echo «deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main» > /etc/apt/sources.list.d/webupd8team-java.list
sudo echo «deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main» >> /etc/apt/sources.list.d/webupd8team-java.list
sudo apt-key adv —keyserver keyserver.ubuntu.com —recv-keys EEA14886
sudo apt-get update
sudo apt-get install oracle-java7-installer

Устанавливаем необходимое для работы с ключом Etoken окружение:

sudo apt-get install ia32-libs libhal1 opensc pcscd

Пакеты libhal1 и libpcslite1 у Вас уже должны быть установлены. Смотрите какие версии установлены следующей командой:

dpkg -l | grep libhal1
dpkg -l | grep libpcsclite1

Качаем и устанавливаем соответствующую версию библиотек для архитектуры x64 с репозиториев Debian:

wget http://ftp.us.debian.org/debian/pool/main/p/pcsc-lite/libpcsclite1_1.8.4-1_amd64.deb
wget http://ftp.us.debian.org/debian/pool/main/h/hal/libhal1_0.5.14-8_amd64.deb
sudo dpkg -x libpcsclite1_1.8.4-1_amd64.deb libpcsclite1-amd64
sudo dpkg -x libhal1_0.5.14-8_amd64.deb libhal1-amd64
sudo cp libpcsclite1-amd64/usr/lib/x86_64-linux-gnu/libpcsclite.so.1.0.0 /lib64/
sudo ln -s /lib64/libpcsclite.so.1.0.0 /lib64/libpcsclite.so.1
sudo mkdir /usr/lib64
sudo cp libhal1-amd64/usr/lib/libhal.so.1.0.0 /usr/lib64/
sudo ln -s /usr/lib64/libhal.so.1.0.0 /usr/lib64/libhal.so.1

Установка драйвера SafenetAuthenticationClient

wget http://www.secdiary.com/packages/pool/main/SafenetAuthenticationClient-8.0.5-0_amd64.deb
sudo dpkg -i SafenetAuthenticationClient-8.0.5-0_amd64.deb
sudo ln -s /usr/lib64/libeTPkcs11.so /usr/lib/

Перезагружаемся (этого просит у нас драйвер SafenetAuthenticationClient) и проверяем работу ключа, он должен быть виден в списке:

pkcs11-tool —module /usr/lib64/libeTPkcs11.so -L

Ключ конечно же должен быть вставлен в usb-порт 🙂

В нашем случае видим следующую картину:

$ pkcs11-tool —module /usr/lib64/libeTPkcs11.so -L
Available slots: Slot 0 (0x0): Aladdin eToken PRO USB 72K Java [Main Interface] 00 00
token label: eToken
token manuf: SafeNet Inc.
token model: eToken
token flags: rng, login required, PIN initialized, token initialized, other flags=0x200
serial num : 008ee8ca
Slot 1 (0x1): (empty)
Slot 2 (0x2): (empty)
Slot 3 (0x3): (empty)
Slot 4 (0x4): (empty)
Slot 5 (0x5): (empty)

На этом все. Запускаем клиент-банк, пробуем войти в систему и подписать документы.

Если Вы хотите тоже самое сделать в Ubuntu смотрите этот топик на Хабре.

источник

Установка etoken на mint

Для обеспечения работы с электронными ключами Rutoken в ОС семейства Linux необходимо установить:

2. Пакеты из состава дистрибутива КриптоПро CSP : cprocsp-rdr-pcsc, cprocsp-rdr-rutoken

3. Для Rutoken S дополнительно нужен драйвер. Либо с сайта производителя https://www.rutoken.ru/support/download/nix/ , либо из состава дистрибутива КриптоПро CSP — ifd-rutokens

Для работы электронных идентификаторов Rutoken должны быть установлены:

В DEB -based системе: библиотека libccid не ниже 1.4.2, пакеты pcscd и libpcsclite1.

В RPM-based системе: пакеты ccid, pcscd и pcsc-lite.

Ниже приведены примеры установки пакетов пользователем, имеющим права администратора ( root ). В противном случае, в начале команды следует поставить « sudo », например:

Устанавливаем драйвер Rutoken для DEB based и RPM based систем ( только для RUTOKEN S ):

Устанавливаем КриптоПро CSP для DEB based и RPM based систем:

Устанавливаем модуль поддержки PCSC-считывателей для DEB based и RPM based систем (доп. пакет):

Устанавливаем модуль поддержки Rutoken для DEB based и RPM based систем (доп. пакет):

После подключения считывателя проверим определяет ли его система:

root@ubuntu :# /opt/cprocsp/bin/amd64/csptest –card –enum

Total: SYS: 0.000 sec USR: 0.000 sec UTC: 0.240 sec

Просмотр списка настроенных считывателей:

root@ubuntu :# /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -view

Nick name: Aktiv Rutoken ECP 00 00
Connect name:
Reader name: Aktiv Rutoken ECP 00 00

Nick name: FLASH
Connect name:
Reader name: FLASH

Nick name: HDIMAGE
Connect name:
Reader name: HDIMAGE

Для тестирования создадим самоподписанный сертификат с закрытым ключом:

# /opt/cprocsp/bin/amd64$ ./csptestf -keyset -newkeyset -makecert -cont ‘\\.\Aktiv Rutoken ECP 00 00\test’ -keytype exchange

CSP (Type:80) v4.0.9019 KC1 Release Ver:4.0.9963 OS:Linux CPU:AMD64 FastCode:READY:AVX.

AcquireContext: OK. HCRYPTPROV: 34026883

GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP

Exchange key is not available.

Attempting to create an exchange key.

Subject/Issuer: E=test@cryptopro.ru, CN=test

Subject/Issuer: E=test@cryptopro.ru, CN=test

Self signed certificate created: E=test@cryptopro.ru, CN=test

Certificate stored in container.

PrivKey: Not specified — 24.04.2021 11:33:59 (UTC)

Total: SYS: 0.020 sec USR: 0.140 sec UTC: 10.720 sec

источник

Установка etoken на mint

Если кто-то уже ранее имел опыт установки КриптоПро на Windows, то спешу вас огорчить: дела с Linux обстоят гораздо хуже.

Почему? Дело в том, что версия КриптоПро для Linux почти лишена графической среды управления, так что даже импорт сертификатов придется выполнять консольными командами (за исключением последней 5-ой версии КриптоПро). Но если вы используете Linux, то данное обстоятельство вас не должно напугать.

Не буду ходить больше вокруг да около, а сразу приступлю к описанию процесса установки и настройки КриптоПро в Ubuntu 18.04. Все описанные далее инструкции справедливы для Rutoken Lite.

1. Скачиваем deb-пакет для установки КриптоПро в Ubuntu

Загрузка доступна с официального сайта КриптоПро в разделе Продукты. Отмечу лишь то, что надо скачивать обязательно сертифицированную версию. В данном материале описана установка и настройка КриптоПро CSP 4.0 R3.

Далее загруженный архив tgz необходимо распаковать.

2. Установка КриптоПро в графическом режиме

Переходим в папку с распакованным архивом и выбираем в контекстном меню команду Открыть в в терминале. Для запуска установки в КриптоПро в графическом режиме вводим в терминале команду

Появится Мастер установки КриптоПро. Навигация в мастере установки осуществляется при помощи клавиши Tab, выбор чекбоксов осуществляется нажатием пробела. Жмем Next, отмечаем все доступные к установке компоненты, далее жмем Install.

В окне Терминала запустится процесс установки, следует проконтролировать отсутствие ошибок установки. В конце мастер сообщит об успешной установке, после чего следует нажать клавишу ОК.

Кратко о компонентах КриптоПро для Linux:

cprocsp-curl — Библиотека libcurl с реализацией шифрования по ГОСТ

lsb-cprocsp-base — Основной пакет КриптоПро CSP

lsb-cprocsp-capilite — Интерфейс CAPILite и утилиты

lsb-cprocsp-kc1 — Провайдер криптографической службы KC1

lsb-cprocsp-rdr — Поддержка ридеров и RNG

cprocsp-rdr-gui-gtk — Графический интерфейс для диалоговых операций

cprocsp-rdr-rutoken — Поддержка карт Рутокен

cprocsp-rdr-jacarta — Поддержка карт JaCarta

cprocsp-rdr-pcsc — Компоненты PC/SC для ридеров КриптоПро CSP

lsb-cprocsp-pkcs11 — Поддержка PKCS11

3. Ввод лицензионного кода

Далее мастер предложит ввести код лицензии. Делать это не обязательно. По умолчанию КриптоПро включает стандартную лицензию на три месяца. Проверить срок действия лицензии можно стандартной командой в Терминале

/opt/cprocsp/sbin/amd64/cpconfig -license -view

4. Установка дополнительных файлов поддержки КрптоПро

Если установка КриптоПро запущена не в графическом режиме или при установке выбраны не все компоненты, то следует в обязательном порядке установить следующие пакеты (найти их можно в папке установки КриптоПро с файломinstall_gui.sh):

5. Установка драйверов Рутокен

Rutoken Lite не требует установки дополнительных драйверов. Для установки других типов Рутокена потребуется посетить официальный сайт и установить необходимые драйвера.

Однако для полноценной работы Рутокена потребуется установить дополнительные библиотеки при помощи команды в Терминале:

sudo apt-get install libccid pcscd libpcsclite1 pcsc-tools opensc

Для Rutoken S, JaCarta PKI потребуется установка дополнительных драйверов. Пишите в комментариях, если кому-то нужно расписать данный момент.

6. Перезапуск службы pcscd

Перезапустить указанную службы легко при помощи команды

sudo service pcscd restart

7. Проверка работоспособности Рутокена при помощи фирменных средств производителя

Выполнив команду pcsc_scan в терминале, можно проверить работоспособность подключенного Рутокена. Если картинка такая же, как и на скриншоте, то все работает правильно.

8. Проверка работоспособности Рутокена при помощи встроенных средств КриптоПро

Средства КриптоПро также позволяют сразу же проверить работоспособность присоединенных носителей. Команда в терминале

/opt/cprocsp/bin/amd64/csptest -card -enum -v -v

9. Просмотр и Импорт в Личное хранилище сертификатов с Рутокена

Для просмотра личных сертификатов, имеющихся на подключенных контейнерах, выполняем команду в Терминале

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc

Для импорта всех личных сертификатов со всех подключенных носителей выполняем команду в Терминале

/opt/cprocsp/bin/amd64/csptestf -absorb -cert

10. Просмотр личных сертификатов в хранилище

Убедиться в успешном импорте сертификатов с Рутокена в Личное хранилище сертификатов можно при помощи команды в терминале

/opt/cprocsp/bin/amd64/certmgr -list -store uMy

Для удаления сертификата из личного хранилища сертификатов следует выполнить команду в Терминале:

/opt/cprocsp/bin/amd64/certmgr -delete -store umy

Далее терминал предложит указать номер удаляемого сертификата.

На скриншоте выше вы видите, что удостоверяющим центром, который выпустил мой сертификат, является ООО «Компания Тензор». Вот для этой компании и надо искать и устанавливать корневые сертификаты. Как установить корневые сертификаты, читайте в следующем пункте.

11. Импорт коренвых сертификатов в хранилище доверенных корневых сертификатов

Вначале скопируем кореные сертификаты в отдельную папку. Затем в контекстном меню, перейдя в эту папку, выполним команду Открыть в терминале. Далее произведем установку командой в Теримнале:

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file «uc_tensor_44-2017.cer»

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file «uc_tensor-2018_gost2012.cer»

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file «uc_tensor-2017.cer»

12. Установка КриптоПро ЭЦП Browser plug-in

Для установки КриптоПро ЭЦП Browser plug-in потребуется утилита alien. Установим ее командой:

Далее скачиваем установочный пакет КриптоПро ЭЦП Browser plug-in с официального сайта КриптоПро.

Распаковываем архив cades_linux_amd64.zip и переходим перейти в каталог с распакованными файлами, выполним команду Открыть в терминале и далее выполним команды для преобразования rpm-пакетов в deb-пакеты:

alien -dc cprocsp-pki-2.0.0-amd64-cades.rpm

alien -dc cprocsp-pki-2.0.0-amd64-plugin.rpm

Далее устанавливаем deb-пакеты:

sudo alien -kci cprocsp-pki-cades_2.0.0-2_amd64.deb

sudo alien -kci cprocsp-pki-plugin_2.0.0-2_amd64.deb

Обратите внимание: при установке этих двух пакетов не должно быть ошибок.

13. Установка расширения браузера КриптоПро ЭЦП Browser plug-in

Далее необходимо в используемом вами браузере установить расширение КриптоПро ЭЦП Browser plug-in. Cсылка на расширение для Google Chrome

14. Тестирование работоспособности подписи

Если вы все сделали правильно, то КриптоПро настроен. Проверить подпись можно по ссылке

15. Доополнительное ПО для Рутокена

Если вам понадобятся дополнительные плагины или драйвера для Рутокена, то скачать вы всегда их сможете с официального сайта производителя по ссылке, которая указана ниже:

На этом все. Как выясняется, установка КриптоПро в Ubuntu Linux 18.04 не такая уж сложная.

Понравилась статья? Не очень? Тогда возможно, что вы напишите свою гораздо лучше. Просто перейдите по ссылке Размещение статей и ознакомьтесь с правилами публикации статей на сайте MultiBlog67.RU .

источник

Читайте также:  Установки сваебойные копровые на тракторах

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *