Top過去ログ目次掲示板

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

No.6340 postfix/バーチャルドメインでの デフォルトドメイン設定


No.6340 投稿時間:2006年09月14日(Thu) 10:15 投稿者名:tanis URL:
タイトル:postfix/バーチャルドメインでの デフォルトドメイン設定

おやじ様のページを参考(ほぼそのまま)に以下の環境でバーチャルメールサーバを構築しようとしています。
(大感謝です。!)

CentOS 4.3
postfix 2.1.5-4.2
Dovecot 0.99.11-2.EL4.1
Squirrelmail
PostfixAdmin

今後の拡張を考慮しておくのと、PostfixAdminで管理したいためにバーチャルドメイン対応させて運用していますが、
しばらくは1ドメインでしか運用しない予定です。

 それなので、pop3/smtp/imapなどの認証時、できればuser名はアカウント名だけ 
( aaa@example.com でなく、aaa で)
ログインさせたいと考えております。
(当然パスワードは設定します。)

以前qmailで構築したときは defaultdomain 設定項目があり、そこに設定したドメインにログインするときは
 ドメイン名を省略することができました。
 postfixでそのような設定をご存知ありませんか?


No.6344 投稿時間:2006年09月14日(Thu) 21:27 投稿者名:おやじ URL:
タイトル:素直にやるしかないのでは?

> CentOS 4.3
> postfix 2.1.5-4.2
> Dovecot 0.99.11-2.EL4.1
> Squirrelmail
> PostfixAdmin
>
> 今後の拡張を考慮しておくのと、PostfixAdminで管理したいためにバーチャルドメイン対応させて運用していますが、
> しばらくは1ドメインでしか運用しない予定です。
>
>  それなので、pop3/smtp/imapなどの認証時、できればuser名はアカウント名だけ 
> ( aaa@example.com でなく、aaa で)
> ログインさせたいと考えております。
> (当然パスワードは設定します。)
>
> 以前qmailで構築したときは defaultdomain 設定項目があり、そこに設定したドメインにログインするときは
>  ドメイン名を省略することができました。
>  postfixでそのような設定をご存知ありませんか?

Dovecotもそうですが、そもそもMySQLで認証するのにドメイン込みで見るので駄目です。
因みに管理者側の発想かもしれませんが、バーチャルドメインで運用するなら、後で混乱するので最初からそういうものだと周知しておくほうが間違いないと思いますが?


No.6347 投稿時間:2006年09月14日(Thu) 22:03 投稿者名:tanis URL:
タイトル:Re: 素直にやるしかないのでは?


> Dovecotもそうですが、そもそもMySQLで認証するのにドメイン込みで見るので駄目です。
> 因みに管理者側の発想かもしれませんが、バーチャルドメインで運用するなら、後で混乱するので最初からそういうものだと周知しておくほうが間違いないと思いますが?


おやじ様
ご回答ありがとうございます。

・今、qmailで アカウント名だけで運用しており、切り替えのタイミングで トラブル(ユーザの設定変更ミス)をなるべく起こしたくない。(何せ、アカウントが700以上もあるんで・・)


・バーチャルで複数ドメインの管理をするようになったとしても
 99%のユーザは1ドメインに集中すると思われる。

このようなことがわかっているので、できるだけ省略させてあげたいと思っています。


$mydestination , $mydomain を使ってどうにかしてユーザ名が入力されたときに最後が".co.jp" でなかったら
$mydomainを後ろに付加して 認証に渡す、みたいなスクリプトをどこかで実行させれば 結構簡単にいけそうなんですけどね。

ちょっと英語の文書を調べてみようとおもいます。

ありがとうございました。
 


No.6348 投稿時間:2006年09月14日(Thu) 22:32 投稿者名:tanis URL:
タイトル:Re^2: 素直にやるしかないのでは?

設定ファイル郡を見直したところ、dovecot-mysql.conf にユーザ認証の設定を発見しました。

user_query = SELECT concat('/usr/local/virtual/', maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = '%u' AND active = '1'



user_query = SELECT concat('/usr/local/virtual/', maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = concat('%u','@example.com') AND active = '1'

みたいに変更すれば簡単にいけそうです。 (password_queryも同様に)
 (この例では省略しないとNGになってしまいますが(^^;)

case文を用いて ドメインが省略されている・されていないを判別してあげればうまく
いけるような気がします。

自分はMySQLは使ったことないのですが、ちょっと調べれば簡単にいけそうです。

できたら報告させていただきます。


No.6349 投稿時間:2006年09月14日(Thu) 23:17 投稿者名:おやじ URL:
タイトル:courier-imapならDEFAULT_DOMAIN が使えます。

> 設定ファイル郡を見直したところ、dovecot-mysql.conf にユーザ認証の設定を発見しました。
>
> user_query = SELECT concat('/usr/local/virtual/', maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = '%u' AND active = '1'
>
> を
>
> user_query = SELECT concat('/usr/local/virtual/', maildir) as home, 10000 as uid, 10000 as gid FROM mailbox WHERE username = concat('%u','@example.com') AND active = '1'
>
> みたいに変更すれば簡単にいけそうです。 (password_queryも同様に)
>  (この例では省略しないとNGになってしまいますが(^^;)
>
> case文を用いて ドメインが省略されている・されていないを判別してあげればうまく
> いけるような気がします。
>
> 自分はMySQLは使ったことないのですが、ちょっと調べれば簡単にいけそうです。
>
> できたら報告させていただきます。

Courier-IMAPは、主たるドメインでメーラのアカウント設定で「@ドメイン」を省略したい場合に、そのドメインを「DEFAULT_DOMAIN」で指定しておけば補完してくれるので、こちらを利用すると良いです。
こうすると、Postfix側のsaslauthdでCourier-IMAPのauthdaemonを使用すればSMTP-AUTHもドメイン省略できますので。



掲示板▲頁先頭