基於虛擬用戶的郵件服務器配置

一、安裝前的準備工作:

編寫DNS指向:

[root@localhost ~]# vim /etc/resolv.conf

wps_clip_image-21698

卸載sendmail取消依賴性:

[root@localhost ~]# rpm -e sendmail --nodeps

查看是否還有25端口:

[root@localhost ~]# netstat -tupln |grep 25

tcp        0      0 0.0.0.0:1005                0.0.0.0:*                   LISTEN      2519/rpc.statd     

udp        0      0 0.0.0.0:999                 0.0.0.0:*                               2519/rpc.statd     

udp        0      0 0.0.0.0:1002                0.0.0.0:*                               2519/rpc.statd

編寫一個小倉庫:

[root@localhost ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

wps_clip_image-25835

創建掛載目錄進行掛載:

[root@localhost ~]# mkdir /mnt/cdrom

[root@localhost ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

安裝DNS包(bind  bind-chroot   caching-nameserver)

[root@localhost ~]# yum install bind bind-chroot caching-nameserver

安裝需要的rpm包組:(四大開發工具)

[root@localhost ~]# yum grouplist |less

 Development Libraries        開發工具

   Development Tools         開發庫

Legacy Software Development     老的軟件開發    

X Software Development       X 軟件開發

先做DNS:

[root@localhost ~]# cd /var/named/chroot/etc/

[root@localhost etc]# ll

total 16

-rw-r--r-- 1 root root   405 Feb  8 16:30 localtime

-rw-r----- 1 root named 1230 Jul 30  2009 named.caching-nameserver.conf

-rw-r----- 1 root named  955 Jul 30  2009 named.rfc1912.zones

-rw-r----- 1 root named  113 Apr  9 13:35 rndc.key

[root@localhost etc]# cp -p named.caching-nameserver.conf  named.conf

編輯配置服務器:

[root@localhost etc]# vim named.conf

wps_clip_image-1663

做區域聲明:

[root@localhost etc]# vim named.rfc1912.zones

wps_clip_image-22154

產生數據庫:

[root@localhost etc]# cd ../var/named/

[root@localhost named]# ll

total 36

drwxrwx--- 2 named named 4096 Aug 26  2004 data

-rw-r----- 1 root  named  198 Jul 30  2009 localdomain.zone

-rw-r----- 1 root  named  195 Jul 30  2009 localhost.zone

-rw-r----- 1 root  named  427 Jul 30  2009 named.broadcast

-rw-r----- 1 root  named 1892 Jul 30  2009 named.ca

-rw-r----- 1 root  named  424 Jul 30  2009 named.ip6.local

-rw-r----- 1 root  named  426 Jul 30  2009 named.local

-rw-r----- 1 root  named  427 Jul 30  2009 named.zero

drwxrwx--- 2 named named 4096 Jul 27  2004 slaves

[root@localhost named]# cp -p localhost.zone  a.org.db

[root@localhost named]# vim a.org.db

wps_clip_image-1862

設置成開機啓動:

[root@localhost named]# chkconfig named on

啓動named:

[root@localhost named]# service named start

Starting named:                                            [  OK  ]

[root@localhost named]# rndc reload

server reload successful

測試:進行域名解析

wps_clip_image-5354

wps_clip_image-17705

更改主機名:

[root@localhost named]# vim /etc/sysconfig/network

wps_clip_image-16086

重新啓動:

[root@localhost named]# init 6

在掛載光盤:

[root@mail ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

清除緩存:

[root@mail ~]# yum clean all              

Loaded plugins: rhnplugin, security

Cleaning up Everything

安裝所需的rpm包:

[root@mail ~]# yum install httpd  php  php-mysql  mysql  mysql-server  mysql-devel  openssl-devel  dovecot  perl-DBD-MySQL  tcl  tcl-devel  libart_lgpl  libart_lgpl-devel  libtool-ltdl  libtool-ltdl-devel  expect

啓動mysql數據庫,並給mysql的root用戶設置密碼:

[root@mail ~]# chkconfig mysqld on     設置成開機啓動

[root@mail ~]# service mysqld start

Starting MySQL:                                            [  OK  ]

[root@mail ~]# netstat -tupln |grep mysql    查看端口

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      4805/mysqld

wps_clip_image-12483

[root@mail ~]# mysqladmin -u root -p password 'redhat'

Enter password:         初始密碼爲空

再次的訪問mysql就不行了:

[root@mail ~]# mysql

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

wps_clip_image-916

二:安裝配置postfix

[root@mail ~]# groupadd -g 2525 postfix                        

[root@mail ~]# useradd -g postfix -u 2525 -s /sbin/nologin -M postfix

[root@mail ~]# groupadd -g 2526 postdrop

[root@mail ~]# useradd -g postdrop -u 2526 -s /bin/false -M postdrop

所需要的包:courier-authlib-0.63.1.20111230.tar.bz2   extmail-1.2.tar.gz   extman-1.1.tar.gz   postfix-2.8.2.tar.gz   Unix-Syslog-1.1.tar.gz

wps_clip_image-264

[root@mail ~]# tar -zxvf postfix-2.8.2.tar.gz

[root@mail ~]# cd postfix-2.8.2

[root@mail postfix-2.8.2]# make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl  -DUSE_TLS ' 'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/lib/sasl2 -lsasl2   -lssl -lcrypto'

[root@mail postfix-2.8.2]# make

[root@mail postfix-2.8.2]# make install

按照以下的提示輸入相關的路徑([]號中的是缺省值,”]”後的是輸入值,省略的表示採用默認值)

install_root: [/] /

tempdir: [/usr/local/src/ postfix-2.8.2] /tmp

config_directory: [/etc/postfix] /etc/postfix

daemon_directory: [/usr/libexec/postfix]

command_directory: [/usr/sbin]

queue_directory: [/var/spool/postfix]

sendmail_path: [/usr/sbin/sendmail]

newaliases_path: [/usr/bin/newaliases]

mailq_path: [/usr/bin/mailq]

mail_owner: [postfix]

setgid_group: [postdrop]  

       html_directory: [no] /var/www/postfix_html

       manpages: [/usr/local/man]

       readme_directory: [no]

進行一些基本配置,測試啓動postfix並進行發信

[root@mail postfix-2.8.2]# newaliases         

[root@mail postfix-2.8.2]# cp /etc/postfix/main.cf /etc/postfix/main.cf.bak

[root@mail postfix-2.8.2]# vim /etc/postfix/main.cf

wps_clip_image-4820

wps_clip_image-23531

wps_clip_image-10659

wps_clip_image-368

[root@mail postfix-2.8.2]# service postfix restart  

wps_clip_image-17242

[root@mail postfix-2.8.2]# cd

[root@mail ~]# mkdir abc

[root@mail ~]# cd abc/

[root@mail abc]# cp /mnt/cdrom/Server/postfix-2.3.3-2.1.el5_2.i386.rpm  ./

wps_clip_image-15642

[root@mail abc]# rpm2cpio postfix-2.3.3-2.1.el5_2.i386.rpm  |cpio -id

16333 blocks

wps_clip_image-32524

[root@mail abc]# cd etc

[root@mail etc]# ls

pam.d  postfix  rc.d

[root@mail etc]# cd rc.d/

wps_clip_image-8852

[root@mail rc.d]# cd init.d/

wps_clip_image-22293

wps_clip_image-2743

[root@mail init.d]# chkconfig --add postfix

[root@mail init.d]# chkconfig  postfix on

[root@mail init.d]# chkconfig --list |grep  postfix  

wps_clip_image-12562

連接postfix,驗正服務啓動狀況:

wps_clip_image-7217

打開日誌進行監控:

[root@mail ~]# tar -f /var/log/maillog

wps_clip_image-6770

用戶進行收信查看:

wps_clip_image-4677

三:爲postfix開啓基於cyrus-sasl的認證功能

查看cyrus-sasl:

wps_clip_image-32439

[root@mail init.d]# vim /etc/postfix/main.cf

wps_clip_image-31376

[root@mail init.d]# vim usr/lib/sasl2/smtpd.conf

wps_clip_image-19620

wps_clip_image-10749

wps_clip_image-27109

四:安裝Courier authentication library

[root@mail ~]# tar -jxvf courier-authlib-0.63.1.20111230.tar.bz2

[root@mail ~]# cd courier-authlib-0.63.1.20111230

[root@mail courier-authlib-0.63.1.20111230]# ./configure --prefix=/usr/local/courier-authlib --sysconfdir=/etc --with-authmysql --with-mysql-libs=/usr/lib/mysql --with-mysql-includes=/usr/include/mysql --with-redhat --with-authmysqlrc=/etc/authmysqlrc --with-authdaemonrc=/etc/authdaemonrc  --with-ltdl-lib=/usr/lib  --with-ltdl-include=/usr/include

[root@mail courier-authlib-0.63.1.20111230]# make

[root@mail courier-authlib-0.63.1.20111230]# make install

[root@mail courier-authlib-0.63.1.20111230]# cd /usr/local/courier-authlib/var/spool/

[root@mail spool]# ll

total 4

drwxr-x--- 2 daemon daemon 4096 Apr  9 17:22 authdaemon

[root@mail spool]# chmod -R 755 authdaemon/

[root@mail spool]# ll

total 4

drwxr-xr-x 2 daemon daemon 4096 Apr  9 17:22 authdaemon

[root@mail spool]# cp /etc/authdaemonrc.dist  /etc/authdaemonrc                                      

[root@mail spool]# cp /etc/authmysqlrc.dist  /etc/authmysqlrc

修改/etc/authdaemonrc 文件

[root@mail spool]# vim /etc/authdaemonrc

wps_clip_image-27209

編輯/etc/authmysqlrc 爲以下內容:其中2525,2525 爲postfix 用戶的UID和GID

[root@mail spool]# vim /etc/authmysqlrc

wps_clip_image-4342

wps_clip_image-11470

wps_clip_image-21702

wps_clip_image-3816

wps_clip_image-19527

wps_clip_image-13450

wps_clip_image-12176

wps_clip_image-9281

[root@mail spool]# cd

[root@mail ~]# cd courier-authlib-0.63.1.20111230

cp courier-authlib.sysvinit /etc/init.d

[root@mail courier-authlib-0.63.1.20111230]# ll /etc/init.d/courier-authlib.sysvinit

-rw-r--r-- 1 root root 943 Apr  9 18:15 /etc/init.d/courier-authlib.sysvinit

[root@mail courier-authlib-0.63.1.20111230]# chmod a+x  /etc/init.d/courier-authlib.sysvinit

[root@mail courier-authlib-0.63.1.20111230]# mv /etc/init.d/courier-authlib.sysvinit  /etc/init.d/courier-authlib         

[root@mail courier-authlib-0.63.1.20111230]# service courier-authlib start

Starting Courier authentication services: authdaemond

[root@mail courier-authlib-0.63.1.20111230]# netstat -tupln |grep cour

wps_clip_image-20818

[root@mail courier-authlib-0.63.1.20111230]# chkconfig --add courier-authlib

[root@mail courier-authlib-0.63.1.20111230]# chkconfig  courier-authlib on

[root@mail courier-authlib-0.63.1.20111230]# cd /usr/local/courier-authlib/

wps_clip_image-13158

[root@mail courier-authlib]# cd lib

[root@mail lib]# pwd

/usr/local/courier-authlib/lib

[root@mail lib]# ldconfig -v |grep cour

[root@mail lib]# vim /etc/ld.so.conf.d/courier-authlib.conf

wps_clip_image-28994

[root@mail lib]# ldconfig -v |grep cour

/usr/local/courier-authlib/lib:

新建虛擬用戶郵箱所在的目錄,並將其權限賦予postfix用戶

[root@mail lib]# mkdir -pv /var/mailbox

mkdir: created directory `/var/mailbox'

[root@mail lib]# chown -R postfix /var/mailbox/

重新配置SMTP 認證,編輯 /usr/local/lib/sasl2/smtpd.conf 

[root@mail lib]# vim /usr/lib/sasl2/smtpd.conf

wps_clip_image-27536

五:讓postfix支持虛擬域和虛擬用戶

1:編輯/etc/postfix/main.cf,添加如下內容:

[root@mail lib]# vim /etc/postfix/main.cf

wps_clip_image-116

wps_clip_image-6160

2、使用extman源碼目錄下docs目錄中的extmail.sql和init.sql建立數據庫:

[root@mail ~]# tar -zxvf extman-1.1.tar.gz

wps_clip_image-26959

[root@mail ~]# cd extman-1.1

[root@mail extman-1.1]# cd docs/

wps_clip_image-7309

[root@mail docs]# cp mysq* /etc/postfix/

3:授予用戶extmail訪問extmail數據庫的權限:

wps_clip_image-83

wps_clip_image-17706

六、配置dovecot

[root@mail docs]# vim /etc/dovecot.conf

wps_clip_image-11292

wps_clip_image-1299

wps_clip_image-1587

wps_clip_image-32376

wps_clip_image-941

postfix的配置文件也要該

[root@mail docs]# vim /etc/postfix/main.cf

wps_clip_image-18224

[root@mail docs]# vim /etc/dovecot-mysql.conf

wps_clip_image-27577

wps_clip_image-14231

七:安裝Extmail-1.2  (先安裝httpd)

wps_clip_image-21373

1:解壓安裝:

[root@mail ~]# tar -zxvf extmail-1.2.tar.gz  -C /var/www/extsuite/

[root@mail ~]# tar -zxvf extman-1.1.tar.gz  -C /var/www/extsuite/

[root@mail ~]# cd /var/www/extsuite/

wps_clip_image-15736

[root@mail extsuite]# mv extmail-1.2 extmail

[root@mail extsuite]# mv extman-1.1  extman

[root@mail extsuite]# cd extmail/

[root@mail extmail]# cp webmail.cf.default webmail.cf

2:修改主配置文件:

[root@mail extmail]# vim webmail.cf

wps_clip_image-20980

wps_clip_image-15084

wps_clip_image-29613

wps_clip_image-31134

3:apache相關配置:

[root@mail extmail]# vim /etc/httpd/conf/httpd.conf

wps_clip_image-30110

wps_clip_image-15578

修改 cgi執行文件屬主爲apache運行身份用戶:

[root@mail extmail]# chown -R postfix.postfix /var/www/extsuite/extmail/cgi/

 

4:依賴關係的解決:

[root@mail extmail]# cd

[root@mail ~]# tar -zxvf Unix-Syslog-1.1.tar.gz

[root@mail ~]# cd Unix-Syslog-1.1

[root@mail Unix-Syslog-1.1]# perl Makefile.PL

[root@mail Unix-Syslog-1.1]# make

[root@mail Unix-Syslog-1.1]# make install

5:啓動apache服務:

wps_clip_image-18273

wps_clip_image-4421

只可以登錄但是不可以註冊郵箱

八:安裝Extman-1.1

1:安裝及基本配置:

[root@mail Unix-Syslog-1.1]# cd /var/www/extsuite/

[root@mail extsuite]# cd extman

修改配置文件以符合本例的需要:

[root@mail extman]# cp webman.cf.default  webman.cf        

[root@mail extman]# vim webman.cf

wps_clip_image-6302

修改cgi目錄的屬主:

[root@mail extman]# chown -R postfix.postfix /var/www/extsuite/extman/cgi/

在apache的主配置文件中Extmail的虛擬主機部分,添加如下兩行:

[root@mail extman]# vim /etc/httpd/conf/httpd.conf

wps_clip_image-12088

創建其運行時所需的臨時目錄,並修改其相應的權限:

[root@mail init.d]# mkdir  /tmp/extman

[root@mail init.d]# chown postfix.postfix  /tmp/extman

重新啓動apache服務器後,在瀏覽器中輸入指定的虛擬主機的名稱進行訪問:

選擇管理即可登入extman進行後臺管理了。默認管理帳號爲:[email protected]  密碼爲:extmail*123*

wps_clip_image-4712

新添加一個域:a.org

wps_clip_image-11539

wps_clip_image-9426

wps_clip_image-26882

用user1用戶登陸:

wps_clip_image-21019

用戶給管理員發送郵件查看日誌:

wps_clip_image-3591

wps_clip_image-27660

完成自己給自己的郵件發送:

wps_clip_image-30286

wps_clip_image-7559

wps_clip_image-32013

用戶user1給用戶a發送郵件:

wps_clip_image-10586

wps_clip_image-9346

wps_clip_image-20686

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章