I've bought a pair of yubico devices to play with for various projects, however, it's struck me that they are not working on debian 10. I understand there's a few bug reports and udev rules floating around to mitigate this, but after having tried several of these suggestions, I am still not having success.
Here's what I know:
- USB device is recognised by the kernel and listed under lsusb
Bus 001 Device 097: ID 1050:0120 Yubico.com Yubikey Touch U2F Security Key
- I have yubikey-personalization version 1.19.3-3+deb10u1 installed but it's not able to communicate with the device
$ ykinfo -a
Yubikey core error: no yubikey present
- I am running the following udev rule under /etc/udev/rules.d
SUBSYSTEM=="usb", \
ATTRS{idVendor}=="1050", ATTRS{idProduct}=="0010|0110|0111|0114|0116|0120|0401|0403|0405|0407|0410", TAG+="uaccess", GROUP="plugdev", MODE="0660", ENV{ID_SECURITY_TOKEN}="1"
- I believe the udev rules are being applied by observing
udevadm(:uaccess: tag won't appear without this rule)
P: /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.1/1-3.1.2
N: bus/usb/001/098
L: 0
E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.1/1-3.1.2
E: DEVNAME=/dev/bus/usb/001/098
E: DEVTYPE=usb_device
E: DRIVER=usb
E: PRODUCT=1050/120/524
E: TYPE=0/0/0
E: BUSNUM=001
E: DEVNUM=098
E: MAJOR=189
E: MINOR=97
E: SUBSYSTEM=usb
E: USEC_INITIALIZED=1729210604667
E: ID_VENDOR=Yubico
E: ID_VENDOR_ENC=Yubico
E: ID_VENDOR_ID=1050
E: ID_MODEL=Security_Key_by_Yubico
E: ID_MODEL_ENC=Security\x20Key\x20by\x20Yubico
E: ID_MODEL_ID=0120
E: ID_REVISION=0524
E: ID_SERIAL=Yubico_Security_Key_by_Yubico
E: ID_BUS=usb
E: ID_USB_INTERFACES=:030000:
E: ID_VENDOR_FROM_DATABASE=Yubico.com
E: ID_MODEL_FROM_DATABASE=Yubikey Touch U2F Security Key
E: ID_SECURITY_TOKEN=1
E: ID_PATH=pci-0000:00:14.0-usb-0:3.1.2
E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_3_1_2
E: ID_FOR_SEAT=usb-pci-0000_00_14_0-usb-0_3_1_2
E: TAGS=:uaccess:seat:
- The thing still won't work. I've straced
ykinfo -aand I can see it querying the device under /sys/devices/* but I can't tell what whould have been happening. (I haven't had the chance to consult the code yet).
access("/sys/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.1/1-3.1.1/1-3.1.1:1.2/uevent", F_OK) = 0
readlinkat(AT_FDCWD, "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.1/1-3.1.1/1-3.1.1:1.2/subsystem", "../../../../../../../../bus/usb", 4096) = 31
openat(AT_FDCWD, "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.1/1-3.1.1/1-3.1.1:1.2/uevent", O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
fstat(8, {st_mode=S_IFREG|0644, st_size=4096, ...}) = 0
read(8, "DEVTYPE=usb_interface\nDRIVER=usb"..., 4096) = 144
read(8, "", 4096) = 0
close(8) = 0
openat(AT_FDCWD, "/run/udev/data/+usb:1-3.1.1:1.2", O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=100, ...}) = 0
fstat(8, {st_mode=S_IFREG|0644, st_size=100, ...}) = 0
read(8, "I:1719118270117\nE:ID_VENDOR_FROM"..., 4096) = 100
read(8, "", 4096) = 0
close(8) = 0
Does anyone know or understand why it is not working, what can I do to further debug the issue, what I may try to fix it? If anyone has a working yubico security key on debian 10, please could you share information so I can compare notes please?