以上設定正确,請登入測試發送郵件是否正常;
2. 增加郵件使用者和郵箱容量大小配額設定
a.首先登入mysql;
b.依次執行以下指令:
- ----------------------------------------------
- mysql> use vmail;
- Database changed
- mysql> INSERT INTO mailbox (username, password, name, maildir, quota, domain, active)
- -> VALUES ('[email protected]', '$1$W.UWoG.0$Bnq8mcbsi1UhFVpiJ2jvY0', 'testuser', 'hiamdin.com/testuser/', '2048', 'hiadmin.com', '1');
- Query OK, 1 row affected (0.00 sec)
- 注:
- #在mailbox生成使用者帳号、密碼、以及郵箱容量quota 2048為2GB
- #其中password字段值,可以使用 openssl passwd -1 testuser生成;
- mysql> INSERT INTO alias (address, goto, domain, active)
- -> VALUES ('[email protected]', '[email protected]', 'hiadmin.com', '1');
- #alias 中生成别名;
c.也可以用iRedmail的tools 腳本;
- $cd /path/to/iRedMail-0.4.0/tools #該目錄下有個create_mail_user_MySQL.sh的腳本,可以為你生成增加使用者的sql語句;
- #執行腳本前實作生成userlist.txt
- $echo testuser >userlist.txt #每行一個使用者名即可
- $sh create_mail_user_MySQL.sh userlist.txt #生成output.sql
- #登入到mysql,在vmail庫中執行
- mysql> source /path/to/output.sql
d.設定自己域名的mx記錄,再登入RoundCube測試能否收發郵件!
a:安裝之前請先行設定mysql的root帳号和密碼;空密碼不被接受;
b:其中資料庫隻需選擇mysql即可;
c:webprogrem選擇RoundCube即可,其他預設;
d:請記住設定的mail admin的帳号和密碼。
三 配置過程
因為iRedMail的高度整合,使得配置過程異常的簡單。甚至可以不需要對postfix進行多餘設定;
注意修改以下基本配置:iRedmail安裝過程中已經增加的這部分設定,請在配置檔案的最末尾處修改;
1. myorigin
myorigin參數指明發件人所在的域名。如果你的使用者的郵件位址為[email protected],則該參數指定@後面的域名。預設地,postfix使用本地主機名作為myorigin,但是建議你最好使用你的域名,因為這樣更具有可讀性。比如:安裝postfix的主機為 mail.domain.com則我們可以這樣指定myorigin:
myorigin = domain.com
當然我們也可以引用其他參數,如:
myorigin = $mydomain
2. mydestination
mydestination參數指定postfix接收郵件時收件人的域名,換句話說,也就
是你的postfix系統要接收什麼樣的郵件。比如:你的使用者的郵件位址為[email protected], 也就是你的域為domain.com, 則你就需要接收所有收件人為[email protected]的郵件。與myorigin一樣,預設地,postfix使用本地主機名作為 mydestination。如:
mydestination = $mydomain
mydestination = domain.com
3. notify_classes
在postfix系統中,必須指定一個postfix系統管理者的别名指向一個使用者,
隻有這樣,在使用者遇到問題時才有報告的對象,postfix也才能将系統的問題報告給管理者。notify_classes參數就是用來指定向postfix管理者報告錯誤時的資訊級别。共有以下幾種級别:
bounce:将不可以投遞的郵件的拷貝發送給postfix管理者。出于個人隐私的緣故,該郵件的拷貝不包含信頭。
2bounce:将兩次不可投遞的郵件拷貝發送給postfix管理者。
delay:将郵件的投遞延遲資訊發送給管理者,僅僅包含信頭。
policy:将由于UCE規則限制而被拒絕的使用者請求發送給postfix管理者,包含整個SMTP會話的内容。
protocol:将協定的錯誤資訊或使用者企圖執行不支援的指令的記錄發送給postfix管理者。同樣包含整個SMTP會話的内容。
resource:将由于資源錯誤而不可投遞的錯誤資訊發送給postfix管理者,比如:隊列檔案寫錯誤等等。
software:将由于軟體錯誤而導緻不可投遞的錯誤資訊發送給postfix管理者。
預設值為:
notify_classes = resource, software
4.myhostname
myhostname 參數指定運作postfix郵件系統的主機的主機名。預設地,該值被設定為本地機器名。你也可以指定該值,需要注意的是,要指定完整的主機名。如:
myhostname = mail.domain.com
5.mydomain
mydomain參數指定你的域名,預設地,postfix将myhostname的第一部分删除而作為mydomain的值。你也可以自己指定該值,如:
mydomain = domain.com
6.mynetworks
mynetworks 參數指定你所在的網絡的網絡位址,postfix系統根據其值來差別使用者是遠端的還是本地的,如果是本地網絡使用者則允許其通路。你可以用标準的A、B、C類網絡位址,也可以用CIDR(無類域間路由)位址來表示,如:
192.168.1.0/24
192.168.1.0/26
7.inet_interfaces
inet_interfaces 參數指定postfix系統監聽的網絡接口。預設地,postfix監聽
所有的網絡接口。如果你的postfix運作在一個虛拟的ip位址上,則必須指定其監聽的位址。如:
inet_interfaces = all
inet_interface = 192.168.1.1
關于postfix的配置詳細介紹可參看戳這裡
需要注意的是dovecat配置在main.cf中的和master.cf的端口一緻;否則會導緻郵件發送失敗;
-
----------------------------------------------
-
#main.cf
-
content_filter = smtp-amavis:[127.0.0.1]:10024
-
#master.cf
-
127.0.0.1:10024 inet n - - - - smtpd
-
-o content_filter=
-
-o local_recipient_maps=
-
-o relay_recipient_maps=
-
-o smtpd_restriction_classes=
-
-o smtpd_delay_reject=no
-
-o smtpd_client_restrictions=permit_mynetworks,reject
-
-o smtpd_helo_restrictions=
-
-o smtpd_sender_restrictions=
-
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-
-o mynetworks_style=host
-
-o mynetworks=127.0.0.0/8
-
-o strict_rfc821_envelopes=yes
-
-o smtpd_error_sleep_time=0
-
-o smtpd_soft_error_limit=1001
-
-o smtpd_hard_error_limit=1000
-
-o smtpd_client_connection_count_limit=0
-
-o smtpd_client_connection_rate_limit=0
-
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
以上設定完成後,确認啟動postfix、policyd、dovecot、httpd、mysqld;
二 安裝過程
因許多軟體涉及到yum安裝,這裡我給出國内一個非常快的Centos鏡像,請戳這裡下載下傳
1. 資料庫和郵件系統安裝
mysql 安裝和postfix 安裝 全部采取yum安裝
- $ yum install -y mysql mysql-server mysql-devel
- $ yum install -y postfix
2.php安裝
- $ yum install -y php php-cli php-ldap php-pdo php-gd php-eaccelerator php-xml php-imap php-mcrypt php-pecl php-common php-mysql php-pear php-mbstring
3.iredmail 安裝
下載下傳解壓 iRedMail-0.4.0.tar.bz2
安裝指令:
- $ cd /path/to/iRedMail-x.y.z/
- $ cd pkgs/
- $ sh get_all.sh
- $ cd ../
- $ sh iRedMail.sh