Comments
Description
Transcript
ポートフォワード方式を用いた SSL-VPN による メール送受信システム
情報処理学会第67回全国大会 5W-7 ポートフォワード方式を用いた SSL-VPN による メール送受信システム 藤田 健太† 後藤 亮太† 菊池 浩明† 東海大学電子情報学部‡ 盗聴や,本文改ざんの危険が生じる. 1. はじめに モバイル環境においても,メールの利用など のイントラネット向けサービスを利用したいと いうニーズが高まってきている.ところが,フ ァイヤーウォールやメールサーバのスパム対策 等により,リモートアクセスが制限されている 場合が多い. そこで,我々は Java Applet と Java での SSL の 実装である JSSE(Java Secure Socket Extension)に 着目し,セキュアなメールの送受信を実現する ポ ー ト フォワード方式による SSL-VPN(Virtual Private Network)を実装した.本稿では,開発した メール送受信システムについて報告し,安全な リモートアクセスについて考察する. 2. 背景 2.1 リモートアクセスの問題点 本来,ウィルスや不正アクセス等外部ネット ワークの脅威から内部ネットワークを守るセキ ュリティ対策が,次に示すようにリモートアク セスの障害となっている. ・ファイヤーウォール ファイヤーウォールによって多くのポートは 制限されている.リモートアクセスしようと しても HTTP 以外通らないことが多い. ・スパム防止 スパム配信の踏み台にされることを防止する ため,外からメール送信する場合、内部ドメ イン以外のあて先を禁止している SMTP サー バが多い.その為,ファイヤーウォールの外 側から接続できても,そのメールアドレスを 用いて外部へメールを出すことはできない. ・盗聴,改ざん リモートアクセスによって,ファイヤーウォ ールの外側から内側へアクセスする場合,普 段ファイヤーウォールによって保護されてい るデータがインターネット上をそのままで中 継される.従って,メール送受のパスワード 2.2 従来方式-専用装置による VPN 自宅や出先などファイヤーウォールの外側か ら内側にあるサービスを利用するには,公衆回 線を専用回線のように利用できる VPN の導入が 効果的である.暗号化や認証技術を用いて第三 者による盗聴やなりすましを防止している. 従来の VPN サービスは専用装置を用いて実現 されていた.専用装置は安全で通信速度の面で も優れている.反面,VPN 装置の導入,専用ソ フトのインストール等の作業が必要で,管理者 やユーザーの負担が大きかった. 2.3 本研究目的 従来方式では設定が複雑であったり,クライ アントに専用ソフトをインストールしなければ ならない.そこで,我々は次の 2 つの技術により セキュアなメール送受信システムを開発した. 2.3.1 SSL-VPN 通信情報を暗号化して送受信する SSL プロト コルで VPN を実現する. SSL は通常 HTTP の暗号化に用いられており, これを VPN の暗号化の部分に利用するためには 専用ソフトウェアが必要である.そこで,我々 は,Java Applet を用いることによって専用ソフト のインストールを不要にした. しかし,Java Applet ではサンドボックスという セキュリティ上の制約があり,クライアント PC のメールソフトと通信ができない.そこで Applet に認証された開発者のディジタル署名をした Signed Applet を用いる.署名の正当性を検証すれ ば,任意のホスト,ポートへのアクセスが許さ れる. 2.3.2 ポートフォワード方式 あるポートに送られてきたデータを中継し,別 に用意した異なるポートから送信する方式.TCP ベースで動作するほとんどのアプリケーションに Secure Email Access Using Port-Forwarding SSL-VPN † Kenta Fujita Ryota Goto Hiroaki Kikuchi ‡ Tokai University 3−703 対応する.メール送受のプロトコル SMTP や POP3 は,単一の TCP ソケットでサーバクライア ント間の通信を行うため,ポートフォワード方式 に向いている. 本実装は[2]を基にした. 表 2. 暗号アルゴリズムと証明書 暗号アルゴ リズム 証明書 RSA (1024bit) TLS_RSA_WITH_RC4_128_MD5 CA1=Thawte Code Signing CA CA2=Tokai University Educational System 2.5 3.1 システム構成 本システムは図 1 に示されるメールクライアン ト C,Java Applet A,ファイヤーウォール FW, VPN サーバ VS,メールサーバ MS で構成されて いる.クライアント C は Web サーバ WS から Applet をダウンロードする. PC1 Sever1 C 25 Processing Time T (n ) [s] 3. 実装システム 2.0 SSL-VPN Normal 1.5 1.0 0.5 MS 0.0 0 20 Sever2 40 60 Number of Messages n 80 100 図 2.メール数についての受信時間 25 FW A 4649 VS 3.3 考察 2 つの計測結果に最小二乗法を適用し, :仮想的なデータ の流れ T1(n)= 0.0165n + 0.3591,T2(n)= 0.0105n + 0.1597 WS :実際のデータ の流れ を得た.計測の結果,VPN使用の場合は通常の 1.5 倍程度時間がかかることが分かった.また, 図 1.システム構成とデータフロー SSL鍵交換によるオーバーヘッドは 0.199[s]と非 動作フロー(SMTP) 常に小さいものである. 1.PC1 は WS より Applet A をダウンロードする. しかし,他メールサーバ (Qpopper ver 4.0.5) を 2.C のあて先を localhost に設定し,A に対して 用いた実験において,VPN 未使用時に比べ 20 倍 メールを送信する. 遅くなるという結果が生じた.本ソフトにおいて 3.A は 25 番(POP3 110 番)で待ち受けており, は,サーバから連続してデータを送信する処理が データ要求が届くと VS の 4649 番(POP3 5963 あり,それがクライアントから Ack だけの空パ 番)へと SSL の送信路を確立する. ケットの返信を引き起こしていた. 4.VS は A からデータを復号しながら MS の 25 4. おわりに 番へと中継する. Applet をダウンロードするだけでファイヤーウ 3.2 パフォーマンス評価 ォールの内側にあるメールサーバを利用できる メール数を増やした場合の受信時間を次の実験 SSL-VPN システムを開発した.また、スパム対 方法で評価した.シェルスクリプトを用いて 策が行われていてもメールの送受信ができるよ n=20,50,80 でメールサーバにメールを送信し, うになった. VPN と通常の方法でメール受信に要する時間を 本システムは固定ポートのみを使用するアプリ 各々計測する.今回の実験に使用したソフトとス ケーションに対しては拡張可能である.しかし、 ペックを表 1 に,暗号アルゴリズムと証明書を表 FTP など不特定のポートを使用するアプリケーシ 2 に,実験結果を図 2 に示す. ョンには対応できない.この問題の解決にはポー トフォワードとは別の方式を考える必要がある. Sever3 PC1 Server1 Server2 Server3 表 1. 使用した機材と仕様 参考文献 P4 2.8 GHz,512 MB,Win XP SP2 Outlook Express 6.0, Internet Explorer 6.0 Xeon 2.3 GHz,1 GB,RedHat 9 Sendmail 8.12.8,imap 2001a-18 Celeron 2.0 GHz,512 MB,RedHat 9 iptables 1.2.7a,Apatch 2.0.40 [1] K. L. Calvert and M. J. Donahoo, “TCP/IP Sockets in Java Practical Guide for Programming”, 2002. [2] Rob van den Bergh, “Porter.java” (http://alpha. comweb.nl/java/Porter/portforward.html, 2004/12/10 参照) 3−704