Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Подправил сборку и установку для 64-битных ОС

...

Пересборка библиотеки libpkcs11-helper с флагами --disable-threading и --disable-slotevent и подмена системной библиотеки libpkcs11-helper

Пошаговое решение на примере Ubuntu Linux

...

Подготовка окружения

Установите набор пакетов необходимых для сборки:Загрузите необходимое окружение для сборки,

Code Block
$ sudo apt-get install git autoconf checkinstall libtool libssl-dev

загрузите Загрузите исходные коды pkcs11-helper,:

Code Block
$ git clone https://github.com/OpenSC/pkcs11-helper.git

Сборка пакета

Создаем пакет с библиотекой  и соберите библиотеку из исходных кодов.

Code Block
$ cd pkcs11-helper
$ autoreconf -i
$ ./configure --disable-threading --disable-slotevent 
$ make
$ sudo make installcheckinstall

В процессе chekinstall, измените Name на pkcs11-helper, а Version на 1.21

Проверка

Теперь, когда библиотека собрана, нужно подложить ее вместо системной.

...

Если библиотека libpkcs11-helper.so находится - значит все правильно собралосьсборка и установка пакета были успешно завершены.

Для начала сохраним системную библиотеку под другим именем:

Code Block
$ sudo mv /usr/lib/i386-linux-gnu/libpkcs11-helper.so.1.0.0 /usr/lib/i386-linux-gnu/libpkcs11-helper.so.1.0.0-original

Внимание! Если вы используете 64-битную версию ОС Ubuntu, то вместо /usr/lib/i386-linux-gnu используйте /usr/lib/x86_64-linux-gnu

Копируем теперь можно скопировать новую библиотеку вместо старой.

...

Code Block
$ sudo rm /usr/lib/i386-linux-gnu/libpkcs11-helper.so.1
$ sudo ln -s /usr/lib/i386-linux-gnu/libpkcs11-helper.so.1.0.0 /usr/lib/i386-linux-gnu/libpkcs11-helper.so.1

Внимание! Если вы используете 64-битную версию ОС Ubuntu, то вместо /usr/lib/i386-linux-gnu используйте /usr/lib/x86_64-linux-gnu

Теперь можно посмотреть что в системной папке все в порядке

...

Перезапустите openvpn клиент и теперь процесс подключения к серверу запросит PIN-код и, если все остальные настройки в порядке, подключится к серверу

Очистка

После сборки и установки пакета можно удалить исходные коды pkcs11-helper.

Для удаления собранного пакета из системы по каким-либо причинам выполните:

Code Block
$ dpkg -r pkcs11-helper

или воспользуйтесь вашим стандартным менеджером пакетов, например, Synaptic.