Top過去ログ目次掲示板

作成日:2005年08月28日 作成:おやじ
掲示板で過去に質問された内容です。

No.5097 Postfixバーチャルドメインでの構築について


No.5097 投稿時間:2005年08月28日(Sun) 06:12 投稿者名:まゆっぺ URL:
タイトル:Postfixバーチャルドメインでの構築について

いつも参考にさせて頂き、大変お世話になっています。
ありがとうございます。

今回、趣味グループでメールサーバを立てる事になり、それぞれ4つのドメインで都合48人の方々が利用する予定なのですが、今までは私専用のWEB+MAILサーバでしたので、ドメイン管理は1つ、ユーザは私のみでアドレスは3つ使っておりました。

特にメールサーバ構築の際に参考にさせて頂いたお陰で、Postfix+SMTP-AUTH+TLSで外部からも快適に利用しております。
そんな事情から私に白羽の矢が立ったのですが(汗、上記のような環境に構築するのに必要な事(設定)はSASLユーザー登録とPostfix側のバーチャル設定だけでいいのでしょうか?

望んでいるものとしては以下のような感じです。

1) 外部から多数の人が利用するので、SMTP-AUTH+TLSにしたい。なんと全員がアウトルックを使用している(笑
※私のみ(1ドメイン)は運用中
2) バーチャルPOPサーバのみ。IMAPは使用しない…というか余計なポートは開けたくない。現在TCP25+TCP80+TCP110のNATフォワードのみ。
3) 基本的には上記二つがメインですが、メールパスワード管理は私以外できない。
※できるだけ人に関わらせたくないので…。

環境:Vine Linux 3.1 2.4.27-0vl7.6
:Postfix-2.0.20-0vl5+Cyrus-SASL-2.1.18-0vl3
:Courier-IMAP-4.0.3-0vl1
どうぞ宜しくお願い致します。


No.5098 投稿時間:2005年08月28日(Sun) 10:42 投稿者名:おやじ URL:
タイトル:アカウントはシステムでユニークならできるのでは?

> 今回、趣味グループでメールサーバを立てる事になり、それぞれ4つのドメインで都合48人の方々が利用する予定なのですが、今までは私専用のWEB+MAILサーバでしたので、ドメイン管理は1つ、ユーザは私のみでアドレスは3つ使っておりました。
>
> 特にメールサーバ構築の際に参考にさせて頂いたお陰で、Postfix+SMTP-AUTH+TLSで外部からも快適に利用しております。
> そんな事情から私に白羽の矢が立ったのですが(汗、上記のような環境に構築するのに必要な事(設定)はSASLユーザー登録とPostfix側のバーチャル設定だけでいいのでしょうか?
>
> 望んでいるものとしては以下のような感じです。
>
> 1) 外部から多数の人が利用するので、SMTP-AUTH+TLSにしたい。なんと全員がアウトルックを使用している(笑
> ※私のみ(1ドメイン)は運用中
> 2) バーチャルPOPサーバのみ。IMAPは使用しない…というか余計なポートは開けたくない。現在TCP25+TCP80+TCP110のNATフォワードのみ。
> 3) 基本的には上記二つがメインですが、メールパスワード管理は私以外できない。
> ※できるだけ人に関わらせたくないので…。
>
> 環境:Vine Linux 3.1 2.4.27-0vl7.6
> :Postfix-2.0.20-0vl5+Cyrus-SASL-2.1.18-0vl3
> :Courier-IMAP-4.0.3-0vl1

