見出し画像

CF-XZ6上のDebianでHowdyを試してみた

私の所持しているCF-XZ6RF7VSは、Windows Hello™️に対応している。
本当は指紋認証が良いのだが、私の機種には非搭載なので、Howdyで顔認証の設定をしてみた。

Howdyとは

Howdyは、Linux上でWindowsHello™形式の顔認証を提供するアプリケーションです。赤外線カメラと光学カメラを組み合わせて顔認識をしているようです。PAMとの連携で、ログイン、ロック画面、sudo、suなどのパスワード入力を顔認証に対応させることができます。

インストール

公式にはdebパッケージを手動インストールすることが推奨されているが、アップデートの管理が面倒になりそうだったので、今回はUbuntu用のPPAを利用することにした。

$ curl 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x8cebc97f3e9e1d58' > ~/Downloads/howdy.asc
$ sudo cp ~/Downloads/howdy.asc /etc/apt/trusted.gpg.d/howdy.asc
S echo -e "deb https://ppa.launchpadcontent.net/boltgolt/howdy/ubuntu focal main \ndeb-src https://ppa.launchpadcontent.net/boltgolt/howdy/ubuntu focal main" > ~/Downloads/howdy.list
$ sudo cp ~/Downloads/howdy.list /etc/apt/sources.list.d/howdy.list
$ sudo apt install howdy v4l-utils fswebcam

顔認証用カメラの特定

まずは、カメラがどのパスで認識されているかを確認する必要がある。

$ sudo v4l2-ctl --list-devices --all
  USB HD Webcam: USB HD Webcam (usb-0000:00:14.0-6):
	/dev/video0
	/dev/video1
	/dev/video2
	/dev/video3
	/dev/media0
	/dev/media1
  < 以下省略 >

私のケースでは、/dev/video0〜3と/dev/media/0〜1で認識されていたが、どれが赤外線カメラかわからなかったので、1つずつ試してみることにした。

$ fswebcam ~/Downloads/test_video0.jpg --device /dev/video0
$ fswebcam ~/Downloads/test_video1.jpg --device /dev/video1
$ fswebcam ~/Downloads/test_video2.jpg --device /dev/video2
$ fswebcam ~/Downloads/test_video3.jpg --device /dev/video3

表示中の画像は最近出たアルバムがすごく良いと個人的に話題のmiletさん。

video0の結果
video2の結果

撮影結果から、video0が光学カメラ、video2が赤外線カメラと確認できた。

Howdyの設定

Howdyの設定にて顔認証用カメラのパスを指定する必要がある。
設定は設定ファイルを直接編集でよい。
カメラの指定は、v4lのパスを使用する。

$ ls -ltr /dev/v4l/by-path/
lrwxrwxrwx 1 root root 12  3月 18 10:26 pci-0000:00:14.0-usb-0:6:1.0-video-index0 -> ../../video0
lrwxrwxrwx 1 root root 12  3月 18 10:26 pci-0000:00:14.0-usb-0:6:1.0-video-index1 -> ../../video1
lrwxrwxrwx 1 root root 12  3月 18 10:26 pci-0000:00:14.0-usb-0:6:1.2-video-index0 -> ../../video2
lrwxrwxrwx 1 root root 12  3月 18 10:26 pci-0000:00:14.0-usb-0:6:1.2-video-index1 -> ../../video3

今回は、video2が赤外線カメラなので、上から3つ目のファイル名をコピーして、Howdyの設定ファイルを開く。

$ sudo vi /lib/security/howdy/config.ini

編集すべき箇所は、以下の********の箇所。
私の環境では40行目辺りが該当した。
ここにカメラのファイル名を貼り付けて保存する。

# The path of the device to capture frames from
# Should be set automatically by an installer if your distro has one
device_path = /dev/v4l/by-path/**************

これで設定は完了。

顔登録

以下のコマンドで顔を登録しておけば、顔認証が使用できる。
特段難しいことはないので、詳細は割愛。

$ howdy add


この記事が気に入ったらサポートをしてみませんか?