「Fprint」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→登録の制限: 抜けている説明を英語版より追加) |
Kusanaginoturugi (トーク | 投稿記録) (→登録の制限: 翻訳) |
||
78行目: | 78行目: | ||
=== 登録の制限 === |
=== 登録の制限 === |
||
− | デフォルトでは新しい指紋を登録するのにパスワードを入力する必要はありません。[[Polkit]] ルールを使うことで |
+ | デフォルトでは新しい指紋を登録するのにパスワードを入力する必要はありません。[[Polkit]] ルールを使うことでこの動作を変更することができます。 |
+ | polkit の設定ファイルは、次の2つの場所に保存されています。 |
||
− | There are two locations that contains the polkit configuration files: |
||
* {{ic|/etc/polkit-1/rules.d/}} |
* {{ic|/etc/polkit-1/rules.d/}} |
2021年7月7日 (水) 11:15時点における版
fprint のホームページ より:
- fprint プロジェクトは商用の指紋認証デバイスのサポートという Linux デスクトップの隙間を埋めることを目指しています。
ノートパソコンに内蔵されている指紋リーダーを使用して PAM を使ったログインを行うというアイデアです。この記事ではバックアップ用にログインで通常のパスワードを使う方法も説明しています (指紋スキャナーが推奨されない理由は多数存在します)。
要件
使っている指紋スキャナーがサポートされていることを確認してください。あなたのデバイスがサポートされているかどうかは この サポートされているデバイスのリストで確認できます。あなたのデバイスを確認するには、次を入力してください:
$ lsusb
インストール
公式リポジトリから fprintd をインストールしてください。imagemagick も必要かもしれません。
Some devices require a different fork of libfprint specifically made for touch-based sensors and not (yet?) merged with the main libfprint: libfprint-tod. This is available as libfprint-tod-gitAUR
設定
ログイン設定
pam_fprintd.so
を sufficient として /etc/pam.d/system-local-login
の auth セクションの一番上に追加してください:
/etc/pam.d/system-local-login
auth sufficient pam_fprintd.so auth include system-login ...
これで最初に指紋によるログインが試行され、それが失敗したりユーザーのホームディレクトリに指紋署名がない場合、パスワードによるログインになります。
同じように /etc/pam.d/{login,su,sudo,gdm,lightdm}
内の他のファイルを修正することもできます。例えば GNOME の polkit 認証なら /etc/pam.d/polkit-1
です。
pam_fprintd.so
を sufficient として追加すると、指紋署名が登録済みのときにパスワード認証ではなく指紋認証が促されます。パスワード認証と指紋認証を両方使えるようにするには先頭に以下の内容を追加します:
/etc/pam.d/sudo
auth sufficient pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so ...
最初にパスワードを促され、入力せずに Enter
キーを押すと指紋認証が行われます。
指紋署名の作成
登録するには、認証エージェントを実行する必要があります。
指の署名を追加するには、次を実行してください:
$ fprintd-enroll
指をスキャンするように求められます。その後、/var/lib/fprint/
に署名が作成されます。
5本の指全ての署名を新しく作成するには ([username] は実際のユーザー名に置き換えてください):
$ fprintd-delete [username] $ for finger in {left,right}-{thumb,{index,middle,ring,little}-finger}; do fprintd-enroll -f $finger [username]; done
詳しくは、man fprintd
を見て下さい。
登録の制限
デフォルトでは新しい指紋を登録するのにパスワードを入力する必要はありません。Polkit ルールを使うことでこの動作を変更することができます。
polkit の設定ファイルは、次の2つの場所に保存されています。
/etc/polkit-1/rules.d/
/usr/share/polkit-1/rules.d/
以下の例ではスーパーユーザーだけが指紋を登録できるようになります:
/etc/polkit-1/rules.d/50-net.reactivated.fprint.device.enroll.rules
polkit.addRule(function (action, subject) { if (action.id == "net.reactivated.fprint.device.enroll") { return subject.user == "root" ? polkit.Result.YES : polkit.result.NO } })
トラブルシューティング
利用可能なデバイスがない
サポートされているデバイス が見つからない、または既に開いている(使用中)と言われる場合は、fprintd
のログを以下の方法で確認してください:
# journalctl -u fprintd.service
次のようなログエントリが見つかるかもしれません:
fprintd[2936592]: Corrupted message received fprintd[2936592]: Ignoring device due to initialization error: unsupported firmware version
Fwupd でデバイスのファームウェアを最新の状態にしてください。