HPに基本的に書いてあることですが、希望条件+「アカウント名はシステム内でユニークである。(ドメインは異なっても同じアカウントは存在しない。」という条件なら、下記のバーチャルホストで対応できます。

http://www.aconus.com/~oyaji/mail2/smtp-virtual.htm

今まで、おやじもこれで済ませていましたが、娘の管理ドメイン宛のシステムメッセージが全ておやじに届くので、責任を持たせる意味もあってMySQLで本格的なバーチャルドメイン対応をしました。

http://www.aconus.com/~oyaji/suse9.2/smtp-mysql-suse.htm
http://www.aconus.com/~oyaji/suse9.2/courier-imap-mysql-suse.htm
http://www.aconus.com/~oyaji/suse9.2/smtp-mysql-spamassassin-suse.htm
http://www.aconus.com/~oyaji/centos/squirrelmail_virtual_centos.htm

でも、returned mailが多いのですが意味がわからないため、どう対処したらいいかよく聞いてくるので、おやじの負担はほとんど変わりませんが、自分で処理しようという意識だけはあるようです。
パスワード管理はそのまま開放してます。自分の責任で運用すればいいだけですし、最悪再設定してあげればいいだけなので。それより、テンポラリに転送できるほうがいいです。因みに、postfixadminをちょっと変更すれば、転送だけ活かしてユーザからはパスワード変更はできないようにするのは簡単です。
ところで、是非教えてほしいことがあります。まゆっぺさんは、SMTP-AUTH+TLSでクライアントはOEを使用していますよね。それなのに、ポートは465番ではなく25番を使っている、即ち、OEでSTARTTLS(25番ポート使用)できている(ユーザのプロパティの詳細設定の送信メールサーバのポートは25でその下のセキュリティ接続にチェックが入っている)ということですよね。よく、OEで25番ポートで解説されているサイトがあるのですが、おやじはどうやってもできず、OE固有の465番のSSL接続で使用しています。ません。どうしたらできるのか、教えていただけませんか? 理由がわからなければ、postconfの結果とmain.cfの内容を公開するのは問題あろうかと思いますので、おやじにメールしていただけないでしょうか?


No.5099 投稿時間:2005年08月28日(Sun) 11:56 投稿者名:まゆっぺ URL:
タイトル:Re: アカウントはシステムでユニークならできるのでは?

日曜にも関わらず早速のご返事ありがとうございます。

> HPに基本的に書いてあることですが...
> http://www.aconus.com/~oyaji/mail2/smtp-virtual.htm

につきましては、今までに暗記出来るほど読ませて頂いております(汗
仰せのとおり、現在ユニークなシステムアカウントを作成しておりますが、恐らくというか必ず重複が出ると思います。
皆さん女性で名前は似たようなものですし(笑、さらに関係のないアカウント名は嫌う...と言う種族でして(爆
そこで、ここでいっそバーチャル化しようと思いました。

> 今まで、おやじもこれで済ませていましたが...
> http://www.aconus.com/~oyaji/suse9.2/smtp-mysql-suse.htm
> http://www.aconus.com/~oyaji/suse9.2/courier-imap-mysql-suse.htm
> http://www.aconus.com/~oyaji/suse9.2/smtp-mysql-spamassassin-suse.htm
> http://www.aconus.com/~oyaji/centos/squirrelmail_virtual_centos.htm

ここも既にpdfにするほど学ばせて頂きました(笑

> でも、returned mailが多いのですが意味がわからないため...

すいません…。今の私とほぼ同じ状況です(汗

> postfixadminをちょっと変更すれば、転送だけ活かしてユーザからはパスワード変更はできないようにするのは簡単です...

はい、私も必要のない部分はPHPを弄ってみようと思います。

> SMTP-AUTH+TLSでクライアントはOEを使用していますよね。それなのに、ポートは465番ではなく25番を使っている...

については、特に意識した設定ではないのですが(と言っても様々なサイトの説明ではそれぞれ違う情報がありましたが)、TSL関係の設定はほぼおやじ様と一緒と思います。

他には、通常SMTPへの接続(EHLO)時にSTARTTLSさせています。MUA側の設定間違いでのエラーを回避するために、smtpd_tls_wrappermodeを初期値のnoにしてSMTP接続された時点でSMTPSにラッピングするようにはさせていません。
私も外部から使用するのにはおやじ様とほぼ同じ構成なのですが、MYSQLのようなデータベースは非常に苦手でして…。


No.5100 投稿時間:2005年08月28日(Sun) 12:06 投稿者名:まゆっぺ URL:
タイトル:Re^2: アカウントはシステムでユニークならできるのでは?

すいません、言葉足らずでした。
Main.cf側では

smtpd_use_tls = yes  //SMTPでSTARTTLSをする

master.cf側では

#smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes  //ポートを開けたくないのでコメントアウトしました

これでネゴシエイトしてくれました。


No.5101 投稿時間:2005年08月28日(Sun) 14:42 投稿者名:おやじ URL:
タイトル:原因はクライアントのNortonでした。

> すいません、言葉足らずでした。
> Main.cf側では
>
> smtpd_use_tls = yes  //SMTPでSTARTTLSをする
>
> master.cf側では
>
> #smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes  //ポートを開けたくないのでコメントアウトしました
>
> これでネゴシエイトしてくれました。

おやじがアホでした。当然、main.cfのsmtpsのオフは試験済みですが、まゆっぺさんの設定はおやじと全く違いはないので、やはり何かがあると思い、原点に戻ってパケットキャプチャしてみました。
当然のことのように、接続時にPostfixからは下記のテストと同じメッセージがでていました。

http://www.aconus.com/~oyaji/mail2/smtp-auth-tst.htm

ところが、OEが吐くメッセージは下記のとおりであり、あたかもサーバがエラーを返してくるようなメッセージで、実際のパケットを見るとクライアントから切断してました。

[OEのエラーメッセージ]
不明なエラーが発生しました。 アカウント : 'oyaji(server)', サーバー : 'server.aconus.com',
プロトコル : SMTP, サーバーの応答 : '500 サポート外コマンドです。', ポート : 25, セキュリティ (SSL): あり,
サーバー エラー : 500, エラー番号 : 0x800CCC62

つまり、何かクライアントで変換されているように見え、ふと思ったのがウイルス対策ソフトです。おやじはNortonをクライアントでは使用してますが、送信メールのプロテクトを停止したところ、ぴったしカンカンで無事STARTTLS(25)でうまくいきました。考えてみれば当然起こりえることで、安全サイドに設計すれば暗号化で理解できないメールは遮断してもおかしくはないので。
「norton starttls」でググッたらdocomoメールでお世話になったkobaさんのページがトップででてきました。TLS化してから長いこと悩んでましたが、既知問題だったんですね。
おやじはサーバのAntivirでプロテクトしているので、送信側解除は問題ないと判断しました。
おやじもどこかに書いておこうと思います。

おやじの長年の疑問を晴らしてくれた御礼ではありませんが、PostfixAdminで一般ユーザからは、パスワード変更できないようにするパッチを下記にあげておきましたので、よかったら使ってみてください。
postfixadminを解凍後、postfixadminディレクトリの直下にパッチを置き、config.inc.php.sampleからconfig.inc.phpを作成した後に、

# patch -p0 < user_password.patch

とやってください。config.inc.phpのほか、2つのtemplateにパッチが入ります。その後、config.inc.phpの中の「 $CONF['users_password'] = 'YES' 」をNOにすれば、一般ユーザの画面にはパスワード変更が出てこなくなります。

http://www.aconus.com/~oyaji/suse9.2/user_password.patch


No.5102 投稿時間:2005年08月28日(Sun) 15:48 投稿者名:まゆっぺ URL:
タイトル:全然お役には立ってないのですが…。

> 原点に戻ってパケットキャプチャしてみました...

私もあれから不安になり、もう一度キャプチャしてみました(笑


> つまり、何かクライアントで変換されているように見え...

私もNorton Internet securityは使用しています。
ですが、"プライベートネットワーク内は全て信頼する"に設定してあったので、TLSも通してくれたんだと思います。
私の環境はルーターからハブで全てぶら下がっています。

PostfixAdminで一般ユーザからは、パスワード変更できないようにするパッチを...

ありがとうございます。遠慮なく使用させて頂きます。
...その前にMySQLを多少でも使えるようにならないと(苦

そこで、あれから質問させて頂いた件について、自分なりに設定変更したりして検証がてら弄ってみました。
私としては結果が再インストールになっても、あえて失敗も教訓になるとの所謂"Linuxタコ"になろうと必死ですので(笑

それで、結果なのですがやはり望んだようにはなりませんでした。
SASLのユーザーを増やす...

saslpasswd2 -u example.com v1mainuser(メインドメイン)
...
saslpasswd2 -u example.net v1subuser(サブドメイン)
...

として、

/home/v1mainuser/Maildir
...
/home/v1subuser/Maildir

と作成しました。
通常通り認証もでき、送受信もできました。
...が、これだとアカウント(メールディレクトリ名)に@以下も必要なのですね...
と言うか、重複させないためにはそれが一番かと。

...ちょっと難しくなってきました(笑


No.5103 投稿時間:2005年08月28日(Sun) 16:12 投稿者名:まゆっぺ URL:
タイトル:Re: 全然お役には立ってないのですが…。

あ、と言うか何か勘違いをしているかも知れません。私...

SASL認証を通せばSMTPリレーをする...のがMain.cfの設定ですので、SASLユーザーとそのユーザーのメールアカウントが特定できるような設定にしないと偽れますよね?

さすがに本にはSMTP-AUTH+Postfixでのマルチ運用までは書いてなかったもので…(汗
うーん...リレードメインに使用するドメインを列挙すればいいのかな...(汗汗



掲示板▲頁先頭