Edited at

mutt で使用するパスワードを暗号化する

More than 1 year has passed since last update.

ちょっと mutt を使ってみたいなあと思って、Xubuntu で mutt で Gmail を使えるようにしてみたけど、ググって出てきた情報のままやると、~/.muttrc にパスワードが平文で残りそうだったので調べたけど、また設定するときに思い出せる気がしないのでメモ。

まず、Google のアカウントの 2 factor authentication (2段階認証) を有効化しているので、mutt 用に アプリパスワード を取得する。

取得したアプリパスワードを一時的にファイルに書く。

内容は下記のような感じで、場所は、どこでも良さそうだけど、とりあえず ~/.mutt/passwords に書いた。


~/.mutt/passwords

set imap_pass="password"

set smtp_pass="password"

鍵が必要らしいので、 gpg --gen-key して作る。

いくつか質問されるので、それに答える。

Not enough random bytes available. Please do some other work to give

the OS a chance to collect more entropy!
みたいなメッセージが出て止まったけど、なにか OS に処理をさせろということらしい、 ココ を見ると、 rngd -f -r /dev/urandom すると早いとのことだったので、 sudo apt-get install rng-tool してから、 sudo rngd -f -r /dev/urandom した。

あとは、パスワードを暗号化して、平文でパスワードを書いてたファイルを削除して、 ~/.muttrc に生成されたファイルを読み込むように source "gpg -d ~/.mutt/passwords.gpg |" と追記して終わり。

gpg -r foobar@Gmail.com -e ~/.mutt/passwords

shred ~/.mutt/passwords
rm ~/.mutt/passwords

~/.muttrc は、とりあえずこんな感じになった。

追記するかもしれないけど、ひとまずは最小限の設定で試してみる。


~/.muttrc

set from             = "foobar@Gmail.com"

set realname = "cd01"
set imap_user = "foobar@Gmail.com"
set smtp_url = "smtp://foobar@smtp.gmail.com:587/"
set folder = "imaps://imap.gmail.com:993"
set spoolfile = "+INBOX"
set postponed = "+[Gmail]/Drafts"
set header_cache = ~/.mutt/cache/headers
set message_cachedir = ~/.mutt/cache/bodies
set certificate_file = ~/.mutt/certificates
set move = no

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



参考