skip to Main Content

電子メールや電子メールの添付ファイルを暗号化する技術は、10年以上前からある古い技術であるにも関わらず、広く普及しておらず、少し前に改めて注目され始めてきたようにも感じます。

電子メールの暗号化について、その歴史や手法についてを今回はまとめて解説してみます。

どうして暗号化が必要なのか?

暗号化が必要な理由 と言えば、ズバリ!暗号化されていないからです。(^^;;

暗号化されていないため、受信時のパスワードや本文が、ネットワークを盗聴してしまうと盗み見されてしまうリスクがありました。

会社宛のメールを自宅から送受信することを、社内のポリシーとして禁止している例は少なくなく、この理由の一つとして、これらのプロトコルや送受信時に入力するパスワードが暗号化されていないという点も挙げられます。

こうしたメールの通信を、HTTPで一般的に利用されるSSLを使って、同じくサーバ証明書を用いた暗号化した通信には、”SMTP/IMAP/POP3 over SSL”と”STARTTLS”という2通りの方法があります。

クライアント/サーバー間で”SMTP/IMAP/POP3 over SSL”を使う場合の注意点

“SMTP/IMAP/POP3 over SSL”を使って、クライアントからのメール送受信を行う場合、クライアントで使っているメーラーが”SMTP/IMAP/POP3 over SSL”に対応している必要があります。

また、対応しているメーラーであっても、そのままで”SMTP/IMAP/POP3 over SSL”を使うことができるわけではなく、メーラー側で設定変更が必要になります。

SMTP over SSL対応メールソフト・スマートフォン例

Windows用メールソフトMacintosh用メールソフトスマートフォン
Windows メールMail v1.2.3iPad
Windows Live メールEntourageiPhone/iPod touch
Outlook Express 6Outlook Express 5.02Xperia
Outlook 2000以降Outlook for MacBlackBerry
ThunderbirdThunderbirdHTC Desire
Becky! Internet Mail
Shuriken Pro

ブラウザでのSSL通信(https)と同様に、多くのメールクライアントソフトウェアでは、第三者証明機関が発行する証明書を使用しないと(自己発行の証明書を使うと)、接続時に信頼できる証明書であるかを確認する警告メッセージが表示されます。

スマートフォン標準のメーラーの場合、第三者証明機関が発行した証明書以外のものではSSL通信を使用できませんのでご注意ください。

OP25B (Outbound Port 25 Blocking)とSMTP認証

OP25Bというと、単純にSMTPポートを閉じるだけの意味にとられがちですが、これとセットで登場するのが、SMTP認証です。

SMTP認証とは、POPと同様、SMTP自体に認証機能をつけるというものです。

ただ、送信時に使われる25番ポートにはユーザー認証の機能がありません。

そこで、ユーザーがメール送信する際に使われるポートが587番ポートであり、これを利用するために(どちらも有効では意味がありませんから)25番ポートを閉じることになります。

これをOP25B (Outbound Port 25 Blocking)と呼びます。

OP25Bは単に25番ポートを閉じることを意味し、サブミッションポートと呼ばれる587番ポートを利用するとは、SMTP認証を利用するということを意味しています。

MDaemon第三者中継対策のページに、SMTP認証について説明しています。あわせてご確認ください。

STARTTLSによるメール暗号化

STARTTLSは、送信者側のメールサーバーと、受信者側のメールサーバーとの通信で主に使用されます。

SMTP/IMAP/POP3 over SSLの場合、社外からのSMTP通信を暗号化するには、それぞれ専用のポートであるSMTPS(465/tcp)、IMAPS(993/tcp)、POP3S(995/tcp)をファイアウォールで解放しなければなりません。

同様に社外のメールサーバとの暗号化通信においても、SMTP/IMAP/POP3 over SSLの場合、ファイアウォール設定上のハードルが高いことが挙げられます。

STARTTLSでは、最初の接続は従来のSMTP(25/tcp)、IMAP(143/tcp)、POP(110/tcp)を使って行い、接続先のメールサーバがSTARTTLSに対応していれば、同じ接続の中で暗号化通信を行える仕組みとなっております。

そのため、SMTP、IMAP、POPを使った送受信メールの暗号化をシステム環境的に容易に行えます。

サーバー間でTLSを使う場合の問題点

ブラウザでのSSL通信(https)と同様に、多くのメールクライアントソフトウェアでは、第三者証明機関が発行する証明書を使用しないと(自己発行の証明書を使うと)、接続時に信頼できる証明書であるかを確認する警告メッセージが表示されます。

STARTTLSをサーバー側で実装する場合、送信先のサーバーがSTARTTLSに対応していないと、メールの暗号化は行われません。

多くの場合、取引先にメールサーバーの暗号化対応を強制することはできず、結果としてメールの送受信が行えなくなる場合もあります。

例えばMDaemonメールサーバーでは、送信先サーバーがSTARTTLS対応のサーバーかどうかを通信時に判定し、SATRTTLS対応であればメールを自動で暗号化し、STARTTLSに未対応のサーバーであれば、従来のSMTPでメールを送信するという機能がデフォルトで有効になっています。

取引先にメールサーバーの暗号化対応を強制することはできませんが、この方法であれば、最も安全な方法をサーバーで自動選択し、ユーザーや管理者へ負荷をかけることなく、メールが送受信できなくなるといった事態も避ける事ができます。

MDaemonSTARTTLSによるメール通信の暗号化のページもあわせてご確認ください。

Back To Top