Ubuntu環境へのePass FIDO-NFCの導入メモ

このエントリーをはてなブックマークに追加

昨今、なかなか物騒な感じなので2段階認証を導入することも増えている。
ところが2段階認証アプリにはスマホを紛失した時に詰むという重大なリスクがあり日々ドキドキしていたが、Googleなどではハードウェア鍵を2段階認証アプリと併用できると聞き早速導入してみた。

購入したePass FIDO -NFC Security Key: 真ん中の扇部分が青く点滅してタッチを促す

U2F対応製品について

導入したのは飛天ジャパン(https://www.ftsafe.com/)のePass FIDO-NFCというもので、fido認証のU2Fというグローバル規格(https://fidoalliance.org/?lang=ja)に対応した製品である。親会社は中国の会社で発音としてはフェイティエンとなるがヒテンで問題ないだろうと思う。Amazonで2980円だったので1つ試しに購入してみることにした。特に問題がなければ更にバックアップ用としてもうひとつ準備する予定だ。
このFeitianという会社はそれなりの歴史と採用実績がありfido認証にも加盟しておりかなり有名な組織のため個人的には問題ないと思われるが、製造工程においてシリアル番号を控えて同一の物を複製されていたりする可能性は(この会社に限らず)否定しきれないので、中国製がどうしても嫌な人はYubico(https://www.yubico.com/)製の物を購入したほうがよいかも知れない。

 

いずれにしても、この手の鍵製品は流通経路が非常に重要となるためAmazonで購入する場合は正規代理店やオフィシャルの出品であることを確認するべきである。また動作確認や開発用のためではなく正式に会社などで導入する場合は多少値段が高くなっても正規代理店やメーカーから直接手に入れる事をお勧めする。更にプロダクトの選定にあたってfidoのサイトで商品や会社をチェックしたほうが安心だろう。

FIDO Alliance FIDO® Certified – FIDO Alliance
https://fidoalliance.org/certification/fido-certified-products/

Ubuntuへの導入方法

Windowsなどの場合は特に設定は不要と思われるが、UbuntuなどのLinuxにおいてはudevのrulesを記述しておくことが必要となる。これを記述しないとChromeなどがU2Fデバイスにアクセスできない。ただ、全部自分で記述する必要は無く、基本的にはYubicoがサイトで下記のサイトで公開している方法に従えば良い。自分の環境はUbuntu 16.04.5であるが、その他のLinuxでも大差ないと思われる。

Using Your U2F YubiKey with Linux : Yubico Support
https://support.yubico.com/support/solutions/articles/15000006449-using-your-u2f-yubikey-with-linux

簡単に言うとGithubにて公開されている下記のファイルを取得して /etc/udev/rules.d 以下に配置するだけで良い。親切なことに、YubicoだけではなくFeitianや、Google謹製(日本未発売)のGoogle Titan U2Fなどのデバイスについても記述してくれているので、メジャーな製品であれば自分でログからidVendorやidProductを確認して追加する必要はないだろう。

libu2f-host/70-u2f.rules at master · Yubico/libu2f-host
https://github.com/Yubico/libu2f-host/blob/master/70-u2f.rules

なお、Feitian ePass FIDOに対応する部分だけ抜き出すと下記の様になる。今回買った製品のidProductは0858になる。

ACTION!=”add|change”, GOTO=”u2f_end”
# Feitian ePass FIDO
KERNEL==”hidraw*”, SUBSYSTEM==”hidraw”, ATTRS{idVendor}==”096e”, ATTRS{idProduct}==”0850|0852|0853|0854|0856|0858|085a|085b”, TAG+=”uaccess”
LABEL=”u2f_end”

https://github.com/Yubico/libu2f-host/blob/master/70-u2f.rules#L31

以上、これを機にみなさんもハードウェアキーによる2要素認証を導入してみたらどうだろうか?