Ubuntuの/etc/pam.d/common-auth再考
折角ThinkPad x61を使っているのでthinkfingerでの認証を有効にしてみた記録。
実は以前からもちょくちょくやってはいたが、これを有効にすると、指紋認証ができるようになる半面、今までのパスワード入力形式の認証ができなくなり、とても不満があった。
今までは仕方なく指紋認証だけでお茶を濁していたが、別のマシンからこのx61へのsshのログインに失敗したことで流石に業を煮やし、この辺を調べてみた。
大変お世話になったのはid:dayflowerさんのid:dayflower:20070821:1187684992のページ。
このページを基にごく真っ当に考えてみると、認証の際、パスワード認証か指紋認証のどちらかをパスすればいい筈。つまり、pam_unix.soもpam_thinkfinger.soもsufficientフラグになっていれば解決する筈。が、
# in /etc/pam.d/common-auth
auth [success=1 default=ignore] pam_unix.so try_first_pass nullok_secure
となっている…。なんかここが怪しい気がしてきたので、これを
auth sufficient pam_thinkfinger.so
auth sufficient pam_unix.so try_first_pass nullok_secure
としてあげてみたら、どうもうまくいってるっぽい。でも、sufficientの代わりにわざわざ
[success=1 default=ignore]
と書いているのは訳がある筈なので、それは一体なんだろう…。