旧 cosmos ほかのメールアカウントをどうやって blue に引き継ぐか

kyoma@cosmos.sci.hokudai.ac.jp

なにが必要か

  1. 受信者アドレスのドメイン部が,cosmos.sci.hokudai.ac.jpepms.sci.hokudai.ac.jp も?)のエンベロープを持つメールが blue に届けられること.
  2. blue がそうしたメールを,自ホストあてのメールとして扱うこと.受け取り,ローカル配送をすること.
  3. ローカル部が cosmosblue で異なる受信者アドレスをもつ利用者がいた場合,このメールを,適切にローカル配送すること.

そのためには

  1. cosmos.sci.hokudai.ac.jp のありかを指示しているのは,hokudai.ac.jp の DNS.大計に頼む.

  2. /var/qmail/control/rcpthosts に書く.
    cosmos.sci.hokudai.ac.jp
    を一行に.

    /var/qmail/control/locals には書かない.このあとの /var/qmail/control/virtualdomains への書き込みが無効になる.

  3. /var/qmail/control/virtualdomains で制御.
    cosmos.sci.hokudai.ac.jp:
    これにより,ローカル部が,cosmosblue で同じユーザ名を持つ利用者へのメールは適切に配送される.

    しかし,そうでない利用者は.例えば,kyoma@cosmos.sci.hokudai.ac.jpblue 上のユーザ kyoma2 に引き継ぐには,

    kyoma@cosmos.sci.hokudai.ac.jp:kyoma2-cosmos
    と書けば,kyoma2-cosmos-kyoma@cosmos.sci.hokudai.ac.jp というアドレスあてのメールとして扱われ,~kyoma2/.qmail-cosmos-kyoma に従って配送される.

    設定変更後は,qmail-send の再起動が必要.

/var/qmail/control/ の下のファイルの説明, man より引用
locals -- [me] -- ローカル処理すべきドメイン名一覧
一行にひとつずつ。 meがなければ、qmail-sendは起動されない。 user@domainというアドレスはdomainlocals にあるとローカルだと判定される。

rcpthosts -- [ ] -- 受信ドメイン一覧
(SMTPの)RCPTに現れてよいドメイン名。 rcpthostsに載っていないドメイン宛のメイルは受け取らない。

中継の設定 :環境変数RELAYCLIENTが設定されているときには、rcpthostsを無視して、 qmail-smtpdはすべてのメイルを受け付ける。 (FAQ 5.4.を参照) このとき、RELAYCLIENTの値を各受信アドレスの後につけ加える。

rcpthostsはワイルドカードを許す。 また、"@"を含まない宛先アドレスは常に通過を許される。

        heaven.af.mil
        .heaven.af.mil

virtualdomains -- [ ] -- 仮想ユーザとドメイン名一覧
一行にひとつずつ。 仮想ユーザはuser@domain:prependという形 である。余分の空白は含めないこと。 user@domainあてのメイルは prepend-user@domainあてとして扱われ、 ローカルと判定される。

各仮想ドメインはdomain:prependという形であること。 余分の空白は含めないこと。domainのすべての受信アドレスに適用される。

[例]  nowhere.mil:joe-foo
virtualdomainsにあったとして、 info@nowhere.milあてのメイルを処理する場合、 受信者アドレスをjoe-foo-info@nowhere.milとして、 メイルをローカルに配信します。

virtualdomainsはワイルドカードを許します。

               .fax:uucp-fax
               :alias-catchall
               .nowhere.mil:joe-foo-host
virtualdomains の例外: prepend部が空の場合はdomainは仮想ドメインでないことを示します。

qmail-sendvirtualdomainsをローカルの後に処理します。 つまり、もしドメインがlocalsに含まれていれば、 virtualdomainsの処理は起きません。