11) POPBeforeSMTPへの変更

POPBeforeSMTPの設定は、ルート権限でTelnet(SSH)接続して行います。
ルート権限でのTelnet(SSH)接続については、「SSH 設定」をご参照下さい。
ルートユーザ SSH
以下の例では、赤い文字は入力コマンドを、<Enter>はキーボードのEnterキーを押すことを示しています。
RV-3サーバでは、メール送信(SMTP)サーバとして利用が可能ですが、初期設定状態では SMTP Authになります。

メールソフトによっては、SMTP Authに対応できないものがありますので、
そのようなソフトを利用される際は、サーバの設定をPOP Before SMTPに変更することにより、メール送信が可能になります。

POP Before SMTPとは

POP Before SMTPとは、無断にSMTPを利用されないようにするためのセキュリティ手段のひとつです。
POP受信をすることにより、サーバ側でホストを記録して、そのホストからのメール送信を一定時間許可をします。
一定時間経過すると再度POP受信を行わないとメールが送信できなくなります。

サーバ側の前準備

POP Before SMTPを開始する前に、特定のPerlモジュールが必要となります。
下記の手順に従って、4つのPerlモジュールをインストールしてください。
この作業はSSH接続の上、ルート権限で行う作業となります。
CPANコマンドを利用し、必要なPerlモジュールをインストールします。
CPANコマンドにつきましては、こちらのページをご参照下さい。

% perl -MCPAN -e ←CPANモードの起動

cpan> install Time::HiRes

cpan> install File::Tail

cpan> install Date::Parse

上記で、CPANモードでのperlモジュールインストールは、終了です。
exit と入力して、CPANモードを終了し、次のコマンドを実行して下さい。


次に、Netmaskをインストールします。
Netmaskをインストールする前に、以下のソースをダウンロードしてください。
ダウンロードした「Net-Netmask-1.9015.tar.gz」を、FTPソフトで、「/www/htdocs」にアップロードしてから、以下のコマンドを実行してください。
% cd /www/htdocs/

% mv Net-Netmask-1.9015.tar.gz /var/distfiles/

% cd /ports/net-mgmt/p5-Net-Netmask

% make

% make install


ソースの入手

Pop-before-smtp Homeのホームページにアクセスして、Pop-before-smtpのtar.gzファイルを ダウンロードしてください。
Pop-before-smtp Homeホームページ : http://popbsmtp.sourceforge.net/
Pop-before-smtpダウンロードページ : https://sourceforge.net/project/showfiles.php?group_id=5017

pop-before-smtp-1.41.tar.gzをダウンロード
(2007年4月5日現在 最新バージョン)
※「.rpm」ファイルは、Linux用なので利用できません。

ダウンロードしたファイルをサーバにアップロードします。
管理者ユーザIDでFTPアクセスをして、/home/admin(最初のアクセス時の
ディレクトリ)にアップロードしてください。

例)管理者ユーザIDが「rapi」だった場合、ルートからみて「/home/rapi」のフォルダになります。
アップロードの際は、確実にバイナリモードアップロードしてください。

ソースの展開

ソースを/usr/local/src/にコピーします。
% cd /home/admin
↑※admin 部分はお客様の管理者ユーザIDに置き換えてください。

% cp pop-before-smtp-1.41.tar.gz /usr/local/src
% cd /usr/local/src

% ls
↑※srcフォルダ内に、[pop-before-smtp-1.41.tar.gz] がコピーされているのを確認します。

コピーされたソースを、/usr/local/src/内で解凍します。

% tar zxvf pop-before-smtp-1.41.tar.gz
解凍が開始され /usr/local/src/内にpop-before-smtp-1.41ディレクトリーが作成されます。


■ ファイルの変更

展開されたpop-before-smtp-1.41ディレクトリー内にあるpop-before-smtp-conf.plファイルを
変更します。

pop-before-smtp-conf.plを変更します。

40行目
変更前
# Set the log file we will watch for pop3d/imapd records.
#$file_tail{'name'} = '/var/log/maillog';

変更後
# Set the log file we will watch for pop3d/imapd records.
$file_tail{'name'} = '/var/log/maillog';
99行目
変更前
# For UW ipop3d/imapd and their secure versions. This is the DEFAULT.
#$pat = '^(... .. ..:..:..) \S+ (?:ipop3s?d|imaps?d)\[\d+\]: ' .
# '(?:Login|Authenticated|Auth) user=\S+ ' .
# 'host=(?:\S+ )?\[(\d+\.\d+\.\d+\.\d+)\]';

