Re: Fedora и RuToken
Здравствуйте,
Задача: настройка доступа к удаленному серверу (OpenSSH) на Fedora и ubuntu (на обеих системах в результате получаю одну и ту же ошибку, непонятно на каком шаге ошибаюсь)
Логи приведены с системы Fedora 18
начну с пакетов:
# rpm -qva | grep opensc
opensc-0.12.2-6.fc18.i686
# rpm -qva | grep openct
openct-0.6.20-5.fc18.i686
pcsc-lite-openct-0.6.20-5.fc18.i686
openct-devel-0.6.20-5.fc18.i686
# rpm -qva | grep pcsc-lite
pcsc-lite-libs-1.8.7-1.fc18.i686
pcsc-lite-openct-0.6.20-5.fc18.i686
pcsc-lite-1.8.7-1.fc18.i686
pcsc-lite-devel-1.8.7-1.fc18.i686
pcsc-lite-ccid-1.4.8-1.fc18.i686
Устройство Rutoken S 32k240z:
# openct-tool list
0 Rutoken S driver
Ставилось все со стандартных репозитариев, с сурсов сборка "сходу" не пошла, а судя по темам на форуме для Rutoken S достаточно доставлять пакеты из репозитариев.
По задаче есть у Вас небольшой мануал: http://dev.rutoken.ru/pages/viewpage.ac … Id=3440675
Использую метод с библиотекой opensc-pkcs11.so
#pkcs15-init --erase-card -p rutoken_ecp
тут похоже все удачно. Лог дебага http://pastebin.com/x0ZaD5qG
Далее:
#pkcs15-init --create-pkcs15 --so-pin "87654321" --so-puk ""
На запрос пина ввожу стандартный пользовательский 12345678
просит заполнить снова и тд.
pkcs15-init --create-pkcs15 --so-pin "87654321" --so-puk ""
Using reader with a card: Aktiv Rutoken S 00 00
User PIN required.
Please enter User PIN:
User PIN required.
Please enter User PIN:
User PIN required.
Please enter User PIN:
Повторяю тоже самое, говорит что контейнер уже есть:
# pkcs15-init --create-pkcs15 --so-pin "87654321" --so-puk ""
Using reader with a card: Aktiv Rutoken S 00 00
User PIN required.
Please enter User PIN:
Failed to create PKCS #15 meta structure: File already exists
и далее
# pkcs15-init --store-pin --label "User PIN" --auth-id 02 --pin "12345678" --puk "" --so-pin "87654321" --finalize
Using reader with a card: Aktiv Rutoken S 00 00
0xb74c8900 17:39:46.613 [pkcs15-init] pkcs15-itacns.c:857:sc_pkcs15emu_itacns_init_ex: called
PKCS#15 binding failed: Unsupported card
Генерация ключа на токен соответственно не проходит, из-за ошибки на стадии инициализации токена.
Дальше привожу вывод еще некоторых утилит:
# pcsc_scan
PC/SC device scanner
V 1.4.17 (c) 2001-2009, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.4
Scanning present readers...
0: Aktiv Rutoken S 00 00
Mon Jun 17 17:44:54 2013
Reader 0: Aktiv Rutoken S 00 00
Card state: Card inserted,
ATR: 3B 6F 00 FF 00 56 72 75 54 6F 6B 6E 73 30 20 00 00 90 00
defined(@array) is deprecated at /usr/lib/perl5/vendor_perl/Chipcard/PCSC.pm line 69.
(Maybe you should just omit the defined()?)
ATR: 3B 6F 00 FF 00 56 72 75 54 6F 6B 6E 73 30 20 00 00 90 00
+ TS = 3B --> Direct Convention
+ T0 = 6F, Y(1): 0110, K: 15 (historical bytes)
TB(1) = 00 --> VPP is not electrically connected
TC(1) = FF --> Extra guard time: 255 (special value)
+ Historical bytes: 00 56 72 75 54 6F 6B 6E 73 30 20 00 00 90 00
Category indicator byte: 00 (compact TLV data object)
Tag: 5, len: 6 (card issuer's data)
Card issuer data: 72 75 54 6F 6B 6E
Tag: 7, len: 3 (card capabilities)
Selection methods: 30
- DF selection by path
- DF selection by file identifier
Data coding byte: 20
- Behaviour of write functions: proprietary
- Value 'FF' for the first byte of BER-TLV tag fields: invalid
- Data unit in quartets: 1
Command chaining, length fields and logical channels: 00
- Logical channel number assignment: No logical channel
- Maximum number of logical channels: 1
Mandatory status indicator (3 last bytes)
LCS (life card cycle): 00 (No information given)
SW: 9000 (Normal processing.)
Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
3B 6F 00 FF 00 56 72 75 54 6F 6B 6E 73 30 20 00 00 90 00
ruToken-S (USB token)
https://www.rutoken.ru/products/rutoken/rutoken-s/
opensc-explorer
OpenSC Explorer version 0.12.2
Using reader with a card: Aktiv Rutoken S 00 00
OpenSC [3F00]> ls
FileID Type Size
[0000] DF 0
[5015] DF 0
OpenSC [3F00]>
vim /usr/lib/pcsc/drivers/ifd-rutokens.bundle/Contents/Info.plist:
<key>ifdProductString</key>
<string>Rutoken S driver</string>
<key>ifdVendorID</key>
<array>
<string>0x0A89</string>
</array>
<key>ifdProductID</key>
<array>
<string>0x0020</string>
</array>
<key>ifdFriendlyName</key>
<array>
<string>Aktiv Co. Rutoken S</string>
</array>
# pkcs11-tool --module=/usr/lib/opensc-pkcs11.so -L
0xb74bf900 18:17:43.718 [opensc-pkcs11] pkcs15-itacns.c:857:sc_pkcs15emu_itacns_init_ex: called
Available slots:
Slot 0 (0xffffffff): Virtual hotplug slot
(empty)
Slot 1 (0x1): Aktiv Rutoken S 00 00
token state: uninitialized
# ifdhandler -ddd -F -p rutoken usb /dev/bus/usb/004/002
Debug: ifd_open: trying to open rutoken@usb:/dev/bus/usb/004/002
Debug: usb_set_params: called. config xffffffff ifc x00 eps xffffffff/xffffffff
Error: usb_claiminterface failed: Device or resource busy
Error: Rutoken: setting parameters failed
Error: usb:/dev/bus/usb/004/002: initialization failed (driver rutoken)
Error: unable to open reader rutoken usb /dev/bus/usb/004/002