我使用 Xubuntu,纯 Xfce,64 位。
问题:
我尝试过2种方法;两者都因不同的原因而失败:(1) 命令行方式(见下文)失败,因为它在任何阶段都不会真正要求引脚验证。 (2) 使用“蓝牙”实用程序的 GUI 方式(听起来很通用,但这就是该工具的实际名称以及在 Synaptic 下的编目方式)失败,因为当蓝牙请求引脚时键盘没有响应。
如何使用自动生成的 PIN 正确配对我的设备?
我真的不在乎该解决方案是否基于 GUI,只要您可以让它以安全方式与 PIN 配对即可。出于与安全相关的明显原因,我不想一直在发现模式下使用键盘。
我失败的细节:
我按照以下说明进行操作http://ubuntuforums.org/showthread.php?t=224673为了激活通用蓝牙设备(http://www.ebay.com/itm/Mini-Bluetooth-Keyboard-PC-Mac-iPhone-Nokia-PDA-HTC-/110653444332?pt=PCA_Mice_Trackballs&hash=item19c37590ec),成功了。除了应该要求我输入密码的部分之外,我没有。我心里想,这有点令人不安。附近的任何人都可以通过这种方式连接到我的键盘并开始记录我的活动。
无论如何,我就是这样做的:
peter@peter-xfce:~$ hcitool scan
Scanning ...
peter@peter-xfce:~$ hcitool scan
Scanning ...
00:12:A1:11:04:E9 Bluetooth Keyboard
peter@peter-xfce:~$ gksudo mousepad /etc/bluetooth/hcid.conf
peter@peter-xfce:~$ sudo gedit /etc/default/bluetooth
peter@peter-xfce:~$ sudo /etc/init.d/bluetooth restart
* Stopping bluetooth [ OK ]
* Starting bluetooth [ OK ]
peter@peter-xfce:~$ sudo hidd --connect 00:12:A1:11:04:E9
sudo: hidd: command not found
peter@peter-xfce:~$ hidd --connect 00:12:A1:11:04:E9
The program 'hidd' is currently not installed. You can install it by typing:
sudo apt-get install bluez-compat
【此时bluez-compat已安装完毕】
peter@peter-xfce:~$ sudo hidd --connect 00:12:A1:11:04:E9
peter@peter-xfce:~$
[现在可以使用蓝牙键盘打字]
这又是不可接受的。我不认为该设备已安全配对,因为未请求任何 PIN 码。
或者通过 GUI:
但键盘没有响应,因此我无法在要求时输入 PIN。
答案1
我刚刚在 Linux 上配对工作......我做了以下事情:
我在 Linux Mint 上
首先,当设备可发现时,我使用 hcitool inq 获取了蓝牙设备的名称:
$ hcitool inq
Inquiring ...
00:1F:20:3D:7A:4A clock offset: 0x14b4 class: 0x002540
然后我识别了该设备:
$ hcitool scan
Scanning ...
00:1F:20:3D:7A:4A Logitech K760
这是我试图连接的键盘。 :) 接下来我需要蓝牙适配器作为设备的名称:
$ hciconfig
hci0: Type: BR/EDR Bus: USB
BD Address: E0:2A:82:02:5D:EF ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING PSCAN ISCAN
RX bytes:5150 ac1:0 sco:0 events:262 errors:0
TX bytes:1272 ac1:0 sco:0 commands:116 errors:0
有了这些信息,我们现在可以使用简单的代理:
$ bluez-simple-agent hci0 00:1F:20:3D:7A:4A
DisplayPasskey (/org/bluez/791/hci0/dev_00_1F_20_3D_7A_4A, 123456)
此时,您可以在蓝牙键盘上键入密钥,即括号中逗号后面的数字。然后按回车键,你会得到:
Release
New Device (/org/bluez/791/hci0/dev_00_1F_20_3D_7A_4A)
接下来我们需要将键盘连接到输入系统:
hidd --connect 00:1F:20:3D:7A:4A
此时我意识到我犯了两个错误:该工具没有安装......
$ sudo aptitude install bluez-compat
<all sorts of wonderful stuff you don't need to see here>
...而且我没有以 root 身份运行:
$ hidd --connect 00:1F:20:3D:7A:4A
HID create error 13 (permission denied)
$ sudo !! # yes if you put this command in
# after failing to run a command that requires elevation,
# it will run as though sudo'ed, the shell subs !! for
# the last command
sudo hidd --connect 00:1F:20:3D:7A:4A
Can't get device information: host is down
此时,键盘已经失去了“可发现”状态(蓝灯不再闪烁,所以我按下了发现键,然后在旧键盘上,点击向上箭头,然后输入以重复命令:
$ sudo hidd --connect 00:1F:20:3D:7A:4A
$ _
如果成功,该命令不会给出任何输出,设备现已配对,可以用作键盘。
享受!
答案2
如果键盘在没有 PIN 码的情况下也能工作,则意味着键盘本身未配置为需要 PIN 码才能进行通信。您可能需要该设备的特定于硬件的工具才能使其使用基于 PIN 的配对。要不然,也许这里给出的说明可以使用 - 请注意必须输入 PIN 码时的部分在键盘上来设置它。
答案3
我遇到了同样的问题,但问题是 gui 没有给出正确的 pin !如果我查看命令的结果,sudo hcidump -at
引脚会有所不同,我实际上必须从命令中查看引脚才能将其输入到 GUI 中。换句话说,我相信这是一个 xfce 错误,应该在不久前修复,因为它来自旧版本。