- PR -

qmail + VPopMail の設定について

1
投稿者投稿内容
はっしゅどびーふ
会議室デビュー日: 2002/02/22
投稿数: 2
投稿日時: 2002-02-22 10:47
 「実用qmailサーバー運用・管理術」を拝読させていただいてます。
 ちょうどLinuxBoxでメールサーバー構築している最中でしたので、大変参考になりました。

 早速ですが、「第6回 バーチャルドメインにおけるqmailの運用」について、2点お問い合わせいたします。


【1】tcp.smtpファイルを置くディレクトリ
 3ページ目のPOP before SMTPのtcp.smtpファイルを置くディレクトリは、“/etc/tcp.smtp”ではなくて“/home/vpopmail/etc/tcp.smtp”(環境によって変化するかもしれません)だと思います。



【2】tcp.smtpの内容
 同じく記事では、
コード:

127.:allow,RELAYCLIENT=""
:allow


とするようにありました。実際にそのように記述すると、一度POP認証が通ってしまうと、制限時間の間、どこからでもどのようなメールでも中継してしまう危険な状態になりました。

 次のように設定することで、認証されたIPアドレスからしかメールを中継できないように出来ました。
コード:

127.0.0.1:allow,RELAYCLIENT=""
:deny


 VPopMailのディフォルトは、
コード:

127.:allow,RELAYCLIENT=""


だけだったと思います。こちらはあまり記憶は定かではありませんが、良くなかったように思います。



【追加】
 それともうひとつ。
 qmail起動スクリプトが紹介されていますが、私の環境では1行が非常に長くなるために不具合が生じています。stopで全てのqmail関連のプロセスを停止できません。
 原因は、ps の出力がデフォルト桁で打ち切られてしまうからのようです。
 これは、スクリプトの最初の方(PATHの次の行)に1行記述を追加することで解決しました(値が妥当かどうかはわかりません)。
コード:

PATH=......
COLUMNS=1024



 よろしくお願いいたします。

鶴長鎮一
ベテラン
会議室デビュー日: 2001/08/29
投稿数: 78
お住まい・勤務地: 東京都
投稿日時: 2002-02-24 01:43
「実用qmailサーバー運用・管理術」を担当させていただきました鶴長と申します。ご指摘ありがとうございます。回答の順番が前後してしまいますことをお許しいただきたいと思います。

> 【2】tcp.smtpの内容
これにつきましてはご指摘の通りです。修正の方を急がせていただきたいと思います。

>【1】tcp.smtpファイルを置くディレクトリ
こちらの方ですが、結論を出すのにもう少しお時間をいただけないでしょうか。確かに私も以前vpopmail-4.9.10では、~vpopmail/etc/ でtcp.smtp tcp.smtp.cdb を利用するようになっていたのですが。今回ご紹介した5.0.1では configure 時に"--enable-tcpserver-file="を指定していない場合のデフォルトの位置が /etc/ になっていたと認識しております。すいませんがもう1度確認させていただく時間をいただけないでしょうか。

> 【追加】
COLUMNS=1024 の件大変参考になります。ありがとうございました。実は原稿を提出させていただいたときに、いつもお世話になっているLinuxフォーラムご担当の方とも相談させていただいたのですが、紙媒体と違い、rcファイルのような文の正確さが必要なところで、場合によって意図した校正とはちがうもので閲覧されている方に伝わってしまうことがあり、それなら複数行に分けてしまうより、割り切って1行で表示してしまおうと私の方で判断して掲載をお願いいたしました。注意が足りませんでした。長々の言い訳もお許しください。

【1】の件、再度回答させていただきたいと思います。ご愛読とご指摘本当にありがとうございました。
はっしゅどびーふ
会議室デビュー日: 2002/02/22
投稿数: 2
投稿日時: 2002-02-24 11:06
鶴長さんこんにちわ
さっそくお返事いただきありがとうございます。

> 【2】tcp.smtpの内容
>
 これは、私が間違っていました。
 “:allow” を設定して全てのメールを中継してしまったのは、/var/qmail/controle/rcpthostsが設定されていなかったからでした(実際にはファイル名のtypo)。
 正しく設定したところ、許可以外のサイトへの中継は行われなくなりました。不正中継チェックサイト※で確認しました。
 なお、私のところでは、MXによるメールの受け取りは行わず、PCのメールクライアントからのPOP before SMTPでしかメールの授受を行わないつもりです。“:deny”を設定すれば、POP認証されたIPアドレス以外からのアクセスは全て遮断されるはずです。ポートスキャンにも引っかからなくなると思うので、それで運用するつもりです。
 お騒がせして申し訳ありません。

※不正中継チェックサイト
http://www.nanet.co.jp/rlytest/relaytest.html
http://www.abuse.net/relay.html
http://ordb.org/submit/


>【1】tcp.smtpファイルを置くディレクトリ
>
 私がインストールしたのは、vpopmail-5.2です。“--enable-tcpserver-file=”は指定しておりません。
 バージョンの違いによる細かい差違という事で諒解しました。


> 【追加】
>
 追加のCOLUMNS=1024の件について、もう少し。
 こちらの環境では、
$ ps aux

$ ps aux | tee
で出力が異なります。後者は80桁程度で出力が打ち切られます。
$ COLUMNS=256
$ export COLUMNS

を実行してから両者を行うと、後者は長いコマンドラインのプロセスを2行、3行にわたって256桁まで表示しました。

※こちらの環境は、ぷらっとホームのOpenBlocdSS+TeraTermProです
※同様の現象は、CobaltQube3(RedHat系Linux)+TeraTermProでも確認しています。

 スクリプトの動作として“qmail”という単語を含むプロセスIDを探してkillするようになっていますが、“qmail”の単語に達する前に出力が打ち切られてしまうため、該当プロセスが残ってしまったようです。
 正確に調べたわけではありませんが、COLUMNS環境変数はターミナルの表示桁数を値としているようです。psコマンドはひとつのプロセスが1行に収まるように表示するためにこの環境変数を使用するようです。これが設定されていないときは、ディフォルト値(通常80桁?)が使用されるのだとおもいます。スクリプト中ではCOLUMNS環境変数は設定されないようなので、あらためて設定したわけです。

 なお、記事中のスクリプトの掲載方法ですが、今のままで構いません。コピー&ペーストしますので。
 欲を言えば、その記事で解説したスクリプトや設定ファイルの全体をダウンロード出来るようになっていればもっと良いと思います。

 よろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)