2016/07/27

Muttのパスワードファイルを暗号化

私はMuttでGMailを使用しています。

Googleアカウントをとても覚えられないパスワードに変更したため、Mutt起動時に毎回Googleパスワードを入力するのは困難になりました。

そこでファイルにパスワードを保存してそのファイルを暗号化し、Muttからは暗号化されたファイルを読み込むようにしました。

GnuPGを使用して暗号化を行っており、私の今回の設定ではMutt起動時に毎回GnuPGで作った秘密鍵のパスフレーズを要求されます。
パスフレーズには複雑だけれど覚えられるものを使用しています。

Muttのバージョンは1.6.1です。

以下ではCygwin上で行っています。

下記にサイトを参考にしました。
暗号化されたパスワードで Mutt の電子メール クライアントを使用する方法


・GPGキーの作成
$ gpg --gen-key
gpg (GnuPG) 1.4.20; Copyright (C) 2015 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

ご希望の鍵の種類を選択してください:
   (1) RSA と RSA (デフォルト)
   (2) DSA と Elgamal
   (3) DSA (署名のみ)
   (4) RSA (署名のみ)
選択は? 1
RSA 鍵は 1024 から 4096 ビットの長さで可能です。
鍵長は? (2048) ←そのままエンター
要求された鍵長は2048ビット
鍵の有効期限を指定してください。
         0 = 鍵は無期限
        = 鍵は n 日間で期限切れ
      w = 鍵は n 週間で期限切れ
      m = 鍵は n か月間で期限切れ
      y = 鍵は n 年間で期限切れ
鍵の有効期間は? (0) ←そのままエンター
(null)は無期限です
これで正しいですか? (y/N) y

あなたの鍵を同定するためにユーザIDが必要です。
このソフトは本名、コメント、電子メール・アドレスから
次の書式でユーザIDを構成します:
    "Heinrich Heine (Der Dichter) "

本名: 本名を入力
電子メール・アドレス: メールアドレスを入力
コメント: ←そのままエンター
次のユーザIDを選択しました:
    "本名 <メールアドレス>"

名前(N)、コメント(C)、電子メール(E)の変更、またはOK(O)か終了(Q)? O

秘密鍵を保護するためにパスフレーズがいります。

パスフレーズを入力: 複雑だけれど度覚えられるパスフレーズを入力


~以下省略~



・暗号化されたパスワードファイルの作成

まずはパスワードファイルを格納するディレクトリを作成し、移動します。
$ mkdir ~/.mutt
$ cd ~/.mutt

passwordファイルを作成し、下記の内容を記述します。

set smtp_pass = "Googleパスワード"
set imap_pass = "Googleパスワード"

作成したパスワードファイルの中身を確認します。
$ cat password
set smtp_pass = "Googleパスワード"
set imap_pass = "Googleパスワード"

パスワードファイルを暗号化し、元のパスワードファイルを削除します。
下記のメールアドレスはgpg --gen-keyでGPGキーを作成した際に入力したメールアドレスです。
$ gpg -e -r メールアドレス password
$ rm password
$ ls
password.gpg 


・Muttの設定
.muttrcファイルの末尾に下記の内容を追加します。

source "gpg -d ~/.mutt/password.gpg |"

.muttrcファイルの末尾を確認します。
$ tail -n1 ~/.muttrc
source "gpg -d ~/.mutt/password.gpg |"


ここまでで私が行った作業は終了です。

muttを起動すると 秘密鍵のパスフレーズを要求されますが、Googleアカウントのパスワードは省略できます。

0 件のコメント: