Инсталация на драйвери за четец и смарт карта в Linux: Разлика между версии

От Infonotary
Направо към навигацията Направо към търсенето
Редакция без резюме
Редакция без резюме
 
(Не са показани 10 междинни версии от 2 потребители)
Ред 1: Ред 1:
'''Тази страница не е активна!'''
<!--*
== Обща информация ==
Текстът {{Шаблон:Console|изписан по този начин}} са команди, които трябва да въведете от терминал. Не се налага да ги пишете, можете просто да ги копирате и поставяте директно чрез клипборд-а. Командите, които започват със sudo са неща, които трябва да се изпълнят като root. Ако вашата система не е настроена да ползва sudo може да ги пуснете от root терминал, като просто пропускате sudo. След като пуснете команда започваща със sudo, системата може да ви пита за паролата ви. При въвеждането на паролата няма да се покажат звездичики или каквито и да е други символи. След като я въведете, трябва да натиснете клавиша Enter.
== Какво е необходимо за работа с електронен подпис ==
За да използвате вашият квалифициран електронен подпис (КЕП), е необходимо да имате инсталиран драйвер за четеца, middleware за картата (OpenSC или Bit4id Universal Middleware) и демона за работа с четци pcsc-lite да работи. В повечето дистрибуции името на пакета с демона за работа с четци е pcscd или pcsc-lite. -->
<!--*
== Инсталиране на драйвер за четеца ==
== Инсталиране на драйвер за четеца ==


Ред 4: Ред 12:


=== Инсталация на PC/SC ===
=== Инсталация на PC/SC ===
Независимо от модела на вашия четец, ще трябва да инсталирате пакета '''pcscd'''. Това е демонът, чрез който програмите работят с четеца и съответно със смарт картата. След инсталация на нов драйвер за четец трябва да рестартирате pcscd. Ако инсталирате драйверите от пакет, той най-вероятно ще рестартира демона.
Независимо от модела на вашия четец, ще трябва да инсталирате pcsc lite. В Debian и Ubuntu името на пакета е '''pcscd''' във Fedora, RedHat и openSUSE е '''pcsc-lite''', а в archlinux е '''pcsclite'''. Това е демонът, чрез който програмите работят с четеца и съответно със смарт картата. След инсталация на нов драйвер за четец трябва да го рестартирате. Ако инсталирате драйверите от пакет, той най-вероятно ще рестартира демона.


