Postfixのエイリアス機能を利用すれば、別ユーザ宛のメールを指定されたメールアドレスへ転送できます。例えば、taroというユーザに sales(実在するユーザでなくてもOK)という別名を対応付けることによってsales@sample.com 宛のメールがtaro@sample.comに届く。といった動きを実現できます。
設定は必要な手順は
の三点です。
[root@sample]# cat /etc/postfix/aliases
infomation: hogehoge
sales: information
エイリアスファイルにはどの名前のユーザ宛にメールを受け取ったら、どのユーザに対してメールを転送するかを記述します。以下の出力例ではinformation@sample.com、hogehoge@sample.com宛に転送され、sales@sample.com宛のメールはinformation,すなわちhogehogeユーザに届くよう設定しています。
書式[エイリアス名: 転送先ユーザ] |
編集が完了したらnewaliasesコマンド、またはpostalias /etc/postfix/aliasesを利用して編集したエイリアス内容をデータベース(aliases.db)に反映させます。Postfixが参照するファイルはdbファイルです。必ずデータベース更新作業を行いましょう。(しばらくすれば反映はされるという情報もありますが…、即時反映が無難でしょう)
[root@sample ~]# postalias /etc/postfix/aliases
[root@sample ~]# ls -l /etc/postfix/aliases*
-rw-r--r-- 1 root root 60 Jul 21 16:46 /etc/postfix/aliases
-rw-r--r-- 1 root root 12288 Jul 21 16:47 /etc/postfix/aliases.db
転送設定の関連パラメータはmain.cfファイルのALIAS DATABASEセクションにあります。以下はインストール後のデフォルト状態であり以下パラメータによってエイリアスが定義されています。
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
これらのパラメータの意味はPostfixが利用するエイリアスデータベースがhashというルックアップテーブル形式で、/etc/aliasesにあることを設定しています。注意点はパスを指定する際に拡張子.dbはつけないことです。エイリアスファイルを指定しているのではなく、エイリアスデータベースファイルを指定していることに注意しましょう。
[root@sample ~]# ls -l /etc/postfix/aliases*
-rw-r--r-- 1 root root 60 Jul 21 16:46 /etc/postfix/aliases
-rw-r--r-- 1 root root 12288 Jul 21 16:47 /etc/postfix/aliases.db
hash形式は検索キーとアクションを一行づつ記述したファイルで、Berkeley DBデータベースをサポートするシステムで利用できます。Postfixはhash以外にも、様々なルックアップテーブルに対応しています。postconf –mコマンドで対応しているルックアップテーブル形式を確認できます。
[root@rproxy ~]# postconf -m
btree
cidr
environ
hash
ldap
mysql
nis
pcre
proxy
regexp
static
unix
編集したエイリアスのルックアップテーブルファイルのパスがパラメータにあるか確認しましょう。なければ、変更、追記します。パラメータ変更後はmain.cfの変更を読み込ませる為にreloadします。
■変更前
alias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliases
■変更後
alias_maps = hash:/etc/aliases, hash:/etc/postfix/aliasesalias_database = hash:/etc/aliases, hash:/etc/postfix/aliases
[root@rproxy ~]# /etc/init.d/postfix reload
Reloading postfix: [ OK ]
設定は以上です。
Copyright © 2021 たぐたぐ.com. All rights reserved.