LAMP+Postfix+Dovecot+Postfixadmin搭建郵件管理系統(五)

接上期,通過前4期,我們已經部署完成了 DNS服務、MySQL服務、Apache服務 、PHP服務,環境方面,已經足以支撐我們部署接下來的 Postfix服務、Dovecot服務、Postfixadmin管理端,下面,我們就開始着手部署後面三個關鍵性服務,也是我們本專題的核心。


六、部署 Postfix 服務

    1、安裝postfix依賴包

    [root@Mail ~]# yum -y install cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain

    2、下載 postfix 安裝包

    [root@Mail ~]# wget -c ftp://ftp.cuhk.edu.hk/pub/packages/mail-server/postfix/experimental/postfix-3.4-20181105.tar.gz

    3、解壓,並進入目錄

    [root@Mail ~]# tar -zxvf postfix-3.4-20181105.tar.gz

    [root@Mail postfix-3.4-20181105]# cd postfix-3.4-20181105

    4、創建postfix服務工作所需的用戶及用戶組

    [root@Mail postfix-3.4-20181105]# groupadd -g 2000 postfix

    [root@Mail postfix-3.4-20181105]# useradd -g postfix -u 2000 -M -s /sbin/nologin postfix

    這裏,我們將用戶UID和用戶組GID均指定爲2000

    5、開始編譯

    [root@Mail postfix-3.4-20181105]# make -f Makefile.init makefiles \
     CCARGS="-DUSE_TLS -DHAS_MYSQL -I/usr/local/mysql/include -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" \
     AUXLIBS_MYSQL="-L/usr/local/mysql/lib -lmysqlclient -lz -lm -L/usr/lib/sasl2 -lsasl2  -lssl -lcrypto"

    [root@Mail postfix-3.4-20181105]# make

    注意:在執行此步驟時,可能會如下出現2個報錯

        (1)、dict_mysql.c:171:19: 致命錯誤:mysql.h:沒有那個文件或目錄   :如下圖

        圖片.png

        出現這個報錯的原因爲:我們在生成 Makefile 文件時,指定的MySQL頭文件目錄有誤,可據自己MySQL的basedir來定義頭文件目錄。

        (2)、/bin/ld: 找不到 -lmysqlclient    :如下圖

        圖片.png

        出現這個報錯的原因爲:我們在生成Makefile 文件時,指定的MySQL lib庫文件目錄錯誤,也可根據自己的MySQL basedir來定義頭文件目錄。

    無報錯後進行下一步:

    [root@Mail postfix-3.4-20181105]# make install

    此步驟會出現以下內容的交互式會話,提示我們輸入部分目錄,其中大部分保持默認就行。

        install_root: [/]
        tempdir: [/root/postfix-3.4-20181105]
        config_directory: [/etc/postfix]

        command_directory: [/usr/sbin]

        daemon_directory: [/usr/libexec/postfix]
        data_directory: [/var/lib/postfix]

        html_directory: [no]

        mail_owner: [postfix]

        mailq_path: [/usr/bin/mailq]

        manpages: [/usr/local/man]

        newaliases_path: [/usr/bin/newaliases]

        queue_directory: [/var/spool/postfix]

        readme_directory: [no]

        sendmail_path: [/usr/sbin/sendmail]
        setgid_group: [postdrop]

        shlib_directory: [no]

        meta_directory: [/etc/postfix]

        執行完成此步驟後,postfix服務安裝完成。

    6、配置postfix服務

    [root@Mail postfix-3.4-20181105]# cd /etc/postfix/

    配置文件都放在 /etc/postfix 目錄中,如圖

    圖片.png

    而我們要修改的配置文件其實就只有 main.cf 文件和 master.cf 文件

    [root@Mail postfix]# vim main.cf

    圖片.png  

    如圖,main.cf 文件主要定義一些 postfix 服務常用的工作目錄、網絡接口、域名等,目錄部分大部分不用修改,保持默認就行,但是自己又特殊需要的話,可修改爲自定義目錄。

    不過,需要在該配置文件中加入下面三行,來定義虛擬郵件目錄、UID號個GID號

    virtual_mailbox_base = /wdata/vmail
    virtual_uid_maps = static:2000
    virtual_gid_maps = static:2000

    此外,爲了連接MySQL數據庫,還需加入以下三行,此三行中的 mysql-virtual-*.cf 文件需要自行創建來定義 MySQL 數據庫的連接信息,寫法格式可參照 README_FILES/MYSQL_README 文件、proto/MYSQL_README.html 文件和 proto/mysql_table 文件

    virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
    virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
    virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual-alias-maps.cf

    圖片.png

    如圖,爲mysql-virtual-*.cf文件

    圖片.png

    圖片.png

    [root@Mail postfix]# vim master.cf

    圖片.png

    如圖,master.cf 文件主要定義了一些常用的協議,這個一般不用修改,保持默認,在這裏,我們取消 submission 和 smtps 前面的註釋。

    7、啓動 postfix 服務

    [root@Mail postfix]# /usr/sbin/postfix start

    圖片.png

    如圖,表示啓動成功

    圖片.png

    圖片.png


到此爲止,postfix 服務部署完成,下期我們開始部署 Dovecot 服務。


未完待續。。。。。。

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