[[Image:WarningYellow.png|32px]] При някои дистрибуции заедно с инсталацията на pcscd се инсталира и алтернативният демон за управление на четците - '''openct'''. За коректна работа на четеца ще трябва да го деинсталирате или ако това не може да стане без да се премахне и pcscd, да му забраните да се стартира.
[[Image:WarningYellow.png|32px]] При някои дистрибуции заедно с инсталацията на pcsc lite се инсталира и алтернативният демон за управление на четците - '''openct'''. За коректна работа на четеца ще трябва да го деинсталирате или ако това не може да стане без да се премахне и pcsc lite, да му забраните да се стартира.-->
<!--
<!--
Може да проверите дали pcscd работи с командата {{Шаблон:Console|ps ax &#124; grep pcscd &#124; grep -v "grep pcscd"}}, пусната от терминал. Би трябвало да изпише нещо подобно на това: {{Шаблон:ConsoleOutput|3446 ?        Ssl    0:01 /usr/sbin/pcscd}}
Може да проверите дали pcscd работи с командата {{Шаблон:Console|ps ax &#124; grep pcscd &#124; grep -v "grep pcscd"}}, пусната от терминал. Би трябвало да изпише нещо подобно на това: {{Шаблон:ConsoleOutput|3446 ?        Ssl    0:01 /usr/sbin/pcscd}}
В случай че не покаже нищо, значи демонът не работи.
В случай че не покаже нищо, значи демонът не работи.
-->
-->
 
<!--*
=== Видове четци ===
=== Видове четци ===


Ред 28: Ред 36:
<pre>ID 076b:3021 OmniKey AG CardMan 3021</pre>
<pre>ID 076b:3021 OmniKey AG CardMan 3021</pre>
Всеки четец с ID започващо с 076b работи със същият драйвер.
Всеки четец с ID започващо с 076b работи със същият драйвер.
 
-->
===== Инсталация на драйвера =====
<!--*===== Инсталация на драйвера =====


HID Global не предоставят стандартни инсталационни пакети за Linux, така че за да инсталирате драйвера трябва да изпълните следните стъпки:
HID Global не предоставят стандартни инсталационни пакети за Linux, така че за да инсталирате драйвера трябва да изпълните следните стъпки:
Ред 35: Ред 43:
#Отворете терминал и сменете работната папка с тази получена при разархивирането. За 64 битовата версия командата е {{Шаблон:Console|cd ~/ifdokccid_linux_x86_64-v4.1.5}}, а за 32 битовата е {{Шаблон:Console|cd ~/ifdokccid_linux_i686-v4.1.5}}. В случай че сте го разархивирали в друга папка, може да напишете в терминала „cd “, да хванете папката от файловият мениджър и да я завлечете и пуснете върху терминала. Така ще получите правилната команда.
#Отворете терминал и сменете работната папка с тази получена при разархивирането. За 64 битовата версия командата е {{Шаблон:Console|cd ~/ifdokccid_linux_x86_64-v4.1.5}}, а за 32 битовата е {{Шаблон:Console|cd ~/ifdokccid_linux_i686-v4.1.5}}. В случай че сте го разархивирали в друга папка, може да напишете в терминала „cd “, да хванете папката от файловият мениджър и да я завлечете и пуснете върху терминала. Така ще получите правилната команда.
#Изпълнете командата {{Шаблон:Console|sudo ./install}} за да го инсталирате или {{Шаблон:Console|su -c ./install}} ако не използвате sudo.
#Изпълнете командата {{Шаблон:Console|sudo ./install}} за да го инсталирате или {{Шаблон:Console|su -c ./install}} ако не използвате sudo.
#Рестартирайте демона с командата {{Шаблон:Console|sudo service pcscd restart}}.
#Рестартирайте демона с командата {{Шаблон:Console|sudo service pcscd restart}}.-->


<!--
===== Настройване на pcscd да се стартира със системата =====
===== Настройване на pcscd да се стартира със системата =====
В случай че използвате Ubuntu 11.04, 11.10 или 12.04 ще трябва да настроите pcscd да се стартира заедно със системата. Ако използвате друга дистрибуция или друга версия на Ubuntu преминете на следващата секция - [[#Премахване на libccid|премахване на libccid]]. В тези версии на Ubuntu демонът е настроен да работи като обикновен потребител, но драйверът на HID Global не може да работи по този начин. Това става с промяна на init скрипта на pcscd (/etc/init.d/pcscd). Може да отворите този файл с командата {{Шаблон:Console|sudo gedit /etc/init.d/pcscd}}. Трябва да намерите тази секция:
В случай че използвате Ubuntu 11.04, 11.10 или 12.04 ще трябва да настроите pcscd да се стартира заедно със системата. Ако използвате друга дистрибуция или друга версия на Ubuntu преминете на следващата секция - [[#Премахване на libccid|премахване на libccid]]. В тези версии на Ubuntu демонът е настроен да работи като обикновен потребител, но драйверът на HID Global не може да работи по този начин. Това става с промяна на init скрипта на pcscd (/etc/init.d/pcscd). Може да отворите този файл с командата {{Шаблон:Console|sudo gedit /etc/init.d/pcscd}}. Трябва да намерите тази секция:
Ред 48: Ред 57:


След тази промяна трябва да спрете всички работещи копия на pcscd и да го пуснете от стартиращият скрипт. В Ubuntu това се постига с последователното пускане на следните команди {{Шаблон:Console|sudo killall pcscd}} и {{Шаблон:Console|sudo service pcscd start}}.
След тази промяна трябва да спрете всички работещи копия на pcscd и да го пуснете от стартиращият скрипт. В Ubuntu това се постига с последователното пускане на следните команди {{Шаблон:Console|sudo killall pcscd}} и {{Шаблон:Console|sudo service pcscd start}}.
 
-->
<!--*
===== Премахване на libccid =====
===== Премахване на libccid =====
В повечето дистрибуции заедно с pcscd се инсталира и свободният драйвер libccid. Той не работи коректно с тези четци, така че ако не използвате четец, който работи само чрез libccid, трябва да го деинсталирате. За да не бъде премахнат и демонът при деинсталирането на libccid, може да инсталирате някой от другите пакети, предоставящи pcsc-ifd-handler - например libacr38u. Точната команда за Ubuntu е {{Шаблон:Console|sudo apt-get install libacr38u && sudo apt-get remove libccid}}.
В повечето дистрибуции заедно с pcscd се инсталира и свободният драйвер libccid. Той не работи коректно с тези четци, така че ако не използвате четец, който работи само чрез libccid, трябва да го деинсталирате. За да не бъде премахнат и демонът при деинсталирането на libccid, може да инсталирате някой от другите пакети, предоставящи pcsc-ifd-handler - например libacr38u. Точната команда за Ubuntu е {{Шаблон:Console|sudo apt-get install libacr38u && sudo apt-get remove libccid}}.
Ред 66: Ред 76:
[[Картинка:ACR_38U.png]][[Картинка:ACR_38T.png]]
[[Картинка:ACR_38U.png]][[Картинка:ACR_38T.png]]


ACR38U и някои варианти на ACR38T не са CCID съвместими, но за тях също има свободен драйвер, който може да намерите на [http://www.acs.com.hk/index.php?pid=drivers&id=ACR38T сайта на производителя] или в директория Drivers/Linux/ACS на диска. Те също са включени в Debian и Ubuntu, като името на пакета е '''libacr38u'''.
ACR38U и някои варианти на ACR38T не са CCID съвместими, но за тях също има свободен драйвер, който може да намерите на [http://www.acs.com.hk/index.php?pid=drivers&id=ACR38T сайта на производителя] или в директория Drivers/Linux/ACS на диска. Те също са включени в Debian и Ubuntu, като името на пакета е '''libacr38u'''. -->


В изхода на командата lsusb тези четци се появяват по следният начин:<pre>ID 072f:9000 Advanced Card Systems, Ltd ACR38 AC1038-based Smart Card Reader</pre>
<!--*В изхода на командата lsusb тези четци се появяват по следният начин:<pre>ID 072f:9000 Advanced Card Systems, Ltd ACR38 AC1038-based Smart Card Reader</pre>


===== ACR 38C =====
===== Всички останали четци =====
Ако вашият четец е означен с '''ACR38C-SPC-R''' от долната си страна, има надпис '''SIMLector 38T''' от вътрешната страна на капака на смарт картата или надпис '''mLector-S''' под капака на USB порта то той е CCID съвместим и се поддържа от '''libccid'''. Най-вероятно пакетът, съдържащ този драйвер, се казва '''libccid''' или само '''ccid'''. Освен чрез libccid, тези четци могат да работят и чрез поддържаният от производителят им драйвер - libacsccid1. Той е свободен софтуер и е пакетиран в много дистрибуции. В случай че освен този четец ви се налага да използвате и четец OmniKey по-добре да използвате libacsccid1 вместо libccid.
Ако вашият четец не е от изброените по-горе то той е CCID съвместим и се поддържа от свободният драйвер - '''libccid'''. Пакетът, съдържащ този драйвер, се казва '''libccid''' в Debian и Ubuntu, '''ccid''' във Fedora/RedHat и Arch и '''pcsc-ccid''' в openSUSE.-->
<!--Освен чрез libccid, тези четци могат да работят и чрез поддържаният от производителят им драйвер - libacsccid1. Той е свободен софтуер и е пакетиран в много дистрибуции. В случай че освен този четец ви се налага да използвате и четец OmniKey по-добре да използвате libacsccid1 вместо libccid.-->


За тези четци lsusb изписва следното:<pre>ID 072f:90cc Advanced Card Systems, Ltd ACR38 SmartCard Reader</pre>
<!--За тези четци lsusb изписва следното:<pre>ID 072f:90cc Advanced Card Systems, Ltd ACR38 SmartCard Reader</pre>-->


== Инсталиране на драйвери за смарт карта ==
<!--*== Инсталиране на драйвери за смарт карта ==


[[Image:warning.jpg|32px]] В зависимост от това, каква е вашата карта, се използва различен софтуер. Моделът на картата ви е изписан на персоналните права за достъп, заедно с ПИН и АИН кодовете. В случай че за модел пише „'''T&S DS/2048 (L)'''“, трябва да инсталирате '''bit4id-ipki''' от папката Install/Linux на инсталационния диск или от [[Използване на хранилищата на InfoNotary|DEB и RPM хранилищата на Инфонотари]]. Ако моделът на картата е „'''CardOS V4.3B (C)'''“, ще трябва да инсталирате OpenSC и да го конфигурирате, както е описано в следващата глава.
[[Image:WarningYellow.png|32px]] В зависимост от това, каква е вашата карта, се използва различен софтуер. Моделът на картата ви е изписан на персоналните права за достъп, заедно с ПИН и АИН кодовете. В случай че за модел пише „'''T&S DS/2048 (L)'''“, трябва да инсталирате '''bit4id-ipki''' от папката Install/Linux на инсталационния диск или от [[Използване на хранилищата на InfoNotary|DEB и RPM хранилищата на Инфонотари]]. Ако моделът на картата е „'''CardOS V4.3B (C)'''“, ще трябва да инсталирате OpenSC и да го конфигурирате, както е описано в следващата глава.


В случай че персоналните права за достъп до смарт картата не са налични, може да определете модела на картата по следните начини:
В случай че персоналните права за достъп до смарт картата не са налични, може да определете модела на картата по следните начини:
Ред 92: Ред 103:


'''В случай че ползвате Ubuntu 9.10 с OpenSC, допълнително ще трябва да инсталирате и пакета libpcsclite-dev.'''-->
'''В случай че ползвате Ubuntu 9.10 с OpenSC, допълнително ще трябва да инсталирате и пакета libpcsclite-dev.'''-->
 
<!--*
На страница [[Работа с OpenSC]] можете да намерите кратка инструкция за извършване на най-често използваните операции с OpenSC.
На страница [[Работа с OpenSC]] можете да намерите кратка инструкция за извършване на най-често използваните операции с OpenSC.


[[Image:warning.jpg|32px]] Картите '''T&S DS/2048 (L)''' не могат да се използват с OpenSC, а само с Bit4id Universal Middleware! В случай че трябва да използвате паралелно CardOS и T&S DS/2048 карти трябва да редактирате конфигурационният файл на OpenSC, както е описано в статията за [[Работа с OpenSC#Забраняване на OpenSC да работи с определена смарт карта|Работа с OpenSC]].
[[Image:WarningYellow.png|32px]] Картите '''T&S DS/2048 (L)''' не могат да се използват с OpenSC, а само с Bit4id Universal Middleware! В случай че трябва да използвате паралелно CardOS и T&S DS/2048 карти трябва да редактирате конфигурационният файл на OpenSC, както е описано в статията за [[Работа с OpenSC#Забраняване на OpenSC да работи с определена смарт карта|Работа с OpenSC]].


[[Image:warning.jpg|32px]] OpenSC 0.16 и следващите версии разчитат драйверът на четецът да предоставя допълнителна информация за възможностите на хардуера в противоречие с PC/SC стандартът. Поради тази причина в случай че използвате OpenSC с OmniKey четец трябва да зададете ръчно максималната дължина на съобщението в конфигурационният му файл. В секцията reader_driver pcsc трябва да се разкоментират редовете за max_send_size и max_recv_size и да се зададе и двете стойности да са поне 300 байта:
[[Image:WarningYellow.png|32px]] OpenSC версия 0.16 и 0.17 разчитат драйверът на четецът да предоставя допълнителна информация за възможностите на хардуера в противоречие с PC/SC стандартът. Поради тази причина в случай че използвате OpenSC с OmniKey четец трябва да зададете ръчно максималната дължина на съобщението в конфигурационният му файл. В секцията reader_driver pcsc трябва да се разкоментират редовете за max_send_size и max_recv_size и да се зададе и двете стойности да са поне 300 байта, например:


     reader_driver pcsc {
     reader_driver pcsc {
Ред 115: Ред 126:
Желателно е четецът с картата да са включени в компютъра при пускането на теста.
Желателно е четецът с картата да са включени в компютъра при пускането на теста.


За да се покаже потребителският интерфйс на програмата трябва да имате инсталиран някой от следните пакети - python-tk за Debian/Ubuntu, tkinter за Fedora/RedHat или zenity. Ако не са инсталирани тези пакети, програмата ще работи, но ще може да се използва само от терминал.
За да се покаже потребителският интерфйс на програмата трябва да имате инсталиран някой от следните пакети - python-tk за Debian/Ubuntu, tkinter за Fedora/RedHat или zenity. Ако не са инсталирани тези пакети, програмата ще работи, но ще може да се използва само от терминал.-->


<!--
<!--

Текуща версия към 09:24, 22 юни 2022

Тази страница не е активна!