Postfix로 두개의 도메인( 예, a.com & b.com)을 이용하여 메일 서비스를 사용할 경우

각각의 도메인으로 도착하는 메일을 한의 메일 계정으로 확인하고자 할경우 Virtual_alias_domains 와 Virtual_alias_maps 설정으로 이용할 수 있다.


설정하는 방법은 postfix의 설정파일(main.cf & virtual)을 수정하는 방법과 DB를 이용하여 서비스를 구성하는 방법이 있다.




[방법 1] - 설정파일 편집하여 사용하기


● /etc/postfix/main.cf 수정


virtual_mailbox_domains = a.com 
virtual_alias_maps = hash:/etc/postfix/virtual


● /etc/postfix/virtual 수정 


# I want @a.com to have two incoming aliases
@a.com   @b.com


이렇게 설정하면 a.com 으로 오는 모든 메일은  b.com 도메인의  동일한 계정 전달된다.
이 방법은 설정이 간단하여 바로 이용할 수 있으나, 매번 설정 후 엔진을 재실행해야 한다.

포워딩 도메인이 여러개일 경우 virtual_mailbox_domains = a.com 도메인1 도메인2 

이렇게 증가시키면 된다.  /etc/postfix/virtual 파일에 @로 라인을 증가시킨다.



[방법 2] - DB와 연계하여 사용하기


● /etc/postfix/main.cf 수정


virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql/virtual_mailbox_domains.cf 
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql/virtual_alias_maps.cf

● /etc/postfix/mysql/virtual_mailbox_domains.cf 


hosts       = 127.0.0.1:3306
user        = DB계정
password    = DB패스워드
dbname      = DB이름

query       = SELECT domain FROM domain WHERE domain='%s' AND backupmx=0 AND active=1 UNION SELECT alias_domain.alias_doma
in FROM alias_domain,domain WHERE alias_domain.alias_domain='%s' AND alias_domain.active=1 AND alias_domain.target_domain=
domain.domain AND domain.active=1 AND domain.backupmx=0


● /etc/postfix/mysql/virtual_alias_maps.cf 


hosts       = 127.0.0.1:3306
user        = DB계정
password    = DB패스워드
dbname      = DB이름

query       = SELECT forwardings.forwarding FROM forwardings,domain WHERE forwardings.address='%s' AND forwardings.domain=
domain.domain AND forwardings.active=1 AND domain.backupmx=0 AND domain.active=1


● DB(vmail) - TABLE 
[domain]
domain/description/disclaimer/aliases/mailboxes/maillists/maxquota/quota/transport/backupmx/settings/created/modified/expired/active

a.com/0/0/0/0/0/dovecot/0/default_user_quota:1024;/2018-04-30 11:19:10/1970-01-01 01:01:01/9999-12-31/00:00:00/1
b.com/0/0/0/0/0/dovecot/0/                        /1970-01-01 01:01:01/1970-01-01 01:01:01/9999-12-31/00:00:00/1


[alias_domain]
alias_domain/target_domain/created/modified/active

a.com/b.com/1970-01-01 01:01:01/1970-01-01 01:01:01/1


[forwardings]
address/forwarding/domain/dest_domain/is_maillist/is_list/is_forwarding/is_alias/active

@a.com/@b.com/a.com/b.com/0/0/0/0/1

+ Recent posts