aliasで別ユーザ宛のメールを受信する

aliasで別ユーザ宛のメールを受信する

Postfixのエイリアス機能を利用すれば、別ユーザ宛のメールを指定されたメールアドレスへ転送できます。例えば、taroというユーザに sales(実在するユーザでなくてもOK)という別名を対応付けることによってsales@sample.com 宛のメールがtaro@sample.comに届く。といった動きを実現できます。

設定は必要な手順は

  • エイリアスファイル(データベース)のパス、記述方式を設定ファイルで定義
  • エイリアスファイルの編集
  • エイリアスファイルを元にデータベースファイルを更新する作業

の三点です。

[root@sample]# cat /etc/postfix/aliases
infomation:               hogehoge
sales:                    information

 

1.エイリアスファイルの編集

エイリアスファイルにはどの名前のユーザ宛にメールを受け取ったら、どのユーザに対してメールを転送するかを記述します。以下の出力例ではinformation@sample.com、hogehoge@sample.com宛に転送され、sales@sample.com宛のメールはinformation,すなわちhogehogeユーザに届くよう設定しています。

書式[エイリアス名:  転送先ユーザ]

 2.エイリアスファイルを元にデータベースファイルを更新する作業

編集が完了したら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

 

3.エイリアス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.