■ウイルスからLinuxサーバを守る
第8回:メールサーバの不正利用対策その3
(POP Before SMTPの導入−Postfix編)
icon
前回のQmail編に引き続き,PostfixにおけるPOP Before SMTPの導入について解説する。Postfixについては,すでに第6回でSMTP Authenticationの導入方法について紹介しているが,POP Before SMTPを導入すれば,メールソフトがSMTP Authenticationに対応していないユーザーでも,メールアカウントさえ持っていれば利用できる。SMTP Authenticationと共に導入しておくとよいだろう

●PostfixでのPOP Before SMTPの導入

 PostfixでのPOP Before SMTPの導入にあたり,ここではDRAC(Dynamic Relay Authorization Control)というソフトウェアを利用した構築方法について解説する。DRACは,それ自体が認証を行うわけではなく,POPサーバへのアクセスがあったIPアドレスをデータベースとして登録し,一定の時間保持するものだ。MTA(ここではPostfix)はメール送信の依頼が来ると登録されたデータベースを参照し,登録されているIPアドレスからの接続であればメールの送信を許可し,登録されていない場合は送信を行わない(図1)。メールの送信が許可される時間はDRACで指定した時間内のみとなり,指定された時間がくるとデータベースに登録されたIPアドレスは自動的に消去され,それ以降はそのIPアドレスからのメール送信は拒否される。これにより,POPサーバへのアクセス認証で許可されたユーザー以外の,不正な第三者中継を防御することが可能になる。

図1■DRACを利用したPOP Before SMTPの導入
イメージ図
DRACはPOPサーバへのアクセスがあったIPアドレスをデータベースとして登録し,一定の時間保持する。Postfixは登録されたデータベースを参照し,登録されているIPアドレスからの接続であればメールの送信を許可し,登録されていない場合は送信を行わない

 今回はPOPサーバにQpopperを利用し,DRACを用いてPOP Before SMTPを構築する。利用したソフトウェアのバージョンはリスト1のようになっている。POP Before SMTP導入にあたり,Postfixの再コンパイルは必要ないが,QpopperはDRACを使用するために再度インストール作業を行う必要がある。

リスト1■インストールに利用した環境

RedHat Linux 7.2
Postfix-1.1.10(Official release)
DRAC version 1.11
Qpopper 4.04

●DRACのインストール

 DRACはmakeを行う前に,Linux用にMakefileを修正する必要がある。修正内容についてはDRACのWebサイトおよびソースファイル内にある「INSTALL」ファイルへ,プラットホーム別に記載されている。FreeBSDなど,Linux以外のOSにインストールする場合は,記載されている修正箇所を参照してMakefileの編集を行っておこう。  まずは,「drac」というディレクトリを作成してそこにダウンロードし,解凍する。

$ mkdir drac
$ cd drac
$ wget ftp://ftp.cc.umanitoba.ca/src/drac.tar.Z
$ gunzip drac.tar.Z
$ tar xvf drac.tar

1/5 NEXT