Fingerprint GUI

出自 ArchWiki

Fingerprint GUI 是一个为指纹识别器提供界面和驱动程序的程序。该软件包包含来自开源项目 fprint 的驱动程序以及 fprint 中未包含的专有驱动程序。

安装

安装 fingerprint-guiAUR

该软件包在 /usr/share/doc/fingerprint-gui/Manual_en.html 中包含 HTML 格式的安装指南。

如果您正在使用 GNOMEKDE,请按照 pacman 给出的说明操作并删除以下文件

/etc/xdg/autostart/
polkit-gnome-authentication-agent-1.desktop
polkit-kde-authentication-agent-1.desktop

如果您正在使用窗口管理器,您可能需要一个身份验证代理。该软件包包含一个身份验证代理 /lib/fingerprint-gui/fingerprint-polkit-agent。如果您的窗口管理器完全符合 XDG 标准,则此代理将自动启动。 仅在注册手指时需要代理,识别时则不需要。

注册指纹

安装完成后,启动配置实用程序以测试您的硬件是否被识别且工作正常

$ fingerprint-gui -d

-d 用于调试,仅创建事件的详细日志。如果您不需要调试信息,可以安全地省略该标志。

如果您的设备未被识别,您可能需要重启以使 udev 为设备设置正确的权限。您可能需要将您的用户添加到 scanner 组。

要开始使用配置实用程序注册您的指纹,请选择“Finger”选项卡,选择一个手指并选择“next”。

认证

注册指纹后,您可能会注意到在设置过程中,“test”部分尚无法工作。这是因为必要的身份验证尚未在相应的 pam.d 文件中获得批准。

作为如何为给定服务设置指纹认证的示例,我们将首先从 sudo 开始。在您的 文本编辑器 中打开 /etc/pam.d/sudo 并插入以下粗体文本

/etc/pam.d/sudo
#%PAM-1.0
auth		sufficient	pam_fingerprint-gui.so
auth		required	pam_unix.so
auth		required	pam_nologin.so

请记住,您的 'sudo' 文件可能包含更多条目。

某些用户可能没有(或不想拥有)在其系统上安装 sudo。在这种情况下,仍然可以使用您的指纹来验证 su。这可以像 sudo 示例一样完成,当然是将条目添加到 /etc/pam.d/su。同样,添加以下粗体文本

/etc/pam.d/su
 #%PAM-1.0
 auth		sufficient	pam_rootok.so
 auth		sufficient	pam_fingerprint-gui.so
 auth		required	pam_unix.so
 account		required	pam_unix.so
 session		required	pam_unix.so

也可以配置 GDM、SDDM、LightDM 和 Gnome-Screensaver 等内容。同样,如果需要更多信息或说明,请参阅随附的手册。软件包维护者手册可能会提供随附手册无法获得的更多信息。

验证

现在已将必要的身份验证添加到 pam,您可能希望确认您的设置的功能。最简单的方法是再次启动 fingerprint-gui。无需执行这些步骤(因为您的指纹应该已经建立),直接单击Settings 选项卡。从这里,您可以选择您希望测试的功能(即 sudo、su、gdm 等)。

还有一个包含的实用程序可以简单地确认您的注册指纹是否被识别。这可以通过简单地运行

$ fingerprint-identifier

并按照屏幕上的说明进行操作。

导出

如果您希望将用户的指纹数据保存到文件中,只需使用Settings 选项卡中的Export 按钮。将在所需的目录中创建一个文件 "Fingerprints.tar.gz"。但是,保存的文件似乎用途不大,因为尚未发现“导入”功能(截至 2018 年 5 月)。

密码

在某些情况下,使用指纹登录系统可能会抑制桌面环境的某些其他功能。例如,GNOME Keyring 依赖于您的密码,因为它用于加密密钥环中的数据。为了克服这个问题,Fingerprint GUI 包含一项功能,允许您将加密密码存储在可移动媒体(USB)上。然后,您可以使用密钥通过在插入可移动媒体时验证您的指纹来解密您的密钥链。

该手册指出,要使用此功能,请挂载您的 USB 驱动器并确保您对其具有写入权限。在 Fingerprint GUI 的“Password”选项卡下,在“Save to directory”处指示您设备的相应路径(即,如果使用 gvfs,则应位于 /run/media/your_uid/device 下)。输入您的密码并重新输入,然后选择“save”。这将在您的可移动媒体上创建一个隐藏目录 /.fingerprints 并创建一个文件 username@hostname.xml。在本地计算机上,这也会创建文件 /var/lib/fingerprint-gui/username/config.xml

警告: 任何可以访问您的计算机和外部媒体的人都可以解密密码文件!永远不要在同一个地方无人看管计算机和媒体!仅在登录时连接此媒体,并且如果其他人具有对您计算机的 root 访问权限,请勿使用它。

已知问题

设备未被识别

如果您的设备(例如 06cb:00bd,这可以在最近的 Thinkpad 上找到)未被识别,但在 CLI (fprint) 中被识别,这是因为当前 Fingerprint GUI 基于旧版本。有关详细信息,请参阅 [1]