Ubuntuで自動ログイン設定時、無線LANのキーリングを自動解除する方法
投稿者 おおかゆか
Ubuntuでログイン時にいちいちユーザ名とパスワードを入力するのが面倒なので、「メニュー」→「システム」→「システム管理」→「ログイン画面」から、

のようにして、自動ログインを有効にしている。
しかしこの設定だと、マシンが無線LANを使っている場合、ログイン時にキーリングのロックが解除されない。
よって、毎回ログイン後に

「キーリング(デフォルト)のロックを解除するパスワードを入力してください」という忌々しいダイアログウィンドウが表示されて、結局自分のアカウントのパスワードを入力させられる羽目になってしまう。
このままでは、せっかく自動ログインにした意味が半減どころか約7割減だ。
そこで、この問題を何とかするべく調べてみたところ、「Ubuntuで無線LANを使うとき、キーリングのパスワード入力を省略するには」というページを見つけた。
基本、そこに書かれている通りにやれば毎回のパスワード入力を省略できるのだが、多少そのままではダメだったところや気になるところ(/usr/bin/に手動でファイルを入れたりする)があったので、自分なりに改変した手順をここに載せておく。
これに使う主役は、pam_keyringというプログラム。http://www.hekanetworks.com/opensource/pam_keyring/から入手できるので、最新版をダウンロードして展開する。
$ sudo wget http://www.hekanetworks.com/opensource/pam_keyring/pam_keyring-0.0.9.tar.gz
$ tar xzf pam_keyring-0.0.9.tar.gz
$ cd pam_keyring-0.0.9/
makeする前に、configureファイルを修正。
–
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
–
LIBTOOL='/usr/bin/libtool'
–
のように変更。
$ sudo ./configure
$ sudo make
$ sudo make install
自分用のシェルスクリプトを作る。
$ vi ~/bin/unlock-keyring.sh
–
#!/usr/bin/env sh
echo "MY_PASSWORD" | /usr/local/bin/pam-keyring-tool -u -s
exit 0
–
を作成。(※MY_PASSWORDは自分のパスワードを平文で)
$ chmod ugo+x ~/bin/unlock-keyring.sh
最後に、これを自動起動するように設定する。
「メニュー」→「システム」→「設定」→「セッション」→「自動起動するプログラム」で、「+追加(A)」をクリック。

「名前」は何でもいいのだが、必ずABC順で「Network Manager」の前に来るようなものにすること。あとは「+追加(A)」を押すだけ。
これで次回起動時から、キーリングが自動に解除されるためパスワードの入力が必要なくなる。
自分のパスワードが平文で保存されることになるのでセキュリティ的にはアレな感じだが、そもそも自動ログインにしている時点でアカウントのセキュリティはないも同然なので、今さら特に気にすることもないだろう。
ただノートPCでこれをやるのはリスクが高過ぎるので、さすがに私もこれをやるのは自宅のデスクトップマシンのみにとどめているが。



















私はキーリングのパスワードそのものを設定していません。
今まで最初に無線LANに接続しようとしたときにキーリングのパスワードを
設定するように求められ、疑いもせずにログインパスワードを入れていました。
そうするとログインの度にキーリングのパスワードを入力するように求められ、
面倒に思っていました。
対策としてwicdを使っていましたが、やや接続に時間がかかることがあり不満でした。
今回新規にインストールする機会があり、試しにキーリングのパスワードの設定時に
空白のまま答えたところ、ブツブツ文句をいいながらも設定が完了しました。
以来、無線LANはログインと同時に使えますし有線LANケーブルの抜き差しにも
瞬時に反応します。
これってセキュリティ上問題なんでしょうかね。