Smtps(smtp over SSL)は、smtpとTLS/SSLを組み合わせて安全なメールの送信を実現するプロトコルです。前回お話ししたように、TLS/SSLは安全ではないネットワークに、暗号を使って安全な通信路を作り出す仕組みです。smtpsでは、この安全な通信路を使って、smtpの手順でメールを送信します。
TLS/SSLは通信内容を暗号化して相手に伝えます。それを利用するsmtpsでは、通信内容、つまりあて先情報とメール本文が暗号化されてネットワークを流れます。そのため、たとえ第三者がネットワークを盗聴したとしても、メールの内容をのぞかれることなく、安全にメールサーバに送り届けることができます。
smtpそのものに認証の仕組みはないため、TLS/SSLを組み合わせることで認証が安全に行えるようになる、といった効果はありません。これはpop3sと違う点です。
smtpはポート25番を使いますが、smtpsはポート465番を使います。smtpsでメールを送り出すときのイメージを図2に描いてみました。
メールソフトはsmtpのコマンドを作り出してTLS/SSLに引き渡します。TLS/SSLはそれを暗号化し、TCP/IPの仕組みを使って左側のサーバに送ります。暗号化されたコマンドを受け取ったサーバは、まずTLS/SSLで元のコマンドに復号します。次にそのコマンドをsmtpサーバ機能に引き渡し、smtpプロトコルに沿ってメール送信のための処理をします。
なお、TLS/SSLの仕組みは「TCP/IPアレルギー撲滅ドリル【番外編】Webを安全にするというSSLの中身を見せて」を参照してください。
pop3と同じように、smtpsにも切り替えのための仕組みが定められています。まずsmtpで通信を始め、お互いにsmtpsに対応しているようなら、途中からsmtpsに切り替える仕組みです。
これには、クライアントからサーバにSTARTTLSというコマンドを送ります。もしサーバがsmtpsに対応していて、なおかつsmtpからの切り替えにも対応していれば、結果コードとして「220」を返します。このやりとり以降は、次回のサーバとクライアントでのsmtpsに沿ったメールのやりとりで解説します。
Copyright © ITmedia, Inc. All Rights Reserved.