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

От Infonotary
Направо към навигацията Направо към търсенето
(Проверка на правописа)
Ред 1: Ред 1:
= Инсталиране на драйвер за четеца =
== Инсталиране на драйвер за четеца ==


Всички четци предлагани от Инфонотари EАД имат драйвери за Linux, които могат да се изтеглят от сайта на производителя им - [http://omnikey.aaitg.com/index.php?id=69 OmniKey] или [http://www.acs.com.hk/download/ACR38_LINUX_100709_P.tar.gz ACS]. В някои случаи тези драйвери могат да се инсталират директно чрез пакетната система на Вашата дистрибуция.
Всички четци предлагани от Инфонотари EАД имат драйвери за Linux, които могат да се изтеглят от сайта на производителя им - [http://www.hidglobal.com/driverDownloads.php?techCat=19&prod_id=182 OmniKey] или [http://www.acs.com.hk/download/ACR38_LINUX_100709_P.tar.gz ACS]. В някои случаи тези драйвери могат да се инсталират директно чрез пакетната система на Вашата дистрибуция.


== Инсталация на PC/SC ==
=== Инсталация на PC/SC ===
Независимо от модела на вашият четец ще трябва да инсталирате пакетите '''pcscd''' и '''libpcsclite'''. Това е демона чрез който програмите работят с четеца и съответно със смарт картата. След инсталация на нов драйвер трябва да рестартирате pcscd. Ако инсталирате драйверите от пакет той най-вероятно ще рестартира демона.
Независимо от модела на вашият четец ще трябва да инсталирате пакетите '''pcscd''' и '''libpcsclite'''. Това е демона чрез който програмите работят с четеца и съответно със смарт картата. След инсталация на нов драйвер трябва да рестартирате pcscd. Ако инсталирате драйверите от пакет той най-вероятно ще рестартира демона.


Ред 9: Ред 9:
В случай че не покаже нищо, значи демона не работи.
В случай че не покаже нищо, значи демона не работи.


== Видове четци ==
=== Видове четци ===


=== OmniKey ===
==== OmniKey ====


[[Картинка:CardMan6121.gif]][[Картинка:CardMan3021.png]]
[[Картинка:CardMan6121.gif]][[Картинка:CardMan3021.png]]
Ред 19: Ред 19:
'''За да работи драйверът той трябва да се инсталира в директорията с драйвери на pcscd. В Debian и Ubuntu тя е /usr/lib/pcsc/drivers, съответно командата за инсталиране в Ubuntu е {{Шаблон:Console|sudo ./install -d /usr/lib/pcsc/drivers}}. В SUSE и OpenSUSE драйверите за четци са в /usr/lib/readers/'''. След това трябва да рестартирате демона с командата {{Шаблон:Console|sudo /etc/init.d/pcscd restart}}.
'''За да работи драйверът той трябва да се инсталира в директорията с драйвери на pcscd. В Debian и Ubuntu тя е /usr/lib/pcsc/drivers, съответно командата за инсталиране в Ubuntu е {{Шаблон:Console|sudo ./install -d /usr/lib/pcsc/drivers}}. В SUSE и OpenSUSE драйверите за четци са в /usr/lib/readers/'''. След това трябва да рестартирате демона с командата {{Шаблон:Console|sudo /etc/init.d/pcscd restart}}.


В случай че след инсталацията на драйвера на OmniKey все още получавате грешки при използване на удостоверението си, ще се наложи да премахнете пакета libccid. За да не бъде премахнат демона при деинсталирането на libccid може да инсталирате някой от другите пакети предоставящи pcsc-ifd-handler - например libacr38u. Точната комадна за Ubuntu е {{Шаблон:Console|sudo apt-get install libacr38u && sudo apt-get remove libccid}}.
В случай че след инсталацията на драйвера на OmniKey все още получавате грешки при използване на удостоверението си, ще се наложи да премахнете пакета libccid. За да не бъде премахнат демона при деинсталирането на libccid може да инсталирате някой от другите пакети предоставящи pcsc-ifd-handler - например libacr38u. Точната команда за Ubuntu е {{Шаблон:Console|sudo apt-get install libacr38u && sudo apt-get remove libccid}}.


Ако в дистрибуцията, която ползвате не може да се премахне libccid без да се премахне pcscd ще трябва да премахнете или изключите драйвера ръчно:<br>
Ако в дистрибуцията, която ползвате не може да се премахне libccid без да се премахне pcscd ще трябва да премахнете или изключите драйвера ръчно:<br>
По-деструктивният вариант е просто да изтриете драйвера от папката на pcscd. Във Fedora той е /usr/lib/pcsc/drivers/ifd-ccid.bundle или /usr/lib64/pcsc/drivers/ifd-ccid.bundle в x86_64 версията. В Ubuntu със следната команда може да го преместите в домашната папка:<br/>{{Шаблон:Console|H&#61;$HOME; sudo mv /usr/lib/pcsc/drivers/ifd-ccid.bundle $H}}.<br>
По-деструктивният вариант е просто да изтриете драйвера от папката на pcscd. Във Fedora той е /usr/lib/pcsc/drivers/ifd-ccid.bundle или /usr/lib64/pcsc/drivers/ifd-ccid.bundle в x86_64 версията. В Ubuntu със следната команда може да го преместите в домашната папка:<br/>{{Шаблон:Console|H&#61;$HOME; sudo mv /usr/lib/pcsc/drivers/ifd-ccid.bundle $H}}.<br>
По-трудният, но и по-коректен начин за справяне с проблема е с текстов редактор да премахнете от файла /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist описанието на вашият четец. За OmniKey 6121 ifdVendorID e 076b, ifdProductID e 6622, a ifdFrendlyName e „OmniKey CardMan 6121“. За OmniKey 3021 ifdVendorID e 076b, ifdProductID е 0x3021, а ifdFrendlyName е „OMNIKEY CardMan 3x21“. Това е и единственият вариант при който може да ползвате вдновременно четците на OmniKey и други ccid съвместими четци. Ако по този начин деактивирате libccid имайте в предвид че при следващото му обновяване промените по конфигурационният му файл ще бъдат загубени.
По-трудният, но и по-коректен начин за справяне с проблема е с текстов редактор да премахнете от файла /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist описанието на вашият четец. За OmniKey 6121 ifdVendorID e 076b, ifdProductID e 6622, a ifdFrendlyName e „OmniKey CardMan 6121“. За OmniKey 3021 ifdVendorID e 076b, ifdProductID е 0x3021, а ifdFrendlyName е „OMNIKEY CardMan 3x21“. Това е и единственият вариант при който може да ползвате едновременно четците на OmniKey и други ccid съвместими четци. Ако по този начин деактивирате libccid имайте в предвид че при следващото му обновяване промените по конфигурационният му файл ще бъдат загубени.


За да проверите кой точно драйвер използва pcscd трябва да го пуснете в debug режим с параметри -fd. Например в Ubuntu това може да стане по този начин - {{Шаблон:Console|sudo /usr/sbin/pcscd -fd}}. В изхода от тази команда би трябвало да имате нещо подобно на това:
За да проверите кой точно драйвер използва pcscd трябва да го пуснете в debug режим с параметри -fd. Например в Ubuntu това може да стане по този начин - {{Шаблон:Console|sudo /usr/sbin/pcscd -fd}}. В изхода от тази команда би трябвало да имате нещо подобно на това:
Ред 29: Ред 29:
Ако не се появи този надпис, значи драйверът на OmniKey не се зарежда.
Ако не се появи този надпис, значи драйверът на OmniKey не се зарежда.


=== ACS ===
==== ACS ====
[[Картинка:ACR_38U.png]][[Картинка:ACR_38T.png]]
[[Картинка:ACR_38U.png]][[Картинка:ACR_38T.png]]


ACR38U и някои варианти на ACR38T не са CCID съвместими, но за тях също има свободен драйвер който може да намерите на [http://www.acs.com.hk/drivers/eng/ACR38U_driver_Lnx_1710_P.tar.gz сайта на производителя] или в директория Drivers/Linux/ACS на диска. Те също са включени в Debian и Ubuntu, като името на пакета е '''libacr38u'''.
ACR38U и някои варианти на ACR38T не са CCID съвместими, но за тях също има свободен драйвер който може да намерите на [http://www.acs.com.hk/drivers/eng/ACR38U_driver_Lnx_1710_P.tar.gz сайта на производителя] или в директория Drivers/Linux/ACS на диска. Те също са включени в Debian и Ubuntu, като името на пакета е '''libacr38u'''.


==== ACR 38C ====
===== ACR 38C =====
Ако вашият четец е означен с ACR38C-SPC-R от долната си страна или има надпис SIMLector 38T от вътрешната страна на капачето, то той е CCID съвместим и се поддържа от '''libccid'''. Най-вероятно пакета съдържащ този драйвер се казва '''libccid''' или само '''ccid'''.
Ако вашият четец е означен с ACR38C-SPC-R от долната си страна или има надпис SIMLector 38T от вътрешната страна на капачето, то той е CCID съвместим и се поддържа от '''libccid'''. Най-вероятно пакета съдържащ този драйвер се казва '''libccid''' или само '''ccid'''.


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


В зависимост от това каква е вашата карта се използва различен софтуер. Модела на картата ви е изписан на персоналните права за достъп, които сте получили заедно с картата. В случай че за модел пише „T&S DS/2048 (L)“ тряба да инсталирате Bit4id Universal Middleware от инсталационният диск или от [[Използване на хранилищата на InfoNotary|DEB и RPM хранилищата на Инфонотари]]. Ако модела на картата е „CardOS V4.3B (C)“, ще трабва да инсталирате OpenSC и да го конфигурирате, както е описано в следващата глава.
В зависимост от това каква е вашата карта се използва различен софтуер. Модела на картата ви е изписан на персоналните права за достъп, които сте получили заедно с картата. В случай че за модел пише „T&S DS/2048 (L)“ тряба да инсталирате Bit4id Universal Middleware от инсталационният диск или от [[Използване на хранилищата на InfoNotary|DEB и RPM хранилищата на Инфонотари]]. Ако модела на картата е „CardOS V4.3B (C)“, ще трябва да инсталирате OpenSC и да го конфигурирате, както е описано в следващата глава.


== Инсталиране на OpenSC ==
=== Инсталиране на OpenSC ===
За да ползвате удостоверенито си за електронен подпис чрез OpenSC ще трябва да си инсталирате версия 0.11.4 или по-нова. Най-добре да ползвате пакет от вашата дистрибуция. Ако в нея OpenSC липсва или е по-стара версия ще се наложи да го изтеглите от сайта на [http://www.opensc-project.org/ проекта] и да го компилирате ръчно.
За да ползвате удостоверението си за електронен подпис чрез OpenSC ще трябва да си инсталирате версия 0.11.4 или по-нова. Най-добре да ползвате пакет от вашата дистрибуция. Ако в нея OpenSC липсва или е по-стара версия ще се наложи да го изтеглите от сайта на [http://www.opensc-project.org/ проекта] и да го компилирате ръчно.


След инсталацията на OpenSC трябва да го настроите да ползва само '''pcsc''' за връзка с четеца. Това става като в конфигурационният файл (/etc/opensc/opensc.conf) промените реда:<pre style="font-family:monospace; font-size: 92%;"># reader_drivers = openct, pcsc, ctapi;</pre> на <pre style="font-family:monospace; font-size: 92%;">reader_drivers = pcsc;</pre> Ако файла onepin-opensc-pkcs11.so не е инсталиран с OpenSC ще трябва да промените и стойността на num_slots от „num_slots = 4;“, на „num_slots= 1;“
След инсталацията на OpenSC трябва да го настроите да ползва само '''pcsc''' за връзка с четеца. Това става като в конфигурационният файл (/etc/opensc/opensc.conf) промените реда:<pre style="font-family:monospace; font-size: 92%;"># reader_drivers = openct, pcsc, ctapi;</pre> на <pre style="font-family:monospace; font-size: 92%;">reader_drivers = pcsc;</pre> Ако файла onepin-opensc-pkcs11.so не е инсталиран с OpenSC ще трябва да промените и стойността на num_slots от „num_slots = 4;“, на „num_slots= 1;“
Ред 48: Ред 48:
'''В случай че ползвате Ubuntu 9.10 с OpenSC допълнително ще трябва да инсталирате и пакета libpcsclite-dev.'''
'''В случай че ползвате Ubuntu 9.10 с OpenSC допълнително ще трябва да инсталирате и пакета libpcsclite-dev.'''


На страница [[Работа с OpenSC]] можете да намерите кратка инстрикция за извършване на чай-често използваните опрации с OpenSC.
На страница [[Работа с OpenSC]] можете да намерите кратка инструкция за извършване на чай-често използваните операции с OpenSC.
<!--
<!--
== Смарт карти Siemens ==
=== Смарт карти Siemens ===
В случай че ползвате смарт карта Siemens и 32 битова дистрибуция с x86 процесор (Intel, AMD или Via), можете да инсталирате официалният драйвер на Siemens. '''Ако използвате 64 битова дистрибуция, друга процесорна архитектура или друга Unix подобна операционна система ще се наложи да ползвате [[#Смарт карти Charismatics (OpenSC)|OpenSC]]'''. Драйвера на Siemens може да намерите в директорията Drivers/Linux/Siemens на диска. '''Ако нямате такава папка на диска, то картата ви е Charismathics и трябва да следвате инструкциите за [[#Смарт карти Charismatics (OpenSC)|тези карти]]'''. Разархивирайте архива „HiPath_SIcurity_Card_API_V3_1_010_Linux.tar.gz“, в главната директория на вашата Linux инсталация. Това може да стане със следните команди от директорията Drivers/Linux/Siemens на диска:
В случай че ползвате смарт карта Siemens и 32 битова дистрибуция с x86 процесор (Intel, AMD или Via), можете да инсталирате официалният драйвер на Siemens. '''Ако използвате 64 битова дистрибуция, друга процесорна архитектура или друга Unix подобна операционна система ще се наложи да ползвате [[#Смарт карти Charismatics (OpenSC)|OpenSC]]'''. Драйвера на Siemens може да намерите в директорията Drivers/Linux/Siemens на диска. '''Ако нямате такава папка на диска, то картата ви е Charismathics и трябва да следвате инструкциите за [[#Смарт карти Charismatics (OpenSC)|тези карти]]'''. Разархивирайте архива „HiPath_SIcurity_Card_API_V3_1_010_Linux.tar.gz“, в главната директория на вашата Linux инсталация. Това може да стане със следните команди от директорията Drivers/Linux/Siemens на диска:



Версия от 15:53, 9 март 2011

Инсталиране на драйвер за четеца

Всички четци предлагани от Инфонотари EАД имат драйвери за Linux, които могат да се изтеглят от сайта на производителя им - OmniKey или ACS. В някои случаи тези драйвери могат да се инсталират директно чрез пакетната система на Вашата дистрибуция.

Инсталация на PC/SC

Независимо от модела на вашият четец ще трябва да инсталирате пакетите pcscd и libpcsclite. Това е демона чрез който програмите работят с четеца и съответно със смарт картата. След инсталация на нов драйвер трябва да рестартирате pcscd. Ако инсталирате драйверите от пакет той най-вероятно ще рестартира демона.

Може да проверите дали pcscd работи с командата ps ax | grep pcscd | grep -v "grep pcscd" пусната от терминал. Би трябвало да изпише нещо подобно на това:

3446 ? Ssl 0:01 /usr/sbin/pcscd

В случай че не покаже нищо, значи демона не работи.

Видове четци

OmniKey

CardMan6121.gifCardMan3021.png

За да използвате пълноценно четците за смарт карти на OmniKey под Linux ще трябва да инсталирате официалният драйвер на OmniKey вместо включеният в повечето дистрибуции libccid. Можете да го изтеглите от техният сайт или от сайта на Инфонотари.

За да работи драйверът той трябва да се инсталира в директорията с драйвери на pcscd. В Debian и Ubuntu тя е /usr/lib/pcsc/drivers, съответно командата за инсталиране в Ubuntu е sudo ./install -d /usr/lib/pcsc/drivers. В SUSE и OpenSUSE драйверите за четци са в /usr/lib/readers/. След това трябва да рестартирате демона с командата sudo /etc/init.d/pcscd restart.

В случай че след инсталацията на драйвера на OmniKey все още получавате грешки при използване на удостоверението си, ще се наложи да премахнете пакета libccid. За да не бъде премахнат демона при деинсталирането на libccid може да инсталирате някой от другите пакети предоставящи pcsc-ifd-handler - например libacr38u. Точната команда за Ubuntu е sudo apt-get install libacr38u && sudo apt-get remove libccid.

Ако в дистрибуцията, която ползвате не може да се премахне libccid без да се премахне pcscd ще трябва да премахнете или изключите драйвера ръчно:
По-деструктивният вариант е просто да изтриете драйвера от папката на pcscd. Във Fedora той е /usr/lib/pcsc/drivers/ifd-ccid.bundle или /usr/lib64/pcsc/drivers/ifd-ccid.bundle в x86_64 версията. В Ubuntu със следната команда може да го преместите в домашната папка:
H=$HOME; sudo mv /usr/lib/pcsc/drivers/ifd-ccid.bundle $H.
По-трудният, но и по-коректен начин за справяне с проблема е с текстов редактор да премахнете от файла /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist описанието на вашият четец. За OmniKey 6121 ifdVendorID e 076b, ifdProductID e 6622, a ifdFrendlyName e „OmniKey CardMan 6121“. За OmniKey 3021 ifdVendorID e 076b, ifdProductID е 0x3021, а ifdFrendlyName е „OMNIKEY CardMan 3x21“. Това е и единственият вариант при който може да ползвате едновременно четците на OmniKey и други ccid съвместими четци. Ако по този начин деактивирате libccid имайте в предвид че при следващото му обновяване промените по конфигурационният му файл ще бъдат загубени.

За да проверите кой точно драйвер използва pcscd трябва да го пуснете в debug режим с параметри -fd. Например в Ubuntu това може да стане по този начин - sudo /usr/sbin/pcscd -fd. В изхода от тази команда би трябвало да имате нещо подобно на това:

OK OMNIKEY CardMan CCID IA32 v3.6.1 support@omnikey.com

Ако не се появи този надпис, значи драйверът на OmniKey не се зарежда.

ACS

ACR 38U.pngACR 38T.png

ACR38U и някои варианти на ACR38T не са CCID съвместими, но за тях също има свободен драйвер който може да намерите на сайта на производителя или в директория Drivers/Linux/ACS на диска. Те също са включени в Debian и Ubuntu, като името на пакета е libacr38u.

ACR 38C

Ако вашият четец е означен с ACR38C-SPC-R от долната си страна или има надпис SIMLector 38T от вътрешната страна на капачето, то той е CCID съвместим и се поддържа от libccid. Най-вероятно пакета съдържащ този драйвер се казва libccid или само ccid.

Инсталиране на драйвери за смарт карта

В зависимост от това каква е вашата карта се използва различен софтуер. Модела на картата ви е изписан на персоналните права за достъп, които сте получили заедно с картата. В случай че за модел пише „T&S DS/2048 (L)“ тряба да инсталирате Bit4id Universal Middleware от инсталационният диск или от DEB и RPM хранилищата на Инфонотари. Ако модела на картата е „CardOS V4.3B (C)“, ще трябва да инсталирате OpenSC и да го конфигурирате, както е описано в следващата глава.

Инсталиране на OpenSC

За да ползвате удостоверението си за електронен подпис чрез OpenSC ще трябва да си инсталирате версия 0.11.4 или по-нова. Най-добре да ползвате пакет от вашата дистрибуция. Ако в нея OpenSC липсва или е по-стара версия ще се наложи да го изтеглите от сайта на проекта и да го компилирате ръчно.

След инсталацията на OpenSC трябва да го настроите да ползва само pcsc за връзка с четеца. Това става като в конфигурационният файл (/etc/opensc/opensc.conf) промените реда:

# reader_drivers = openct, pcsc, ctapi;

на

reader_drivers = pcsc;

Ако файла onepin-opensc-pkcs11.so не е инсталиран с OpenSC ще трябва да промените и стойността на num_slots от „num_slots = 4;“, на „num_slots= 1;“

В случай че ползвате Ubuntu 9.10 с OpenSC допълнително ще трябва да инсталирате и пакета libpcsclite-dev.

На страница Работа с OpenSC можете да намерите кратка инструкция за извършване на чай-често използваните операции с OpenSC.