変更後
# For UW ipop3d/imapd and their secure versions. This is the DEFAULT.
$pat = '^(... .. ..:..:..) \S+ (?:ipop3s?d|imaps?d)\[\d+\]: ' .
'(?:Logn|Authenticated|Auth) user=\S+ ' .
'host=(?:\S+ )?\[(\d+\.\d+\.\d+\.\d+)\]';
352行目
変更前
=cut #-------------------------- Sendmail SMTP -----------------------START-


変更後
#-------------------------- Sendmail SMTP -----------------------START-
419行目
変更前
=cut #-------------------------- Sendmail SMTP -------------------------END-

変更後
#-------------------------- Sendmail SMTP -------------------------END-
変更が終了しましたら、下記のコマンドでテストを行います。
% cd /usr/local/src/pop-before-smtp-1.41 <Enter>
% ./pop-before-smtp --config=./pop-before-smtp-conf.pl --debug --nowrite --reprocess <Enter>

Sep 29 09:01:17 starting up
Sep 29 01:57:11 found ip=210.172.143.2
Sep 29 01:57:11 added 210.172.143.2 to DB
Sep 29 01:57:14 found ip=210.172.143.2
Sep 29 03:01:06 expiration event for ip=210.172.143.2
Sep 29 03:01:06 expiration event for ip=210.172.143.2
テストが問題なければ、上記のようなログが表示されます。
「starting up」が表示されれば問題はありません。
「found ip」等の表示には大変時間がかかる場合がございますので、 上記と同じ表示になるまで確認する必要はありません。
表示の終了は、「Ctrl+C」で行ってください。
エラーメッセージ等が表示されるようでしたら、再度pop-before-smtp-conf.plの設定を見直してください。

/etc/mail/ホスト名.mcファイルの最後に設定項目を追加して、
sendmailの設定を変更します。
/etc/mail/ホスト名.mcが見つからない方は、このマニュアルの最後にある /etc/mail/ホスト名.mcの作成の仕方をご参照ください。

/etc/mail/ホスト名.mc 最終行に追加
LOCAL_CONFIG
Kpopauth hash -a<OK> /etc/mail/popauth

LOCAL_RULESETS
SLocal_check_rcpt
R$*[タブ] $: $(popauth $&{client_addr} $: <?> $)
R<?>[タブ] $@ NoPopAuth
R$*<OK>[タブ] $# OK
※[タブ]は、Tabキーでタブを挿入してください。
ここにも、設定が公開されていますので、ご参照ください。

修正が終了しましたら、設定変更を行います。
% cd /etc/mail
% make install
% make restart

インストール

3つのファイルを所定のディレクトリにコピーします。
改行表示されていますが、一行で入力してください。
% cp /usr/local/src/pop-before-smtp-1.38/pop-before-smtp.init /usr/local/etc/rc.d/pop-before-smtp.sh

% cp /usr/local/src/pop-before-smtp-1.38/pop-before-smtp /usr/sbin

% cp /usr/local/src/pop-before-smtp-1.38/pop-before-smtp-conf.pl /etc/pop-before-smtp-conf.pl

実行

pop-before-smtpをデーモンとして、実行します。
% /usr/local/etc/rc.d/pop-before-smtp.sh start

Starting pop-before-smtp: done

以下のコマンドで、プロセス起動を確認してください。
% ps auxw | grep pop-before-smtp

root 20369 0.0 0.2 5512 4276 ?? Ss 11:18AM 0:00.01 /usr/bin/perl -wT /usr/sbin/pop-before-smtp --daemon=/var/run/pop-befo

/etc/mail/ホスト名.mcの作成の仕方

/etc/mail/ホスト名.mcが見つからない方のみご参照ください。
/etc/mail/ホスト名.mcは、下記の方法で作成することができます。
% cd /etc/mail
% make
作業が終了しましたら、lsコマンドで、ホスト名.mcファイルとホスト名.cfファイルが作成されたことを確認してください。


ページの先頭へ戻る

当サイトは、高機能マルウェア検知通知ツールの 「WebAlert」にて毎日マルウェア感染診断を行っています。

SSL グローバルサインのサイトシール

当サイトはグローバルサイン社発行のSSL電子証明書を使用しています。

VERIO最優秀パートナー賞受賞!
ラピッドサイトはISMS認証を取得しました。