本系列文章主要介紹linux下主流的開源郵件系統postfix的搭建過程,構建一個通過postfix虛擬用戶管理的完整的郵件系統, 該系統包括以下組件: 郵件收髮端postfix,dovecot, 郵件管理端:extmail,extman 安全認證:cyrus-sasl 防病毒,防垃圾 本文主要介紹 ...
本系列文章主要介紹linux下主流的開源郵件系統postfix的搭建過程,構建一個通過postfix虛擬用戶管理的完整的郵件系統,
該系統包括以下組件:
郵件收髮端postfix,dovecot,
郵件管理端:extmail,extman
安全認證:cyrus-sasl
防病毒,防垃圾
本文主要介紹postfix郵件系統搭建之前的準備工作,包括:
1.功能變數名稱解析
2.linux系統優化配置
3.LAMP環境的搭建
4.sasl安全認證軟體安裝
廢話不多,直接進入正題
1.功能變數名稱解析
我的伺服器和功能變數名稱都是在http://www.aliyun.com上面進行購買的,當前環境下,阿裡雲對這兩項服務的提供還是很不錯的,值得推薦。
主要需要的配置是:A記錄和MX記錄。
以下是我的阿裡雲解析記錄,提供參考:
紅框內的是我需要使用的記錄,其他的是一般可供配置的解析,在此只是演示一下,大傢具體根據實際情況進行配置即可。
Tips:
MX(Mail Exchanger)記錄
郵件交換記錄,它指向一個郵件伺服器,用於電子郵件系統發郵件時根據收信人的地址尾碼來定位郵件伺服器。這樣的伺服器可以有多個,通過MX優先順序確定接受轉發的順序,數字越小優先順序越高。
例如,當Internet上的某用戶要發一封信給 [email protected] 時,該用戶的郵件系統通過DNS查找mydomain.com這個功能變數名稱的MX記錄,如果MX記錄存在, 用戶電腦就將郵件發送到MX記錄所指定的郵件伺服器上。
2.linux系統優化配置
2.1.檢查系統版本
本次安裝採用CentOS-6.8-x86_64系統,其他6.x版本的伺服器相同,7.x的暫不適用
cat /etc/redhat-release uname -r
2.2.創建併進入工作目錄
mkdir -p /server/tools
cd /server/tools
2.3.修改主機名,配置hosts解析,均配置為mail.zuiyoujie.com
hostname mail.zuiyoujie.com vim /etc/sysconfig/network
-->HOSTNAME=mailsrv.zuiyoujie.com
vim /etc/hosts
-->127.0.0.1 mail.zuiyoujie.com
2.4.關閉防火牆,selinux
chkconfig iptables off chkconfig ip6tables off chkconfig --list ip6tables chkconfig --list iptables sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config cat /etc/selinux/config |grep SELINUX=disabled setenforce 0 getenforce
2.5.設置時間同步
/usr/sbin/ntpdate ntp1.aliyun.com echo "# made by tssc for sync time in $(date +%F)">> /var/spool/cron/root echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1' >>/var/spool/cron/root crontab -l
2.6.配置CentOS6.0下的yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.bak mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.bak wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo yum install net-tools wget vim lrzsz tree dos2unix -y
2.7.安裝開發庫和開發工具(gcc-c++)
yum groupinstall 'Development Libraries' 'Development Tools' -y
3.LAMP環境的搭建
3.1. 由於後續會安裝extmail和extman的圖形日誌,需要安裝一些基本的圖形工具
yum install -y \ httpd mysql mysql-server mysql-devel php php-mysql openssl-devel \ gd gd-devel perl-GD libmcrypt libmcrypt-devel \ freetype freetype-devel glib zlib zlib-devel \ libjpeg libjpeg-devel libpng libpng-devel \ libart_lgpl libart_lgpl-devel libxml2 libxml2-devel \ libtool-ltdl libtool-ltdl-devel db4 db4-devel \ perl-DBD-MySQL perl-Unix-Syslog perl-CGI perl-File-Tail \ cairo cairo-devel expect tcl tcl-devel \ fontconfig pixman pango pango-devel rrdtool*
# 註意:
上面的安裝包中可能沒有perl-Unix-Syslog和perl-GD包,可以使用以下鏈接下載安裝:
rpm -ivh ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/perl-Unix-Syslog-1.1-1.el6.rf.x86_64.rpm rpm -ivh ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/extras/RPMS/perl-GD-2.45-1.el6.rfx.x86_64.rpm
3.2.配置啟動資料庫
service mysqld start chkconfig mysqld on chkconfig --list mysqld mysql --version netstat -anptl
安裝啟動完成資料庫,可以登錄一下進行測試
4.安裝cyrus-sasl認證服務
4.1.cyrus-sasl(Simple Authentication Security Layer)簡單認證安全層, SASL主要是用於SMTP認證。saslauthd是其守護進程。
yum -y install cyrus-sasl-*
# 安裝完畢查看版本號
[root@mail ~]# /usr/sbin/saslauthd -v saslauthd 2.1.23 authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap
4.2.配置cyrus-sasl,確認以下配置項,使用系統用戶驗證
vim /etc/sysconfig/saslauthd
# 修改並確認以下配置:
SOCKETDIR=/var/run/saslauthd
MECH=shadow
4.3.啟動saslauthd服務,進行測試
chkconfig saslauthd on chkconfig --list saslauthd service saslauthd start
# 創建系統用戶驗證saslauthd服務的有效性
useradd zhaoshuai && echo 123456 | passwd --stdin zhaoshuai testsaslauthd -u zhaoshuai -p 123456
# 若出現以下內容表示成功
[root@mail ~]# testsaslauthd -u zhaoshuai -p 123456 0: OK "Success."
完成以上這些就可以進行postfix伺服器的安裝了,我將在下一篇進行詳細敘述。
完畢,呵呵呵