メール転送(ルーティング)機能は指定されたメールアドレス(又はドメイン単位)でメールの配信先を変更することが出来ます。
また全てのメールを強制的に特定のサーバへ転送させることも出来ます。
SMTPゲートウェイのような使用方法や、Outbound Port 25 Blocking が行われているネットワーク内からの中継などにも利用できます。
転送先のサーバで SMTP認証が必要な場合は転送先の ID とパスワードを設定することにより SMTP認証を行わせることも可能です(SMTP認証はLOGIN/CRAM-MD5 に対応しています)
が対象となります。
メール転送機能はユーザーが設定する forward.txt にも影響を与えます。相互の関係は下記の通りになります。
識別ドメイン | 転送先 | |
1 | @example.jp | akisoftware.jp |
宛先のアドレスに @example.jp が含まれる場合、該当するメールは akisoftware.jp へ転送が行われます。該当しないメールは通常の処理によって配信(MTA)が行われます。
設定B識別ドメイン | 転送先 | |
1 | @example.jp | mail1.akisoftware.jp |
2 | * | mail2.akisoftware.jp |
転送設定は上から順番に判断されていきますので1と2の設定を逆にした場合1に * (アスタリスク)が指定される 為、全てのメールが最初に処理が行われ2の処理は実行されませんのでご注意下さい。
設定C
識別ドメイン | 転送先 | |
1 | user1@example.jp | mail1.akisoftware.jp |
2 | user2@example.jp | mail2.akisoftware.jp |
3 | @example.jp | mail3.akisoftware.jp |
4 | * | mail4.akisoftware.jp |
宛先のアドレスに user1@example.jp が含まれる場合、該当するメールは mail1.akisoftware.jp へ転送が行われます。
宛先のアドレスに user2@example.jp が含まれる場合、該当するメールは mail2.akisoftware.jp へ転送が行われます。
宛先のアドレスに example.jp が含まれる場合(user1/user2 は上記の設定で転送済みにですので、それ以外)該当するメールは mail3.akisoftware.jp へ転送が行われます。
上記に該当しないメールは4の設定により mail4.akisoftware.jp へ転送が行われます。
設定D
識別ドメイン | 転送先 | |
1 | user1@example.jp | 192.168.11.10 |
2 | @example.jp | mail1.akisoftware.jp |
3 | @example.com | MTA |
4 | * | mail2.akisoftware.jp |
宛先のアドレスに user1@example.jp が含まれる場合、192.168.11.10 に転送されます。
宛先のアドレスに @example.jp が含まれる場合(user1 は上記の設定で転送済みの為除外)該当するメールは mail1.akisoftware.jp へ転送が行われます。
宛先のアドレスに @example.com が含まれる場合、該当するメールは MTA によって通常配信されます。
上記に該当しないメールは4の設定により mail2.akisoftware.jp へ転送が行われます。
識別ドメイン | 転送先 | |
1 | @example.net | example.org |
localuser@example.jp の場合、PMailServer2 で受信した後にフォワード設定に従って example.net に配信を行おうとしますがメール転送機能で識別ドメインに example.net は example.org に転送する設定になっていますので、example.net では無く example.org へ転送を行います。
識別ドメイン名
識別するメールアドレス又はドメイン名を指定します。該当する SMTP にメールが届いた際の宛先(*1)に、識別ドメイン名に指定された文字列が含まれる場合に転送を行います。
* (アスタリスク)を指定することによりドメインに関係なくメールを転送することが出来ます。下記のローカルユーザー宛は転送処理の対象としないにチェックが入っていない場合は全てのメールが転送され、チェックが入っている場合は外部へ送信するメールのみ転送が行われます。
最後の * (アスタリスク)設定が無い場合に宛先が、1,2に該当しない場合は転送は行われず、そのまま配信が行われます。
識別IP
識別ドメイン名とセットで利用します。識別ドメイン名が一致した上で「指定したIPアドレスと送信元のIPアドレス」が更に一致した場合に指定の転送処理が行われます。
空欄が設定された場合は、送信元のIPアドレスは無視されます。
識別ドメイン | 識別IP | 転送先 | |
1 | @example.jp | 127.0.0.1 | 192.168.11.10 |
2 | @example.jp | 192.168.11.11 | |
3 | @example.com | 192.168.11.12 |
同じドメイン名で識別IPを利用する場合は、順番に注意してください。識別ドメイン名のみを指定した場合は、識別IPはチェックされません。その為に同じドメイン名で識別IPが未指定の設定以降に、識別IPが指定された設定がある場合、最初の設定で一致し以降の設定は処理されません。
ポート
メール転送時に転送先へメールを送る際に接続するポート番号を指定します。転送先のメールサーバがデフォルトポートで構築されている場合は 25 を指定します。
587 を指定し、SMTP認証を行うことにより Submission Port へ転送することも可能です。
転送先
転送先のドメイン名、又はホスト名、IPを指定します。
PMailServer2 より、予約語の「MTA」を指定することができます。
Version 2.32 より、予約語の「NONE」を指定することができます。
ドメイン名を指定した場合は、下記の「名前の解決」を「DNSを使う」に変更して下さい。ドメイン名からメールサーバを検索し見つかったサーバに転送を行います。
ホスト名又はIP アドレスを直接指定した場合は、ホスト名を指定し「DNSを使う」と設定した場合は、DNS を使ってホスト名から IP アドレスの検索を行います。
「DNSを使わない」場合は DNS を使わずにホスト名から IP アドレスを検索します。
転送先に予約語「MTA」を指定した場合は転送は行われず、通常配信と同じ扱いになります。また以降の転送条件は判定されません。
転送先に予約語「NONE」を指定した場合は転送は行われず該当するメールは破棄され送信者がローカルユーザーの場合は、制限されている旨のエラーメールが返ります。また以降の転送条件は判定されません。
指定を行わない場合(空欄)、又は * (アスタリスク)を指定した場合
ホスト名の変換は行われません。
指定を行った場合
転送先のサーバへ宛先を指定する場合に、ドメイン名の変換が行われます。変換ホスト名に example.jp をした場合、宛先が support@example.org の場合
support@example.jp と変換を行った上で送信が行われます。
プロトコル
SMTP 又は ESMTP を指定します。ESMTP を指定した場合は、「転送先認証」に「認証が必要」を使用することができます。
転送先がSMTP認証を必要としない場合は、SMTP で問題ありません。
通信
平文が選択された場合は、その転送は平文で行われます。
ただし、STARTTLS for MTA が設定されている場合は配信先のサーバーで STARTTLS が利用できる場合、その転送は暗号化されます。
TLS が選択された場合は、SMTP over TLS で配信が行われます。
その為、転送先のポートは 465 を指定する必要があります。
転送後(PMailServer2 で利用可能)
転送を行った後に、対象メールに対して、処理を終了するか続行するかを選択します。
特別な場合は除いて、処理は終了させて下さい。
通常転送を行った後は、対象メールに対して PMailServer2 は処理を終了します。
処理を続行させた場合、以下の挙動を行います。
宛先がローカルユーザーの場合
転送を行った後、ローカルユーザー宛にメールが配信されます。(デフォルト設定の「終了」の場合は配信されません。)
該当ユーザーのメールを別のサーバーに転送した上で、本サーバーにも配信するようになります。
宛先が外部の場合
転送を行った後、更に外部に通常配信を行います。
転送先が、同一になる場合(転送先の設定が、example.com で、宛先のアドレスから参照した転送先も example.com になるような状態)は重複送信されます。
通常は内部サーバーへ重複配信を行う場合で、フォワード機能で転送できないケース(IP アドレスでの転送先の指定)の場合にのみ利用します。
名前解決
転送先にホスト名を指定した場合の名前解決に DNS サーバーを利用するか否かを指定します。
転送先に IP アドレスを直接指定した場合は、参照自体は行われず直接その IP アドレスへ転送を行います。
転送先にホスト名を指定し DNS を利用する場合はサーバー設定で指定した DNS サーバーに対して問い合わせを行います。
(Pro版のアドオンで MTATRANSFER= を指定していた場合は、同設定で指定したホスト名)
DNS を利用しない場合は、LAN 内等で DNS を参照する必要が無く且つ lookup できる場合に利用します(高速に処理されますが、単一の IP アドレスのみの参照となります。)
転送アドレス(PMailServer2 で利用可能)
転送を行う際に、送信元のメールアドレスを指定したアドレスに固定します。(空メールアドレスは指定できません)
変更が行われるのはプロトコル上の送信アドレスのみでメールヘッダ内の From: や Sender: 等に関しては変更は行われません。
認証は必要なし
転送先のサーバで認証が必要ない場合に指定します。転送先のサーバで中継許可されている場合は SMTP認証が必要ない場合があります。
認証が必要
転送先のサーバで認証が必要である場合に指定します。プロトコルに「ESMTP」が指定されている必要があります。「認証が必要」「ESMTP」が指定されている場合は、相手側サーバで対応している SMTP認証メカニズムを自動判別し安全性の高い順番でSMTP認証を行います。
優先順位は CRAM-MD5 < LOGIN < PLAIN の順番となります。未対応の SMTP認証や、転送先サーバで SMTP認証が有効になっていない場合は転送は行われません。
強制認証(CRAM-MD5)
プロトコル問わず、CRAM-MD5 で SMTP認証を試みます。転送先サーバで必要な SMTP認証がわかっている場合に指定して下さい。
強制認証(LOGIN)
プロトコル問わず、LOGIN で SMTP認証を試みます。転送先サーバで必要な SMTP認証がわかっている場合に指定して下さい。
以降の欄外の設定については転送設定全体に影響を及ぼします。
また、それぞれの設定が他の処理に影響を及ぼす場合がありますので、内容をご確認の上、設定を行ってください。
ローカルユーザー宛は処理対象としない
チェックが入っていない場合は、全ての受信メールに対して転送処理が行われます。
チェックが入っている場合は、RCPT TO: で指定されるアドレスがローカルユーザーの場合は処理対象としません。(自サーバ宛のメールはそのまま受信し、自サーバを利用する MUA が外部へ送信する場合は、チェックを入れる必要があります。チェックを入れない場合、無限ループを引き起こす可能性があります)
ローカルユーザーのチェックを行う
チェックが入っている場合、メール転送時に送信者がローカルユーザーかどうかをチェックを行い、ローカルユーザーであれば転送を行いそうでない場合は転送を行いません。
LAN内の完全な中継サーバの場合は必要ありませんが、外部からアクセスが可能な場合は必ずチェックを入れて下さい。(不正中継の踏み台にされる場合があります)
宛先のドメインに識別ドメインが含まれる場合中継扱いとする
中継サーバー専用として構築する場合に利用します。
ローカルユーザーでは無い不特定からメールを受信しそのメールを別サーバへ転送する際に、サーバにアカウントがありませんのでそのままでは不正中継として処理が行われます。ただし不特定から受信する為、全てのサーバからの設定を中継許可することはできませんので、メールの宛先に識別ドメインが含まれる場合に、そのメールを動的に中継扱いとする設定です。
上記の「ローカルユーザーのチェックを行う」と併用してチェックを入れると場合によってはメールが自サーバ内で無限ループに陥ります。
詳しくは本ページ最後の設定3を参照してください。
SMTP Gateway 時に中継先を確認
この設定が有効になっている場合、転送先が有る状態で、転送設定に該当するメールのみを中継し、該当しない場合は中継エラーにします。
中継設定を行っていない状態で、この設定のみを有効にしますと、全てのメール(ローカル宛であっても)が拒否されますので注意して下さい。
識別ドメインをメールアドレスまで拡張する
この設定が有効になっている場合、識別ドメインをメールアドレスとして識別するように拡張をします。
識別ドメインにはワイルドカードは利用できませんので
と設定を行います。
メールアドレスを使った転送と、フォワードの違いは、転送はサーバーで本文を受信した直後に転送処理が行われます。
フォワードは一旦各メールボックスまでメールが配信された後に、フォワード処理が行われます。
後者は、各メールボックスで設定が行われている内容(SPF/SenderID のチェックや各アカウントに設定されているフィルタ等)が実施された後の処理となります。
またフォワードは Webmail を利用している場合、ユーザーが任意に設定が可能ですが、転送はサーバー管理者のみが設定できる点が違います。
設定保存時に自動更新を行う
チェックを有効にした場合、設定ファイルを保存した際に、転送設定をサーバーが自動更新を行います。
サービスの再起動が必要無くなりますが、保存した内容はそのまま反映されますのでご注意下さい。
転送先での認証用設定
転送設定で SMTP認証が必要な場合に自サーバで管理している以外のアカウント(ID)とパスワードの管理が必要になります。
共通アカウントは全ての転送に利用される SMTP認証用アカウントです。ローカルユーザーが共通アカウントを設定している場合は
user1@example.jp と user2example.jp どちらのアカウントから送信が行われても共通アカウントを利用して SMTP認証を行います。
共通アカウントを利用したくない場合は、アカウントの箇所にローカルユーザーを個別に指定します。
アカウントに user1@example.jp が指定され、認証用IDとパスワードが指定されている場合。
user1@example.jp が送信する場合は、user1@example.jp 用の設定を使い SMTP認証を行います。
user2@example.jp が送信する場合は、SMTP認証は行われません。
user1 / user2 共に、個別の認証用IDとパスワードが指定されている場合。
user1@example.jp が送信する場合は、user1@example.jp 用の設定を使い SMTP認証を行います。
user2@example.jp が送信する場合は、user2@example.jp 用の設定を使い SMTP認証を行います。
アカウントに user1@example.jp が設定され、共通アカウントも設定されている場合。
user1@example.jp が送信する場合は、user1@example.jp 用の設定を使い SMTP認証を行います。
user2@example.jp が送信する場合は、共通アカウントのの設定を使い SMTP認証を行います。
共通アカウントのみ設定されている場合。
user1 / user2 共に共通アカウントのの設定を使い SMTP認証を行います。
設定例1(ドメイン名で受信メールを識別して転送を行う場合)
各端末からのメール送信は全てサーバAで行います。
メールの流れ
●外部から宛先が mail.example.jp のメールが届いた場合は、そのままサーバAに蓄積されます。
●外部から宛先が mail2.example.jp のメールが届いた場合は、まずサーバAが受信します。サーバAはドメイン名を確認しルーティングルールに従って サーバB(192.168.1.100/11000)へメールを転送します。この際に接続には指定された IP アドレス(192.168.1.100)を利用し、SMTP でメールを送る場合、192.168.1.100 を指定された変換ホスト名(example.jp)に変換を行って配信を行います。
●外部から宛先が mail3.example.jp のメールが届いた場合は、まずサーバAが受信します。サーバAはドメイン名を確認しルーティングルールに従ってサーバC(192.168.1.200/11001)へメールを転送します。この際に接続には指定された IP アドレス(192.168.1.200)を利用し、SMTP でメールを送る場合、192.168.1.200 を指定された変換ホスト名(example.jp)に変換を行って配信を行います。
●このように構築することにより外部に直接接続されているサーバAがアタック等でクラッシュした場合や HDD 故障等の問題が発生してもメール自身は
サーバB、サーバCに転送されている為受信し終わっていないメールがあったとしても実害はありません。(単独で構築している場合、サーバAが
クラッシュした時点で中にあるメールは全て失う恐れがあります)
またサーバにメールを残す設定にしてある場合でも、サーバAは受信と転送に専念し、サーバB、サーバCはメールの読み取りのみに専念されることにより
サーバへの負担が分散される等のメリットがあります。
設定例2(送信するメールを特定のサーバへ転送する場合)
各機器の設定は下記の通り(ホスト名、IPアドレス、変換ホスト名、ポート等は例です、設置する環境によって合わせて下さい)
LANサーバは転送のみを行いますのでアカウントの設定は必要ありませんが、その変わりに PMailServer2 で端末からの送信を許可する為に中継を許可する設定を行います。
メールの流れ
●端末からLANサーバにメールを送信します。
●転送設定の識別ドメインが全て(*)が指定されていますので、PMailServer2 は指定されたドメイン名へ転送を行います。(確実に送信先がわかっている場合は IP アドレスを指定することが可能です、イントラ内>イントラ内など)
●ISP サーバが LAN サーバよりメールを受け取った場合、ISP サーバがメールの配信を行います。
ISPサーバが POP Before SMTP や不正中継対策を行っている場合メールを受け取らない場合があります。この場合は ISP 側の設定に影響され、PMailServer2 側で配信することは出来ませんので端末から ISP サーバへ直接送信を行って下さい。
●このように構築することにより外部のISPを経由してメールの送信が可能です。説明上 ISP としていますが、フィルタサーバ(ウィルスチェック等)を経由して送信を 行いたい場合などの利用することが出来ます。また送信メールのバックアップ機能を併用して使うことにより外部のISPを送信サーバとして使っている場合でも送信メール の保存を行うことが出来ます。
●ローカル宛のメールを転送の処理対象としないチェックを入れると、Outbound Port 25 Blocking が実施されているネットワーク内で、上記の方法でメールの送信を おこなうことができる場合があります。(対応している ISP が建てたドメインからのアドレスに対して中継を許可している場合のみです)
Outbound Port 25 Blocking の送信に対しては、実施しているネットワーク管理者にお問い合わせ下さい。
設定例3(不特定のサーバから受信したメールを特定のサーバへ転送する場合)
各機器の設定は下記の通り(ホスト名、IPアドレス、変換ホスト名、ポート等は例です、設置する環境によって合わせて下さい)
Gatewayサーバは転送のみを行います。設定2のように不特定のサーバからの中継を許可することはできませんので、その代わりに「宛先に識別ドメインが含まれる場合は中継扱いとする」にチェックを入れます。
メールの流れ
●ISPから Gateway サーバにメールの配信が行われます。
●宛先に転送先のドメイン(識別ドメイン)が含まれる場合、中継扱いとされます(宛先に識別ドメインが含まれる場合は中継扱いとするにチェックが入っている為)。含まれない場合は通常の配信として処理されます。
●宛先のドメインが mail1.akisoftware.jp の場合は、192.168.1.100 に配信が行われます。
同様に mail2 の場合は 192.168.1.101、mail3 の場合は 192.168.1.102 に分けて配信が行われます。
●このように構築することにより PMailServer2 を Gateway サーバとして稼働させることができます。
DNS の設定と関連しますが、DNS に
akisoftware.jp | A | 192.168.1.2 | |
MX | 10 | akisoftware.jp | |
mail1 | MX | 100 | akisoftware.jp |
mail2 | MX | 100 | akisoftware.jp |
mail3 | MX | 100 | akisoftware.jp |
●「宛先のドメインが識別ドメインに含まれる場合中継扱いとする」設定と「ローカルユーザーのチェックをする」に同時にチェックを入れる場合は設定に注意してください。
宛先が hogehoge@mail1.akisoftware の場合、まず識別ドメインに含まれる為に「中継処理」が行われます(この判断は RCPT TO の時点で行われます)。本文を受信し終えた段間で、MTA に処理が移る前に「転送設定によって転送の可否」が判断されますが、「ローカルユーザーのチェック」が入っている場合に、Gateway サーバにはローカルユーザーとして存在しない為「通常配信」として処理が行われます。
通常配信として判断された場合、転送処理が行われませんので、DNS に mail1.akisoftware の問い合わせを行い、自サーバ(上記の例の場合 192.168.11.2 )がヒットし、自サーバに配信が行われます。自サーバで受信したメールは最初に戻りますので「メールが無限ループに陥ります」場合によってはサーバが自力で停止することができなくなる事態になる場合がありますので注意してください。
DNS の設定によっても左右されますが、両方へ同時にチェックを入れる場合は、DNS の引き方に注意してください。
設定時の注意
転送はメール本文の受信後に行われます。自サーバ自身に POP Before SMTP や SMTP 認証が必要な設定などがされている場合は本文受信前に確認が行われますので注意をして下さい。