Linux で 1Password を使う

Ubuntu

1Password という商用ソフトがある。

要は各種 Web サイトのログインID、パスワードを管理するソフトである。他にもクレジットカード番号とかをメモしておけたりもする。

MacOS では昔から有名なソフトだったのだが、最近 iOS 版が無料となり、Dropbox 連携をすると Mac/Windows/iOS/Android で同じようにパスワードやらクレジットカード番号やらを管理できるようになる。

ここんとこもーいろんなサービスでアカウントを乗っ取られるということがワタクシ発生しておりましてな。さすがにネットバンクとか致命的なヤツではやられていないものの、いわいる「覚えてられそうな」パスワードを設定するのはもうダメなんじゃないか。クラッキング辞書とそのツールが充実しスギで、たかが SNS とかだとしても、単なるガキにのっとられたりするのはまことに腹立たしい。

もはやパスワードのたぐいは記憶や推測するのは不可能なヤツをツールでランダム生成させて、それを確実に記録するということにしないともういろいろダメなんじゃないか。

ということで、1Password の iOS 版を入手して、あとデスクトップを最近 Mac にしたので (最近このサイトの更新がなかったのはそのためだ) Mac 版のライセンスを購入して便利に使っていた。

イマドキの Web ブラウザはみんな標準でパスワード管理機能はもっているのだけども、職業柄というかなんというか、OS はもちろん Web ブラウザも複数のものを同時に使っているので、できればブラウザには依存しないほうが嬉しかったというのもある。

勤務先では Windows を使っているのだけど、そっち用にまでライセンスを買うほどおこづかいに余裕はないので体験版を入れている。

Mac/Windows 版の 1Password はライセンスキーを購入していないと30日の試用期限後は新しい項目 (サイトとかメモとか) を追加できなくなる。ただし、既に作成されている項目の内容は変更できる。

ということは、つまり無料の iOS 版で項目を追加して、その内容を Mac や Windows で内容を編集して利用するということはできるわけである。

そんなみみっちいことをしなくても、KeyPass というオープンソースの同種のソフトがあるじゃないか!というツッコミががんがん聞こえてくるけれども (実際 Facebook でかなり言われた)、実のところ KeyPass は Web ブラウザと連携する機能が事実上 Windows でしか動かないのである。.NET Framework で実装されているそうなので、正確には mono とかを使うとがんばればできないことはないそうなのだが、まあ実に面倒くさい。

そんなわけで 1Password、かなり気に入っているのだけれど、残念なことに Linux 用の 1Password は現時点ではリリースされていない。

1Password を Dropbox 連携している場合は、1PasswordAnywhere という機能があり、Web ブラウザでアクセスして登録内容をみるだけみることもできる。

んが、そもそも KeyPass ではなく 1Password を使いたかったのはブラウザ連携がとても便利だったからである。実は最近 MacBookAir が大破してしまって、もう1台ある MacBookPro を持ち歩いてまたぶっ壊れるのはイヤなので、久々に Linux なノートを入手したのである。

そこで、なんとか Linux でも 1Password のブラウザ連携を使おうというのが今回の趣旨である。

当方の動作環境は Ubuntu 14.04 LTS (Lucid Lynx) である。

まずはなんといっても Dropbox の Linux 版クライアントを入手&インストールして、普通に使えるようにしておく。そして、他の、例えば iOS 版とかの 1Password で、先に Dropbox 連携を設定しておこう。

で、Linux 版の 1Password はないわけで、ないものはないので、仕方ないので Windows エミュレーターである Wine 経由で動かすことにする。とりあえず以下のようなカンジで Wine をインストールする。

$ sudo apt-get install wine

そして上記のリンク先から Windows 版の 1Password をダウンロード & インストールし、とにかく起動して Dropbox に保存した 1Password のデータベースを開き、1Password アプリがふつーに使えることを確認する。

いったん 1Password を終了し、Wine のレジストリエディタである regedit を起動 (コマンドラインで regedit と入力するのが早い) する。

レジストリキー HKEY_CURRENT_USER\Software\AgileBits\1Password 4 に対して、名前を VerifyCodeSignature、型は DWORD で、値 0 を作成する。こんなカンジ。

レジストリエディタ

次に、~/.config/autostart/1password-helper.desktop というファイル名で以下の内容のファイルを作成する。

[Desktop Entry]
Name=1Password Browser Helper
Comment=Allow browser plugins to interact with the 1Password database
Exec=env WINEPREFIX="/home//.wine" wine "/home//.wine/drive_c/Program Files (x86)/1Password 4/Agile1pAgent.exe"
Type=Application
StartupNotify=true
Path=/home//.wine/drive_c/Program Files (x86)/1Password 4
Icon=C775_1Password.0
StartupWMClass=Agile1pAgent.exe

<username> のところは自分のログイン名というかホームディレクトリに直してほしい。あと、もしかしたら「Program Files (x86)」のところも、Linux が 32bit 版の場合は「 (x86)」がつかない方に入っているかもしれないので、実体のありかを確認してほしい。

そんで、いったんログアウトしてログインしなおすと、1Password Helper が起動して常駐するようになる。

あとは、各ブラウザの拡張を入れてやれば良い。

なお、この方法で動かすと、1Password アプリケーション本体で、各パスワードがロック解除しなくても画面に表示されてしまうという結構致命的な問題があるので、後ろから誰か覗いていないことを確認して使うように注意されたい。

コメント

タイトルとURLをコピーしました