郵件應用協議包括:
- 簡單郵件傳輸協議(SMTP),用來發送或中轉發出的電子郵件,占用tcp 25端口。
- 第三版郵局協議(POP3),用於將服務器上把郵件存儲到本地主機,占用tcp 110端口。
- 第四版互聯網信息訪問協議(IMAP4),用於在本地主機上訪問郵件,占用tcp 143端口。
搭建企業級的電子郵件系統,請考慮下面幾點:
部署基礎電子郵局系統
單獨的使用Postfix服務程序並不能讓用戶完成收發郵件的操作,因為一個基礎的電子郵局系統至少需要有SMTP服務器、POP3/IMAP服務器
配置本地主機名
[root@mail ~]# vim /etc/hostname mail.scott.com
增加A記錄和MX記錄
若要為用戶提供scott域的電子郵局系統,則需先在DNS服務器中增加A記錄和MX記錄:
修改本機的DNS地址
[root@mail ~]# cat /etc/resolv.conf # Generated by NetworkManager search scott.com nameserver 192.168.0.85
配置Postfix服務程序
停止iptables防火牆:
systemctl disable iptables
紅帽RHEL7系統中默認已安裝postfix郵局服務程序:
yum install postfix Loaded plugins: langpacks, product-id, subscription-manager rhel7 | 4.1 kB 00:00 (1/2): rhel7/group_gz | 134 kB 00:00 (2/2): rhel7/primary_db | 3.4 MB 00:00 Package 2:postfix-2.10.1-6.el7.x86_64 already installed and latest version Nothing to do
Postfix郵局服務程序的配置文件如下:
文件 | 作用 |
/usr/sbin/postfix | 主服務程序 |
/etc/postfix/master.cf | master主程序的配置文件。 |
/etc/postfix/main.cf | postfix服務的配置文件。 |
/var/log/maillog | 記錄郵件傳遞過程的日志。 |
第1步:查看Postfix服務程序主配置文件:
編輯Postfix服務程序的主配置文件(修改5處參數,另外需要將參數前面的井號(#)去掉才可生效):
[root@mail~] # vim /etc/postfix/main.cf //修改第76行的郵局主機名。 myhostname = mail.scott.com //修改第83行的郵局域名。 mydomain = scott.com //修改第99行的寄出郵件域名,$mydomain的值已在上面定義。 myorigin = $mydomain //修改第116行的監聽網卡。 inet_interfaces = all //修改第164行的可接收郵件的主機名和域名。 mydestination = $myhostname, $mydomain
第2步:創建郵局帳號:
[root@mail~] # useradd boss [root@mail~] # echo "123456" | passwd --stdin boss Changing password for user boss. passwd: all authentication tokens updated successfully.
第3步:啟動Postfix服務程序:
[root@mail~] # systemctl restart postfix [root@mail~] # systemctl enable postfix ln -s '/usr/lib/systemd/system/postfix.service' '/etc/systemd/system/multi-user.target.wants/postfix.service'
現在我們來測試postfix是否可以發送郵件,如下:
在qq郵箱中查看:
如果查收不到記得給該域加入QQ郵箱的白名單。
配置Dovecot服務程序
第1步:安裝Dovecot服務程序:
[root@mail~] # yum install dovecot -y Loaded plugins: langpacks, product-id, subscription-manager ………………省略部分安裝過程……………… Installing: dovecot x86_64 1:2.2.10-4.el7 rhel7 3.2 M Installing for dependencies: clucene-core x86_64 2.3.3.4-11.el7 rhel7 528 k ………………省略部分安裝過程……………… Complete!
第2步:修改Dovecot程序主配置文件:
[root@mail~] # vim /etc/dovecot/dovecot.conf //修改第24行的支持郵局協議。 protocols = imap pop3 lmtp //然后追加允許明文認證(25行)。 disable_plaintext_auth = no //修改第48行的允許登陸網段地址,全部允許即為(0.0.0.0/0)。 login_trusted_networks = 192.168.0.0/24
第3步:配置郵件的格式與存儲路徑。<
編輯dovecot的配置文件(將第25行的注釋符(#號)去掉):
[root@mail~] # vim /etc/dovecot/conf.d/10-mail.conf mail_location = mbox:~/mail:INBOX=/var/mail/%u
第4步:創建郵件的存儲目錄:
[root@mail~] # su - boss Last login: Sat Aug 15 16:15:58 CST 2015 on pts/1 [boss@mail ~]$ mkdir -p mail/.imap/INBOX
第5步:啟動Dovecot服務程序:
[root@mail~] # systemctl restart dovecot [root@mail~] # systemctl enable dovecot ln -s '/usr/lib/systemd/system/dovecot.service' '/etc/systemd/system/multi-user.target.wants/dovecot.service'
用戶使用郵局系統
修改客戶機的DNS地址為本地的DNS服務器地址
在Foxmail中登錄boss用戶
用該用戶發一封郵件給root用戶
登錄root用戶,查收郵件:
root@mail ~]# mail Heirloom Mail version 12.5 7/5/10. Type ? for help. 。。。。。。。。。。 >N 7 boss@scott.com Thu Jan 19 17:41 44/1580 "測試" N 8 boss@scott.com Thu Jan 19 17:51 46/1743 "測試郵件" & 8 Message 8: From boss@scott.com Thu Jan 19 17:51:45 2017 Return-Path: <boss@scott.com> X-Original-To: root@scott.com Delivered-To: root@scott.com Date: Thu, 19 Jan 2017 17:54:00 +0800 From: "boss@scott.com" <boss@scott.com> To: root <root@scott.com> Subject: 測試郵件 X-Priority: 3 X-Has-Attach: no X-Mailer: Foxmail 7, 2, 7, 21[cn] Content-Type: multipart/alternative; boundary="----=_001_NextPart160336538781_=----" Status: R Content-Type: text/plain; charset="GB2312" 如果收到這封郵件就代表郵局系統實驗成功了。 boss@scott.com