16、簡單自制郵件服務器


1、協議服務:

     SMTP       tcp      25 端口      郵件存儲和遞送
     POP3       tcp      110 端口     用戶讀、寫郵件

 


 

2、服務器:  (SMTP   25 端口)
     sendmail     成熟,易配置
     postfix       AIX系統開發 (IBM)  所以Linux下  不易配置
     gmail          號稱 處理速度快,能力強

 

3、客戶端:   (POP3  110 端口)
     文本:     mutt
      圖形:    foxmail     evolution

 

一、 配置mail域名服務器

[root@localhost root]#  vi   /var/named/gr.org.db

$TTL 86400
@  IN  SOA  ns.gr.org.    root.gr.org.(
            20140308 ;serial
            8H       ;refresh
            4M       ;retry
            1W       ;expiry
            1D  )    ;minimum
@      IN   NS      ns.gr.org.
ns     IN   A       192.168.170.1
host1  IN   A       192.168.170.1
host2  IN   A       192.168.170.2
host3  IN   A       192.168.170.3
@      IN   MX  10  mail.gr.org.
mail   IN   A       192.168.170.1

重啟服務

[root@localhost root]# rndc   reload

測試

[root@localhost root]# nslookup   -sil   mail.gr.org
Server:         192.168.170.3
Address:        192.168.170.3#53

Name:   mail.gr.org
Address: 192.168.170.1

 

二、sendmail 配置

1、看sendmail是否安裝好

     [root@localhost root]# cd  /etc/mail
     [root@localhost mail]#  rpm  -q  sendmail
     sendmail-8.12.8-4

(sendmail 配置  實驗  關鍵步驟 :
           修改sendmail.mc ,再通過 m4  生成 sendmail.cf
           修改local-host-name 設置 收信的域
           access(訪問控制) 通過 makemap  生成  access.db
           aliases 設置群發  通過 newaliases  生成  aliases.db
           service   sendmail   restart (重啟服務)
     )

 

2、配置核心文件:

    [root@localhost mail]# vi   /etc/mail/sendmail.mc

更改地方如下面3個

1) 偵聽網段
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
改為
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

image

 

2) 本地域名
LOCAL_DOMAIN(`localhost.localdomain')dnl
改為
LOCAL_DOMAIN(`gr.org')dnl

image

 

3) 開啟認證功能:
把下面三行中行首的 dnl 去掉:

dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')

image
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

image

 

3、建立 /etc/mail/sendmail.cf
[root@localhost mail]# m4  /etc/mail/sendmail.mc  >  /etc/mail/sendmail.cf

 

4、設置收件的域
      [root@localhost mail]# vi    /etc/mail/local-host-names

gr.org
mail.gr.org

 

5、建立組和用戶

       [root@localhost mail]# groupadd   stu
       [root@localhost mail]# useradd   huji   -g   stu  -s  /sbin/nologin
       [root@localhost mail]# passwd   huji
       Changing password for user huji.
       New password:
       BAD PASSWORD: it is based on a dictionary word
       Retype new password:
       passwd: all authentication tokens updated successfully.
       [root@localhost mail]# useradd   stu   -g   stu   -s   /sbin/nologin
       [root@localhost mail]# passwd    stu
       Changing password for user stu.
       New password:
       BAD PASSWORD: it is based on a dictionary word
       Retype new password:
       passwd: all authentication tokens updated successfully.

     [root@localhost root]# useradd   wuji   -g   stu  -s  /sbin/nologin
     [root@localhost root]# passwd wuji
     Changing password for user wuji.
     New password:
     Retype new password:
     passwd: all authentication tokens updated successfully.


 

6、設置群發別名:
       [root@localhost mail]#  vi   /etc/aliases
       添加兩行:
       root: root,yanji
       stu:  yanji,wuji,huji

 

7、生成 aliases.db 數據庫:

[root@localhost mail]# newaliases   /etc/aliases:  64 aliases
/etc/aliases: 65 aliases, longest 15 bytes, 657 bytes total

 

8、設置訪問控制:
       [root@localhost mail]# vi   /etc/mail/access
       192.168.170.0/24                RELAY
       gr.org                                 RELAY
       mail.gr.org                           RELAY

 

9、更新 aliases.db 數據庫
       [root@localhost mail]#  makemap  -r  hash  /etc/mail/access.db  <  /etc/mail/access

 

10、重啟服務
       [root@localhost mail]# service  sendmail   restart
       關閉 sendmail:                                            [  確定  ]
       關閉 sm-client:                                           [  確定  ]
       啟動 sendmail:                                            [  確定  ]
       啟動 sm-client:                                           [  確定  ]

 

現在來測試

方法一、

發郵件:(給yanji寫信  主題:Greet  內容:Hello, yanji.)
      [root@localhost mail]# echo  "Hello, yanji." | mutt   -s   "Greet"   yanji@gr.org

查看郵件
     [root@localhost mail]# su  - yanji
     [yanji@localhost yanji]$ zh
     [yanji@localhost yanji]$ mutt

image

yes,回車

image


 

 

方法二、

在Windows用foxmail驗證

[root@localhost root]# chkconfig  ipop3  on
[root@localhost root]# service   xinetd  restart
停止 xinetd:                                              [  確定  ]
啟動 xinetd:                                              [  確定  ]

 

禁用本地連接,不讓上網。  把VMware8  的DNS服務器指定為 192.168.170.3.

image

 

foxmail新增yanji帳號

image

image

image

 

image

 

image

 

群發

先創建huji 和wuji的帳號

image

 

發郵件給stu,就會給這個stu組 所有的成員發郵件

[root@localhost root]# echo  "Hello, student."  | mutt  -s  "Greet" stu@gr.org 

驗證如下

image

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM