パスワード管理ソフトウェアを使いましょう。無数あるWebサービス、管理サービスなどで使うパスワードをすべて自分の頭で覚えておくなど不可能です。さらに最近では一カ所の流出から他のサービスへのアタックへの利用が進んでいるのでパスワードの使い回しは危険です。 いくつもパスワード管理ソフトウェアはありますが、今回はPassboxというCLIのパスワード管理ソフトウェアを紹介します。

Passboxの使い方

Passboxのヘルプです。

$ ./passbox 
usage: ./passbox [action]

Passbox - command line password manager utility

ACTIONS
   add-field     <entry name>               Update an existing entry to add additional fields to
   delete        </entry><entry name>               Remove an entry from the password database
   get           </entry><entry name>               Get a particular password entry by it's name
   generate                                 Generate a new random password
   new                                      Prompt to create a new passbox entry
   remove-field  </entry><entry name> <field name>  Update an existing entry to remove additional fields
   search        <search pattern>           Search the password database for a particular string, returns all matchin entries
   update        <entry name>               Update an existing entry in the password database

例えば新しいエントリーを作る場合はnewを実行します。パスワードの長さも自由に決められます。また、保存する際のGPGパスワードも設定します。

$ ./passbox new
Name: Test Account
Username: moongift
Generate password? (y/n, default: y) y
Password length? (default: 20, max: 100) 12
Password: 0TqSRStVWsJs
Enter password to unlock /Users/nakatsugawa/passbox.gpg: *********
Done

特定のアカウントを探すときにはgetを使います。ファイルを読むためのパスワードは毎回入力します。

$ ./passbox get "Test Account"
Enter password to unlock /Users/nakatsugawa/passbox.gpg: *********

Name: Test Account
Username: moongift
Password: 0TqSRStVWsJs

generateを使うとパスワードの生成だけできます。

$ ./passbox generate
Password length? (default: 20, max: 100) 
oJHzIU7hJ1LMsaQ5blzn

検索もできます。こちらは文字の大文字、小文字をチェックしません。

$ ./passbox search test
Enter password to unlock /Users/nakatsugawa/passbox.gpg: *********

Name: Test Account
Username: moongift
Password: 0TqSRStVWsJs

PassboxはBashスクリプトだけで作られている点が興味深いです。パスワードの書かれたファイルはGPGで暗号化されていますのでパスワードが十分に長くて、かつ漏れない限りは安全と言えそうです。CLIで使えるのでサーバの中でもシステム連携としても使えそうなソフトウェアです。

PassboxはBash製のオープンソース・ソフトウェア(MIT License)です。

RobBollons/passbox