SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 1
SMTP認証機能付きメールサーバの構築
国際経営学科牧野研究室
服部初
2004 © Makino Seminar, Reitaku University, All RightsReserved.
目次n はじめにn メールサーバとはn 電子メールのセキュリティn 不正中継(spamメール)とはn 不正中継の防止策n SMTP認証サーバの運用・実験n 結果と考察n まとめn 参考文献
2004 © Makino Seminar, Reitaku University, All RightsReserved.
はじめに
n 個人で各種サーバを構築する人が増えている¨回線の常時接続化、PCの低価格化¨ダイナミックDNSサービスの普及
n 中でもメールサーバが人気¨手軽なコミュニケーションツールのひとつ¨書籍などの充実、webでの技術解説
n 安易な設定による公開¨書籍やwebとは、個人の環境が同じとは限らない
n 結果、不正中継やspamメールなどの温床に
2004 © Makino Seminar, Reitaku University, All RightsReserved.
メールサーバとは
n 電子メールを送受信するためのサーバ¨メールを送信・転送するSMTPサーバ¨メールを読み・書きするPOP,IMAPサーバ
Internet
クライアント クライアント
SMTPによる送信 POPによる受信SMTPによる転送
SMTPサーバ SMTPサーバ
POPサーバ
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP(Simple Mail Transfer Protocol)
n 電子メールを転送するためのプロトコル¨MUAからMTA、MTAからMTAへ受け渡す
n 基本的な仕様はRFC821で標準化¨その後、一部を拡張してRFC1651~1653で標準化し
たものがESMTP
n 通信ポートは25番を使用
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP(Simple Mail Transfer Protocol)
コネクション接続要求(TCP25番ポート)
220 Service ready
HELO sample.smtp.ne.jp
250 ok
MAIL FROM:[email protected]
250 ok
RCPT TO:[email protected] ok
354 go Ahead
SMTPサーバSMTPクライアント
DATA
コネクション切断要求(TCP25番ポート)
221 sample.smtp2.ne.jpQUIT
CR/LF.CR/LF<messages>
250 ok
時間の流れ
コード コードの意味211 システムの状態やHELPへの応答
214 HELPメッセージ
220 サービスを開始する221 サービスを終了する
250 要求されたメール処理の実行が完了
354 メッセージの入力を開始451 エラーが発生したため、要求された処理を中断
500 コマンドを理解できない
501 引数やパラメータが理解できない
502 指示されたコマンドはシステムに実装されていない
554 その他のエラー
SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 2
2004 © Makino Seminar, Reitaku University, All RightsReserved.
電子メールのセキュリティ
n メールサーバへの攻撃は多種多様に及ぶ¨サーバ自体への不正侵入¨サービス不能攻撃(DOS攻撃など)¨メールの不正中継
n 基本的に誰からの接続であっても受け付けるものであった
¨ spamメールn 送信元を詐称して、第三者にジャンクメールを送りつける
¨ウィルスn 現在のウィルスはインターネット経由で感染するケースが多い
2004 © Makino Seminar, Reitaku University, All RightsReserved.
不正中継(Open-Relay)
n 不正中継とは¨不正にSMTPサーバを利用しメールを送信すること
n SMTPサーバはメール送信時に認証を行わない¨無条件に受け取り、次へ転送する必要があったから
n 発信元を偽り、不正中継を利用して大量のメールをばらまく
n 不正中継を利用して送られてくる、大量のジャンクメールを「spamメール」と呼ぶ
2004 © Makino Seminar, Reitaku University, All RightsReserved.
不正中継の弊害
n サーバの資源を不正に利用される¨メモリやメールスプールのあるディスク領域の占有¨エラーメールの処理によるネットワーク帯域の占有
n インターネット上での信頼を失う¨不正中継を許してしまったドメインはデータベースに登録
n ORDB(Open Relay Data Base)など
¨データベースに登録されているドメインからのメールは受け取らない
n 通常のメール送信に支障をきたす
2004 © Makino Seminar, Reitaku University, All RightsReserved.
不正中継の防止策n MTAの設定で防止する¨中継を許可する送信元IPアドレスを限定する¨記述されたドメインを逆引きし、正しいドメインの場合だけ
中継を許可する¨外部からの接続で、あて先が自分のドメインであれば、
ローカルへメールを転送する¨ORDBなどのデータベースを参照し、登録されているドメ
インからのメールは受け取らない
n これでは、中継に認証が無いことに変わりは無い
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTPでの認証
n POP before SMTP¨メールを送信する前に必ずPOPでの認証を行う¨POP認証が通った場合のみ、メール送信を許可する
n SMTP認証¨SMTPシーケンスの中に、IDとPASSでの認証手順を設
け、クライアントに許可を与える
2004 © Makino Seminar, Reitaku University, All RightsReserved.
POP before SMTPとは
n メールを送信する前に必ずPOPで認証を行う¨POPをAPOPにすることも可能
n 認証が成功したクライアントの IPアドレスをデータベースファイルに書き込む¨ 5分~15分程度そのデータを保持する
n その後、通常通りSMTPでメールを送信する
n 設定時間が経過したら、保持したデータを破棄する
SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 3
2004 © Makino Seminar, Reitaku University, All RightsReserved.
POP before SMTPとは
n 概念図
クライアント
①認証
②OK
③送信
POPサーバ SMTPサーバ
認証
0 300 600
認証から600秒
(秒)
メールA送信中 メールB送信
メールの送信開始メールBは拒否
時間切れでも
メールAは送信される
POP before SMTPの問題点
n ダイアルアップなどの場合¨ IPアドレスとユーザの関係が一意ではない
ユーザAIP:192.168.1.5
ユーザB
ID、パスワードOK。ユーザAのIPアドレスは192.168.1.5だな・・・
POP認証メール送信したいから、POPしないと・・・
メールサーバ
ユーザBIP:192.168.1.5
ユーザA
メールサーバ
メール送信メール送信
ダイアルアップしたからメール送信しよう・・・
IPアドレス192.168.1.5だから、メールの送信を許可します
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP認証とは
n SMTPシーケンスで、IDとPASSによる認証を行う
n 認証の機能を独立したプロトコルとして使用¨認証機能を組み込む場合、通信プロトコル自体
に変更を加える必要がある
n SMTP認証を実現するには¨一般的にSASLという認証プログラムを使用
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SASLとは
n Simple Authentication and Security Layer¨RFC2222で標準化
n SASLという独立した認証プログラム¨認証が必要な通信プロトコルから汎用的に使用可能
n 認証方式によっては暗号化も可能
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SASLを使用したSMTP認証
n 概念図
クライアント
メールサーバ
SASL
SMTP MailBox
①SMTP接続
②認証依頼 ④許可
⑤メール転送
PasswordDatabase
③参照
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP認証ユーザの登録
n IDとパスワードを参照する方法を決める設定ファイルがある¨ /etc/passwd(/etc/shadow)ファイルの参照¨SASL独自のデータベースを参照
n SASLデータベースを使用する場合¨新規にアカウントを作成する必要がある¨ saslpasswdコマンドを使用
SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 4
2004 © Makino Seminar, Reitaku University, All RightsReserved.
認証の方式n PLAIN方式
¨ 平文のIDとPASSを送信¨ Base64でエンコードしたPASSを送信
n CRAM-MD5方式¨ サーバ側はランダム数字列、タイムスタンプ、FQDNを送信¨ ユーザ側はユーザ名を含む文字列 、1個の空白、鍵付きMD5ダイ
ジェスト値を送り返す¨ 暗号化したIDとPASSを送信する
n DIGEST -MD5方式¨ CRAM-MD5方式の後継¨ 暗号化したIDとPASSを送信する¨ ユーザアカウントを新たに作成しないと利用できない
2004 © Makino Seminar, Reitaku University, All RightsReserved.
代表的なメールソフトの対応状況
メールソフト SMTP認証対応方式 POP before SMTPBecky! PLAINおよびCRAM-MD5 ○電信八号 PLAINおよびCRAM-MD5 ○EdMax PLAINおよびCRAM-MD5 ○Eudora PLAINおよびCRAM-MD5 ×Netscape Messenger PLAINのみ ×Netscape PLAINのみ ×Outlook Express PLAINのみ ×Outlook PLAINのみ ×
メールソフト側の設定n Becky!の事例
¨ 「ツール」→「メールボックスの設定」→「詳細」から設定
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP認証サーバの構築
n SMTPサーバプログラム¨Postfix-2.0.16を使用
n SASLプログラム¨Cyrus-SASL-2.1.7-2を使用
n 自作PCを使用
OS Red Hat Linux 8.0CPU Celeron 1.1GHz
Memory 128MBHDD 40GBNIC 3Com Fast EtherLink XL PCI TX
2004 © Makino Seminar, Reitaku University, All RightsReserved.
メール転送実験
n メール送信環境¨クライアント:Windows XP¨メールソフト:Becky!2試用版
n 計測方法¨SMTP認証「あり」、「なし」でそれぞれ計測¨ 100、300、500、700、1000通を各10回ずつ測定¨クライアントは1台¨宛先は全て同一のアドレス
メール転送実験n SMTP認証ありでの転送平均時間¨メール本数が増加すると、転送時間はリニアに上昇
0.00
10.00
20.00
30.00
40.00
50.00
60.00
70.00
0 200 400 600 800 1000
秒
通
SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 5
メール転送実験n メール1通あたりの転送時間¨ 1通あたりのメール転送時間は約0.06秒¨本数が増えても、1通あたりの転送処理時間は増えない¨認証あり・なしで転送処理時間に差がない
0.0000.010
0.0200.0300.040
0.0500.060
0.0700.080
0.0900.100
100通 300通 500通 700通 1000通
認証あり
認証なし
秒
2004 © Makino Seminar, Reitaku University, All RightsReserved.
転送中に流れるデータ
n 認証は暗号化されるのか?
n 認証のタイミングは?
n Etherealにより、パケットキャプチャを行った
n パケットキャプチャの実際
2004 © Makino Seminar, Reitaku University, All RightsReserved.
パケットキャプチャでわかったこと
n 実際に認証が暗号化されていることが 確認できた
n 認証のタイミングは最初だけ¨送信箱に溜まっているメールは一まとめに送信される
n QUITコマンドで切断した後は新たに認証を行う
課題n 転送時間に差がなかったのは、1台のクライアントか
ら送信していたため
n 複数のクライアントから同時に送信すれば、差が出る可能性がある
0.000
0.0100.0200.0300.040
0.0500.0600.0700.080
0.0900.100
100通 300通 500通 700通 1000通
認証あり認証なし
秒
2004 © Makino Seminar, Reitaku University, All RightsReserved.
考察
n 以上の様な点を踏まえSMTP認証とPOP before SMTPを比較する
2004 © Makino Seminar, Reitaku University, All RightsReserved.
POP before SMTPn POP認証を使用するため利用者の環境を限定しない
¨ 不特定多数の利用者に提供するのに向いている
n POP認証は平文で行われるため、盗聴の危険がある¨ POPのアカウントが盗まれれば、SMTPも行える
n APOPを使えば回避できるが、¨ 利用者の環境を限定してしまう¨ POP before SMTPの最大の利点を生かせない
n 必ずしも、IPアドレスとユーザの関係が一意ではない¨ 許可されないユーザに接続を許す可能性は残る
n 送信前に必ず受信をしなければならず、操作性が悪い
SMTP認証機能付きメールサーバの構築 服部 初
第3回 麗澤大学情報系ゼミ合同卒論発表会 6
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP認証
n MTAそのものに、認証機構が組み込まれている
n SASLを利用するため、暗号化が可能である¨比較的安全に外部からの利用を許可できる¨ただし、利用者側の環境は限定される
n 対応するMUAを用意できれば、違和感なく使える
2004 © Makino Seminar, Reitaku University, All RightsReserved.
SMTP認証はどんな場面で使うか
n サーバの運用案¨自組織の人間にメール中継サーバを提供したい場合
n 出先から、自分の所属する組織のメールサーバへ送信を依頼できる
¨特定のユーザに外部からSMTPの利用を許可したい場合¨ 25番以外の送信ポートを割り当てればさらに安全
n 普通のメールサーバではなく、送信専用の中継サーバとして運用する
2004 © Makino Seminar, Reitaku University, All RightsReserved.
まとめn 本研究では、SMTP認証サーバを構築した
n 1台のクライアントからメールを送信する場合には、認証が付くことによって、メールの転送時間に変化は無い
n 暗号化できるため安全に中継サーバを提供できる
n ただし、利用者の環境は限定されるn SMTP認証サーバを提供する場合、運用方法を考慮
する必要がある
2004 © Makino Seminar, Reitaku University, All RightsReserved.
参考文献n 久米原栄:「sendmailセキュリティ」,ソフトバンクパ
ブリッシング(2003.7).
n 山井成良・宮下卓也・大隈淑弘・林伸彦:「岡山大学における電子メールシステムのセキュリティ対策」,情報処理学会研究報告,2002-DSM-26,pp.61-66(2002.8).
n OpenRelay DataBasehttp://ordb.org/
Top Related