利用postfix達成多重網域+虛擬帳號的設定
準備:
主要的郵件主機網址 : msa.shian.tw
新增的郵件主機虛擬網域 : mail.shian.tw
註:每個domainname必須要設 MX
設定:
1.修改 postfix main.cf
# vi /etc/postfix/main.cf
修改 default_privs = nobody
新增 virtual_alias_maps
virtual_alias_maps = hash:/etc/postfix/virtual
2.定義虛擬使用者的對應表 /etc/postfix/virtual
# vi /etc/postfix/virtual
新增
mail.shian.tw anything
taco@mail.shian.tw taco.mail.shian.tw
註:
#網域 名稱
#taco<-新增的帳號
#@mail.shian.tw <-新增的mail domainname
#taco.mail.shian.tw <- 對應 taco@mail.shian.tw
重建 db 檔
postmap hash:/etc/postfix/virtual
變更權限(openwebmail新增帳號)
# chmod 666 virtual
# chmod 666 virtual.db
3.新增對應的使用者名稱,及在主機上的位置
# vi /etc/postfix/aliases
本機網域 + 虛擬帳號
taco: /var/spool/virtual/mail.shian.tw/taco
虛擬網域 + 虛擬帳號
taco.mail.shian.tw: /var/spool/virtual/mail.shian.tw/taco
註:
# 主要郵件主機上的虛擬使用者,可以省略後面 domain 的部份
# 虛擬網域上的虛擬使用者,則要以全名來定義,就是上面才設定的名稱
重建 db 檔
postalias hash:/etc/postfix/aliases
變更權限
# chmod 666 aliases
# chmod 666 aliases.db
4.建立相對應的目錄
建立存放虛擬帳號Mail的地方
# mkdir -p /var/spool/virtual/mail.shian.tw
設定屬性
# chown nobody.nobody /var/spool/virtual/mail.shian.tw
# chmod og+wt /var/spool/virtual/mail.shian.tw
建立虛擬帳號密碼的地方
# mkdir -p /etc/virtual/mail.shian.tw
# cd /etc/virtual/
# chown root.nobody mail.shian.tw
5.設定密碼
# /usr/local/apache/bin/htpasswd -b /etc/virtual/mail.shian.tw/passwd 帳號 密碼
註: 新增密碼必須使用 apache 的 htpasswd 這一隻檔案
6. 重新啟動 postfix
# /etc/rc.d/init.d/postfix restart
7. openwebmal 設定虛擬帳號
1.新增對應網域的設定檔
# vi /usr/local/apache/cgi-bin/openwebmail/etc/sites.conf/mail.shian.tw
新增下列這段
auth_module auth_vdomain.pl
auth_withdomain yes
mailspooldir /var/spool/virtual/mail.shian.tw
use_syshomedir no
use_homedirspools no
enable_autoreply no
enable_setforward no
enable_vdomain yes
vdomain_admlist taco
vdomain_maxuser 100
vdomain_vmpop3_pwdpath /etc/virtual
vdomain_vmpop3_pwdname passwd
vdomain_vmpop3_mailpath /var/spool/virtual
vdomain_postfix_aliases /etc/postfix/aliases
vdomain_postfix_virtual /etc/postfix/virtual
vdomain_postfix_postalias /usr/sbin/postalias
vdomain_postfix_postmap /usr/sbin/postmap
註:
vdomain_admlist <- 設定管理者帳號 可用,分隔
mailspooldir <- 存放虛擬帳號Mail地方
2.重啟apache
# /usr/local/apache/bin/apachectl restart
Pingback: Debain install Mail