|
|
 |
| IT技術情報>システム/サーバ構築>Sendmailによるセキュアメールサーバ構築第02回:セキュアメールサーバ構築 |
 |
 |
【連載 】Sendmailによるセキュアメールサーバ構築
第2回:セキュアメールサーバ構築
|
|
|
 |
|
|
|
|
 |
【 ページ 】 | 1
| 2 | 3
|
<<前のページへ
|
 |
2_3.メッセージサイズの制限
次にユーザが送信しようとする一通あたりのメッセージサイズを制限する設定を行います。最近では、巨大なメールを相手に送りつける悪質ないたずらも多発しております。また、高速にダウンロードできる環境になってきてはいますが、その分やり取りされるメッセージサイズは巨大になり、メールボックスへの負担となっております。現在メッセージサイズを制限することはインターネットを共有する上でのマナーといえます。
このメッセージサイズの制限を行うには、sendmailの設定ファイルであるsendmail.cfの設定を変更する必要があります。ここでは、sendmail.cfの設定を編集するのに今まで同様、sendmail.mcを使用します。以下の記述をsendmail.mcに追記し、m4コマンドを使用してsendmail.cfを作成してください。ここでは5MB(5*1024*1024=5242880)に制限をかけています。
|
[root@mail root]# vi /etc/mail/sendmail.mc |
dnl #
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
define(`confMAX_MESSAGE_SIZE’,`5242880’)dnl |
編集したら、以下のコマンドを実行してsendmail.cfを作成してください。
|
[root@mail root]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf |
sendmail.cfを作成したらsendmailを再起動し、設定ファイルを再度読み込ませてください。
|
[root@mail root]# /etc/rc.d/init.d/sendmail restart |
3.SMTP認証
リレーの制限をする方法として前回acceessファイルの紹介をしました。
しかし、accessファイルにリレーを許可するIPアドレスを記述する方法では、そのIPアドレスを事前に知っていなくてはいけません。常に特定のIPアドレスからメールを送信するのであれば問題ないのですが、現在ではモバイルでの使用法も一般的になり、事前にリレーを許可するIPアドレスやホスト名を把握しておくのは不可能といえます。
しかし、すべてにメールのリレーを許可してしまうと、メールサーバがspamなどの送信に利用される可能性が出てきます。そこで「不正中継対策」と「ユーザの利便性」のトレードオフをどう解決するかという問題が出てきます。
現在ではその解決策として「POP befor SMTP」または「SMTP認証」のどちらかを利用するのが一般的です。ユーザベースでの認証を行ってから、リレーの許可や拒否を判断します。つまりクライアントのユーザ名とパスワードさえ正しければ何処からでもメールの送信が可能となります。
sendmailではどちらを利用することも可能ですが、本稿ではSMTP認証の利用方法を紹介します。
sendmailをSMTP認証対応にするには、以下の手順を行う必要があります。
 |
(1)cyrus-saslのインストール |
 |
(2)sendmail.cfの変更 |
 |
(3)SASLの設定 |
 |
(4)SMTP認証ユーザのパスワード設定 |
(1) Cyrus-saslのインストール
Fedora Core1に付属のsendmailではすでにSMTP認証が使用できるようにコンパイルされているので、後は必要なライブラリをインストールすだけです。そのライブラリとなるのが「cyrus-sasl」です。まずは事前にインストールされているかどうかを確認します。
|
[root@mail root]# rpm -qa | grep cyrus-sasl |
| cyrus-sasl-2.1.15-6.i386.rpm |
cyrus-saslモジュール本体 |
| cyrus-sasl-md5-2.1.15-6.i368.rpm |
ログイン認証などをサポートする為のプラグイン |
| cyrus-sasl-plain-2.1.15-6.i386.rpm |
CRAM−MD5やDIGEST−MD5をサポートするためのプラグイン |
| cyrus-sasl-gssapi-2.1.15-6.i386.rpm |
Kerberos認証などをサポートするためのプラグイン |
|
もしインストールされていないのもがあればディストリビューションのCD-ROMまたは、ミラーサイトからそれらのアーカイブをダウンロードしてインストールしてください。
SMTP認証はメーラによって対応する認証方式が違う場合も多いので、今回はすべての認証方式をサポートするように追加のプラグインもすべてインストールしておきます。
[root@mail root]# rpm -ihv cyrus-sasl-plain-2.1.15-6.i386.rpm
[root@mail root]# rpm -ihv cyrus-sasl-md5-2.1.15-6.i386.rpm
[root@mail root]# rpm ?ihv cyrus-sasl-gssapi-2.1.15-6.i386.rpm |
(2) Sendmail.cfの変更
sendmail側でSMTP認証を使用可能にする必要があります。sendmail.mcの43,44行目のdnl
を削除して設定を有効にします。
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl |
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl |
(3) SASLの設定
SASLの標準設定では、認証方式がsaslauthdに設定されています。今回は認証にSMTP認証専用のデータベースを使用しますので、/usr/lib/sasl2/Sendmail.confというファイルを以下のように変更する必要があります。
(4) パスワードの設定
SMTP認証のユーザ情報は専用のデータベース/etc/sasl2dbというファイルにユーザ名とパスワードが管理されます。
SMTP認証用のパスワードの設定はsaslpasswd2 というコマンドを利用します。yamadaユーザを新規に登録したい場合は以下のように実行します。
[root@mail root]# saslpasswd2 -c yamada
Password:(パスワード入力)
Again (for verification):(パスワード入力) |
SMTP認証用のパスワードを設定するためには、事前にシステム上にユーザが存在しなければいけないので注意してください。SMTP認証情報を確認する場合は以下のように実行します。
[root@mail root]# sasldblistusers2
yamada@mail.hogehoge.com: userPassword |
sendmailを再起動し、設定ファイルを再度読み込ませてください。
|
[root@mail root]# /etc/rc.d/init.d/sendmail restart |
>>次のページへ
|
 |
【 目次 】
1.はじめに
2.メールユーザの管理
2_1.メールアカウント作成
2_2.メールボックスの容量制限(ディスククォータの利用)
2_3.メッセージサイズの制限
3.SMTP認証
4.APOPサーバ構築
4_1.APOP認証用ユーザの作成
5.最後に
|
 |
【 関連記事 】
|
|
 |
 |
|
サイト内全文検索 |
| スタックアスタリスクのサイトを検索します。検索には、Googleを利用しています。そのため、最新の情報で検索されない可能性があります。 |
|