Think Proof, Count Two

and look for a red shoe

Thunderbird + Enigmail を使ってメールを暗号化する

Posted on — Feb 14, 2020

GitHub/GitLab で commit に Verified マークを出したかったので GnuPG を導入しました. ついでなので Thunderbird で電子署名付き・暗号化したメールを独自ドメインのアドレスから送信できるようにしてみました. 本記事はその備忘録です. Homebrew が使える macOS での作業を念頭に置いています.

NOTE: 当然ですが備忘録以上の価値はないため興味のある方は各マニュアル等を参照してください.

GnuPG の導入

まずは GnuPG の導入です. brew install gnupg で良いでしょう. GnuPG については

などが参考になります. 最近のバージョンでは簡単にプライマリキーの秘密鍵が削除できるようです. 例えば

gpg --list-key --show-keygrip

で Keygrip を確認して

rm ~/.gnupg/private-keys-v1.d/<Keygrip>.key

で秘密鍵が削除できます.

Thunderbird の設定

メールサーバ

独自ドメインのメールアドレスを作成するにあたってさくらのメールボックスを利用しました. 他にもカゴヤのサービスなども良いと思います1

独自ドメイン (presche.me) 自体はエックスドメインで管理しているため次のように DNS レコードを編集します:

また SPF の設定もします:

ここで www****.sakura.ne.jp はさくらのサーバパネルから確認できます (**** には数字 4 桁が入る2). 設定が終わったら dignslookup で確認します.

Thunderbird

Thunderbird を利用するための設定がさくらのヘルプページにありますが, なぜかうまく接続できなかったため,以下のように受信・送信サーバの設定をします:

設定後,確認のため自分にメールを送受信します.

Enigmail

Thunderbird でメールの電子署名・暗号化を行うには Enigmail というアドオンを利用します3

基本的にはこちらの記事の通りにやれば問題は無いでしょう. 私の場合はすでに GPG Key が存在していたのですぐにセットアップが終わりました.

ただし,電子署名あるいは暗号化時にグラフィカルな pinentry が必要になることに注意しておきます. macOS の場合は pinentry-mac を利用すればよいでしょう:

brew install pinentry-mac
echo 'pinentry-program /usr/local/bin/pinentry-mac' >> ~/.gnupg/gpg-agent.conf

Tips

OpenPGP Best Practices.


  1. 値段が安いさくらのメールボックスを選択しましたが,使い心地しだいでは他サービスに移行するかもしれません ↩︎

  2. 私の場合は www2800.sakura.ne.jp ↩︎

  3. Thunderbird 78 以降では OpenPGP が標準サポートされるようです (参考) ↩︎