私はYubikey NEOを持っていてDebianで実行しようとしています。
挿入するとudevイベントは受信されますが、/dev/hidrawは受信されませんか?機器。
私が今まで知っているのは次のとおりです。
cat /boot/config-$(uname -r) | grep CONFIG_HIDRAW)
以下を提供します。
CONFIG_HIDRAW=y
lsusb -v -d 1050:0211
以下を提供します。
Bus 002 Device 013: ID 1050:0211 Yubico.com
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x1050 Yubico.com
idProduct 0x0211
bcdDevice 0.20
iManufacturer 1 Yubico
iProduct 2 Yubico WinUSB Gnubby (gnubby1)
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 30mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Device Status: 0x0000
(Bus Powered)
udevadm monitor
Yubikeyを接続して分離した状態で実行すると、次の結果が表示されます。
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[7941.975349] add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
KERNEL[7941.975583] add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
UDEV [7941.985350] add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
UDEV [7942.998352] add /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
KERNEL[7945.487692] remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
KERNEL[7945.487791] remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
UDEV [7945.488139] remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0 (usb)
UDEV [7945.488620] remove /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2 (usb)
提案されているようにudevルールを追加しました。ここそしてcat /etc/udev/rules.d/70-u2f.rules
以下を提供します:
ACTION!="add|change", GOTO="u2f_end"
#KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1050", TAG+="uaccess"
ATTRS{idVendor}=="1050", GROUP="plugdev", MODE="0660"
LABEL="u2f_end"
(コメント行のコメント処理が解除されても機能しません。)
インストールしようとしましたが、libhidapi-hidraw0
それも機能していないようです。
また、Yubikey NEO Managerをインストールして実行してみましたが、それとyubikeyパーソナライズツールの両方がYubikeyデバイスが接続されていないと思います。だから私はブレーカーが欠落している/ dev / hidraw0デバイスだと思います。同様のレベル)。
私のLinuxの知識とGoogleソリューションの能力は限界に達しました。
答え1
一部の中古YubikeyはGoogleテストチームによって提供されているため、Yubikeyをどこで入手するかに注意する必要があります。これは、現在のバージョンのNEO Managerまたはパーソナライズツールには適用されません。
0x02xx対応するデバイスはテストデバイスです。
yubikeyサポートチームに助けを求めて、デバイスIDと個人的な経験(おそらくeBay)でそのデバイスを入手した方法を提供すると、彼らは喜んでデバイスを無料でRMAし、慈悲深く新しいデバイスを送ります。結果は異なる場合があります。
頑張ってください!
答え2
/etc/udev/rules.d/70-u2f.rules
ファイルが古いようです/lib/udev/rules.d/
。 yubikey-personalizationパッケージをインストールした場合は、そのファイルが必要です/lib/udev/rules.d/69-yubikey.rules
。ファイルを開き、既知のリストにテストデバイスID(0x0210)を追加します。 idVendors中間。次のような結果が出てくるはずです。これはubuntu wily werewolfからのものです。他のOSバージョンは若干異なる場合があります。キーは、製品IDのリストに0211を追加することです。
ACTION!="add|change", GOTO="yubico_end"
# Udev rules for letting the console user access the Yubikey USB
# device node, needed for challenge/response to work correctly.
# Yubico Yubikey II
ATTRS{idVendor}=="1050", ATTRS{idProduct}=="0010|0110|0111|0114|0116|0211|0401|0403|0405|0407|0410", \
ENV{ID_SECURITY_TOKEN}="1"
LABEL="yubico_end"
その後、reload udevルールを使用してsudo udevadm control --reload-rules
からキーを削除して再挿入する必要があります。それは私のために働くのに十分です。