EVOメールサーバーの構築メモ(9)

メール用の電子証明書の取得とOutlookでの設定

Outlook等のメールクライアントで電子証明書を使用することで、送信者の「なりすまし」、本文の「改ざん」、メール内容の「盗聴≒盗み見」を防ぐことが出来ます。

メール用の電子証明書はEVOメールサーバーの設定とは直接関係ありませんが、ユーザーのメール関連のセキュリティを高める手段として有用なものの1つです。

重要な情報をメールで取り扱う方にとってはセキュリティの観点だけでなく相手からの信用度を高めるといったメリットもあるかもしれません。

無料のメール用電子証明書

国内でメール用の電子証明書を取得する場合一般的には有料です。そのためここでは、世界的なシェアを持つ認証局の1つである英Comodo社が個人/家庭用ユーザー向けに無料※で発行している電子証明書の取得方法をケーススタディとして取り上げます。

2018年後半に Comodoの無料電子証明書はブランド変更に伴い、有効期間が短くなり、使いにくくなってしまいました。2020年3月現在、無料のメール用電子証明書を提供している会社はイタリアの Actalis で、有効期間1年の電子証明書が取得できます。

ComodoではなくActalisの電子証明書を試してみたい方は、以下の記事をご覧になってから、またここに戻ってきてください。

取得手順(Comodo版)

当然のことながら画面は英語ですが、それほど難しいものではありません。まず取得用のページにアクセスします。

証明書の申請を行うと、ブラウザからPCに証明書がインストールされるので、今回はIE11を使用しました。他のブラウザを使用した場合、CSPや暗号強度のオプションの変更が出来なかったり、取得作業の過程でブラウザに表示されるダイアログボックス等の表示が異なる可能性があります。

Free Email Certificate/Sign up now! をクリックします。
確認のダイアログが表示されます。「はい」をクリックします。
必要事項を正確に入力して「Next」をクリックします。
  • 赤文字で書かれている「Note」の部分は、「申請後に発行される秘密鍵はComodo社に保存されないので必ずバックアップしておいて下さい」といった内容が書かれています。
  • 失効用パスワードは後から確認できません。必ずメモしておきましょう!

Advanced Private Key OptionsをクリックするとCSPや暗号強度を変更することができます。通常変更の必要はありません。※私は4096を選びました。

③でNextをクリックすると画面が切り替わり、確認のダイアログが表示されます。「はい」をクリックします。
10秒くらいで画面が切り替わります。

意訳:申請作業に成功しました!証明書をPCに格納する詳細な方法は申請したメールアドレスに記載しています。

申請したメールアドレス宛に届くメールで、証明書取得用のリンクボタン「Click & Install Comodo Secure Certificate」をクリックします。
  • ボタンをクリックしてもうまくいかない場合は、すぐ下にあるURLにアクセスして、メールに記載されている取得用パスワードを入力します。
  • 何らかの理由で取得した証明書を失効(取消)したい場合は、メールに記載されてる「Revokel Comodo Secure Certificate」をクリックし、③で入力した「失効用パスワード」を使って失効させることが出来ます。
ブラウザが開き、お馴染みの確認ダイアログが表示されたら「はい」をクリックします。
画面に「Successful」と表示されたら、無事PCに証明書がインストールされています。

こちらは、⑥のメールにあるボタンをクリックできない場合で、取得用URLを表示したところ。申請用メールアドレスとメールに記載されている取得用パスワードを入力して「Submit & Continue」をクリックします。

証明書と秘密鍵のバックアップ

ここでは、Windows10での証明書と秘密鍵のバックアップについて説明します。それ以前のバージョンについても基本的な手順は同じですが、必要に応じてこちら(Windowsのヘルプ)を参照して下さい。また英語になりますがComodoの公式FAQを参考にしても良いでしょう。

検索アイコンまたはボックスから「certmgr.msc」と入力し、表示されたcertmgr.mscをクリックします。
左側のリストから「個人」→「証明書」と辿ると、右側に発行先が「申請したメールアドレス」、発行者が「COMODO」になっているものがあります。これが目的の証明書です。

うまく見つけられない場合は、certmgrの検索機能で「comodo」を検索すると見つけることがで出来ます。

メール用の証明書を右クリックし、「全てのタスク」→「エクスポート」をクリックします。
証明書エクスポートウィザードが開始したら「次へ」をクリックします。
秘密キーをエクスポートする方を選んで「次へ」をクリックします。
画像のとおりにオプションを選択して「次へ」をクリックします。
エクスポートした証明書と秘密鍵を後でインポートする時につかうパスワードを設定して「次へ」をクリックします。
「参照」ボタンをクリックして、エクスポートするファイル名と保存先を指定してから「次へ」をクリックします。
エクスポート結果が表示されます。「完了」をクリックします。
正しくエクスポートされました。「OK」をクリックして終了です。

エクスポートした証明書ファイルは、他人にアクセスされない場所(外部メディア等)に保管し、大切に保管しておきます。

Outlookでメール用の電子証明書を使うには

ここではOutlook2010で送信メールに電子署名を付与したり、暗号化したメールを送信するための各種設定について説明します。Outlookの他のバージョンをお使いの場合は適宜読み替えて下さい。

1.取得した電子証明書をOutlookに設定

Actalisの電子証明書を設定済みの方は「2.メッセージに電子署名を付けて送信する」へ進んでください。

ファイルオプション
セキュリティセンターセキュリティセンターの設定
画面左の「電子メールのセキュリティ」 画面右の「設定」
新規作成をクリックします。
セキュリティ設定名に適当な名前( 例:S/MIME – user@example.com など)を入力し、署名証明書の「選択」をクリックします。
先程取得したComodoの証明書を選択して「OK」をクリックします。
ハッシュアルゴリズムと暗号化アルゴリズムをそれぞれ選択して「OK」をクリックします。

上記⑦ の各オプションについて(参考リンク)

  • 各アルゴリズムでどれを選択すべきかは運用の際の安全性と汎用性を基準に選択します。※ 私はSHA256とAES(256bit)を選択しました。
  • 「この暗号化メッセージ形式の既定のセキュリティ設定として使用する」および「署名済みメッセージで証明書を送信する」オプションについてチェックすべきかどうかも運用環境・方針により異なります。詳しくはこちらのページの該当箇所を参考にして下さい。※ 私は⑦の画像のように設定しました。

2.メッセージに電子署名を付けて送信する

メールに電子署名をして送信すると、送信者本人からの送信であること及び 本文が「改ざん」されていないことを受信者に対して証明することが出来ます。

メールの送信者が常に電子署名付きで送信していることを受信者が認識していれば、送信者の表示を偽装した電子署名のないメールに対して注意を喚起することが出来ます。近年では都市銀行などの金融機関からのお知らせメールにも、フィッシング対策として電子署名が付いているものも見られるようになりました。

メールに電子署名を付ける手順は以下のとおり非常に簡単です。

メール作成画面で、オプションタブに切替え、「署名」ボタンをクリックして送信します。

常に電子署名を付ける場合は こちらの画面で「送信メッセージにデジタル署名を追加する」のチェックボックスをオンにします。

受信者側に電子署名されたメールが届いたところ。

Outlookでは、電子署名付きのメールを封蝋のアイコンで表しますが、アイコンはメールソフトにより異なります(Thunderbirdの表示例)。

Outlookで電子署名アイコンをクリックしたときに表示される画面の例。検証結果が確認できます(Thunderbirdの表示例)。

3.メッセージを暗号化して送信する

受信者と送信者の双方がメール用の電子証明書を持っている場合、前述の電子署名機能の他に、メールを暗号化する機能を利用できるようになります。

事前準備

メッセージを暗号化して送信する仕組みを簡単に言うと、まず送信者が「あらかじめ受信者から受け取ったメッセージ暗号化用の証明書」を使ってメールを暗号化します。

この特定の証明書によって、暗号化されたメールを第三者が取得しても、暗号化されたメールを復元する方法を持っていないのでメールを読むことが出来ないようになっています。

したがってメッセージを暗号化して送信するための事前準備として、受信者側のメッセージ暗号化用の証明書を取得する必要があります。

受信者側のメッセージ暗号化用の証明書をあらかじめ取得する代表的な方法には下記の方法があります。

  • 前述「2. メッセージに電子署名を付けて送信する」の方法で、受信者から電子署名付きのメッセージを受け取る方法

  • 「.cer」ファイルをメールや連絡先カードに添付してもらい、受け取った「.cer」ファイルをOutlookにインポートする方法

  • 「.cer」ファイルを共有フォルダ(または専用ディレクトリ)に保存(または公開)してもらう方法

ここでは、上記3つうち最も簡単な「受信者から電子署名付きのメッセージを受け取る方法」による暗号化用の証明書取得について説明します。

要は、電子署名付きメールの送信者を自分のOutlookアドレス帳に保存するだけです。

ケース1. 受信したメールから新規に連絡先を追加する場合

電子署名付きメールの差出人欄のアドレスにマウスカーソルをあわせて「Outlookの連絡先に追加」をクリックします。
連絡先編集画面で「証明書」ボタンをクリックして、画面下の一覧に相手の証明書が表示されていることを確認してから「保存して閉じる」をクリックします。

ケース2. 既存の連絡先に受信したメールの証明書をインポートする場合

ケース1の手順②で、開いた連絡先を保存せず、添付されている証明書を選択して「エクスポート」をクリック(デスクトップなど任意の場所に「.cer」ファイルを保存)します。

「.cer」ファイルを保存したら、作成中の連絡先は保存せずに閉じます。

既存の連絡先を開き、①でエクスポートした「.cer」ファイルをインポートします。

相手から「.cer」ファイルを直接受け取ったときもこの方法でインポートします。

暗号化して送信する手順

メール作成画面で、オプションタブに切替え、「暗号化」ボタンをクリックして送信します。

常に暗号化を行う場合は こちらの画面で「送信メッセージの内容と添付ファイルを暗号化する」のチェックボックスをオンにします。

受信者側に暗号化されたメールが届いたところ。

Outlookでは、暗号化されたメールを青い錠前のアイコンで表しますが、アイコンはメールソフトにより異なります(Thunderbirdの表示例)。

Outlookで暗号化アイコンをクリックしたときに表示される画面の例。検証結果が確認できます(Thunderbirdの表示例)。

送信ボタンを押したときに、暗号化メールを送信できない受信者(=自分のOutlook連絡先に相手の暗号化用証明書がないもの)が含まれていると上記のようなエラーが表示されます。

このまま暗号化せずに送信することも出来ますが、暗号化して送信する場合は、いったん送信を中止してアドレス帳内に暗号化用の証明書が保存されているか再確認します(ごく稀に、インポートした証明書がアドレス帳に正しく保存できていないことがあります)。