郵件服務

一、基礎配置

 1.需要兩臺環境純淨的虛擬機

 2.更改主機名分別爲   westos-mail.westos.com   和  qq-mail.qq.com

 3.配置兩臺虛擬機的yum源,使兩臺虛擬機可以下載服務

******在westos-mail主機中的操作:**********

  *)安裝bind服務並開啓

   yum  install  bind  -y   ##下載bind服務 

   systemctl  start  named    ##開啓服務

  *)vim  /etc/named.conf

    wKiom1klO0XglPr8AACHgJkplIo109.png   wKioL1klO1yhWMvlAAAcFTtBvZE971.png

   *)vim /etc/named.rfc1912.zones

    wKiom1klO8_yUANTAABdSK7tT6Y468.png

   *)cd /var/named

    cp -p named.localhost  westos.com.zone    ##複製模板文件。-p不改變文件權限複製

     vim westos.com.zone

    wKiom1klPFiz7c46AABotc1fvDo459.png

   ##對westos.com域進行解析

  cp -p westos.com.zone  qq.com.zone

  vim qq.com.zone

   ##編輯qq.com.zone解析文件。將文件中的westos更換成qq,將解析的ip地址改爲qq-mail.qq.com的ip即可,

   ###以上所有操作完成了對westos.com   和 qq.com的域名解析

  systemctl  restart named   ##重啓named服務

  *)vim /etc/resolv.conf  

    

wKioL1klPYnj8hAnAABXrF8CH8w506.png

 wKioL1klPZuQvEm1AABS9C7f09A372.png

  ##在兩臺虛擬中編輯resolv.conf文件,更改dns解析地址

  

 測試:

   dig -t mx  qq.com 

   wKiom1klPf2BFPHnAAEH6Bqezvs552.png

 dig -t mx westos.com

 wKiom1klPhSS1T6lAAESoLGsM6Q219.png

二、postfix

  1.postfix提供smtp協議用來投遞郵件

   默認端口25

   mail [email protected]    ##郵件接收方

   Subject : hello       ##郵件標題

   hello world          ##郵件內容

   .                 ###“.” 用來結束錄入內容併發送

  wKiom1klPtDBDzifAAA1piHji_A287.png

 mailq    ##查看郵件隊列,郵件是否發送成功

  wKioL1klPvThJAnXAABwr2UMvek783.png

     ##上圖表示發送失敗,原因是qq.com主機的25端口沒有開放,拒絕連接

 *)查看25端口使用情況的命令

     netstat -antlpe | grep master

   wKiom1klP6qSlradAABbL6nJznI830.png

   ##上圖表示該主機中的25端口對所有人開放,默認情況下25端口只對127.0.0.1內循壞上開啓

  2.配置

  *) vim /etc/postfix/main.cf

   wKioL1klQELxMtvdAAA0ZQ533go742.png

     ##接收郵件結尾字符的指定

   wKiom1klQG6BKZCEAAAcyH3c7jI483.png

     ##25端口開啓的網絡接口

   wKiom1klQIugRFi0AAAsq8BtZKw073.png

     ##指定郵件來源結尾(@後面的字符內容)

   wKiom1klQK-Ci80vAACLxqfo04s145.png

     ## 76行## 指定mta主機名稱

     ## 83行## 指定mta域名

   編輯完成後:

     systemctl restart postfix    ##重啓postfix服務

      systemctl stop firewalld     ##關閉火牆服務

 

三、 郵件別名及郵件羣發

 1.郵件別名

   vim /etc/aliases

  soo:      root     ##郵件別名更改

  別名       真名

  測試:

  wKiom1klQxXDrHWsAAAhjCVraBE419.png

  ##利用別名給[email protected]發送郵件

  wKiom1klQ0zgoGdCAAD69e1FsWc773.png

  ##郵件接收成功

 2.郵件羣發

  vim /etc/aliases

  moreuser:             :include:/etc/postfix/moreuser 

  別名                  :include:filename

  wKioL1klRAChAwLhAAAi5iRe26I297.png

  vim /etc/postfix/moreuser  #3郵件將羣發給該文件中的用戶

   user1

   user2  

  郵件羣發測試:

   mail [email protected]

  wKiom1klRJCwocvTAAAzLCWh5BE392.png

   ##發送成功

    wKiom1klRNaDnYVuAACBOoNYZTQ797.png

   ##root用戶接受郵件成功

 wKiom1klRPiAtPu0AABlu6JBl4o482.png

   ##student用戶接受成功

四、遠程控制主機發送郵件

 1.yum  install telnet

 telnet 172.25.254.128 25   ##利用25端口遠程控住128主機

 wKiom1klRXbB3j6VAADwcscO6vE122.png

  mail from:[email protected]    ##從westos主機中發送郵件

  rcpt to:[email protected]      ##由qq主機接受郵件

  data         ##開始郵件編寫

  ##郵件接受驗證: (成功接收)

  wKioL1klRhXg-LOsAAD2gHZMfP4128.png五、郵件客戶端的遠程訪問控制

 1.限制客戶端登錄

  wKioL1klRnCg_-xaAAAmhZJ-vGs086.png

  vim /etc/postfix/access

   wKioL1klRpei6gwDAAAhMwRNQNo861.png

  ##禁止172.25.254.151主機遠程連接

  postmap  /etc/postfix/access   ##加密access文件,機密會後會生成一個access.db文件

  wKioL1klRuqiviYgAABxyGSbIYA529.png

  測試:利用151主機遠程連接128並進行郵件發送

  wKioL1klR03hzDdYAACE_a535A0980.png

  ##發送失敗,權限不夠無法發送

 2.限制用戶發送

  wKiom1klR6LTrmuPAABxVudaIlk796.png  vim /etc/postfix/sender

   [email protected] REJECT      ##禁止student用戶發送

  postmap /etc/postfix/sender     ##加密sender文件

  wKioL1klSAnzWypJAABcRCKQLOw523.png

  測試:

   wKiom1klSDWiLSV-AACGJH8GlbI590.png

 3.限制用戶接收

 vim /etc/postfix/main.cf

  wKioL1klSGuCmSykAABCK3Bb-JE395.png  vim /etc/postfix/recip   

  wKiom1klSJyzhjRgAAAR7gVU1d8357.png ##禁止[email protected]用戶接收郵件

 postmap /etc/postfix/recip   ##加密配置文件

  systemctl  restart postfix  ##重啓服務

 測試:

  wKiom1klSRWDRfm3AACiKRhz2Dk655.png

   ##[email protected]用戶可以發送郵件

   wKioL1klSULikgTWAACG7mGFFos863.png

  ##[email protected]用戶不能接收郵件

 

六、出站地址僞裝及入站地址轉換

 1. postconf -e "smtp_generic_maps = hash:/etc/postfix/generic"

   vim /etc/postfix/generic

   wKioL1klSfKSzbzKAABHEdNJ3n8845.png

  ##真用戶名              ##僞裝後用戶名

 postmap  /etc/postfix/generic     ##加密文件

  systemctl  restart   postfix

 測試:

  發送郵件

   wKioL1klSljxNMRPAABcG72ajYA249.png

   接收郵件

   wKioL1klSnbgUe8xAADLVljElAs935.png 2.入站地址轉換

 postconf -e "virtual_alias_maps = hash:/etc/postfix/virtual"

  vim /etc/postfix/virtual

   [email protected]       [email protected]

    虛擬名字            真實名字

  postmap  /etc/postfix/virtual  ##加密文件

  systemctl restart  postfix   ##重啓服務

 

 ####在westos主機上對soo.com  這個域名進行解析配置

 

 測試:

 wKioL1klS3yRYjdvAAApL5MSVbY477.png

  ##利用qq給[email protected]  發送郵件

 *********

  wKioL1klS8DzO7O6AADaihqdiZA565.png

   ##郵件接受成功

 

七、 dovecot

 1.dovecot    用來提供收件協議

   pop3       110

   imap       143  

   imaps      993

   pop3s      995

給定用戶名稱,用戶密碼,dovecot程序代我們去去看郵件

  2.yum  install dovecot  -y   ##安裝dovecot服務

     vim /etc/dovecot/dovecot.conf

   24 protocols = imap pop3 lmtp          ##使用的協議

   48 login_trusted_networks = 0.0.0.0/0    ##允許所有網絡登錄

   49 disable_plaintext_auth = no         ##開啓明文驗證

   30 mail_localtion = mbox:~ /mail:INBOX=/var/mail/%u   ##郵件存放地址

 

  systemctl restart  dovecot  ##重啓服務

#####

  建立用戶soo並切換到soo用戶

  mkdir mail/.imap/ -p   ##遞歸在soo家目錄下建立mail .imap 目錄

  touch mail/.imap/INBOX   ##在.imap目錄下建立INBOX文件

 測試:

  在別的主機安裝  yum  install  mutt  -y   安裝 mutt服務

  mutt  -f  pop://[email protected]

  wKiom1klTpSBaN7-AABENre9ue4155.png

  ####按o 輸入密碼進入

  wKioL1klTvaAYd93AABcvjeeI1c469.png 

 八、雷鳥郵件接收的應用

 *)找到雷鳥安裝包,安裝雷鳥

 *)在應用中找到雷鳥並打開

  wKioL1klVNvDV2X_AAC6Kvym7MI384.png

 wKiom1klVO_DRkf6AAB2n6mCxZY141.png   ##建立用戶後嘗試發送郵件

  wKiom1klVRXTQXUZAADP-WLv28Q398.png

九、利用數據庫對郵件存放進行管理

   1.mv /etc/postfix/main.cf /mnt/    ##備份main.cf文件到mnt目錄

   yum  reinstall  postfix     -y  ##重新安裝postfix生成新的main文件

   安找###postfix##配置main.cf文件

   yum  install  httpd php php-mysql  mariadb-server -y  #安裝所需服務

   systemctl start mariadb    ##開啓數據庫服務器

   vim /etc/my.cnf

    skip-networking=1

   2.安裝php服務,利用網頁管理數據庫在數據庫中建立新的庫及表,網頁管理數據庫方法請查找以前的博客

   wKiom1klVzqhykmSAAE5ITMwP94402.png

  wKiom1klWaiTgGQdAAFDEU_1tqU096.png

  3.mysql  -uroot -predhat  ##root用戶進入數據庫

   create user postuser@localhost identified by 'postuser'  建立新的數據庫用戶本地postuser,密碼爲postuser

  wKiom1klWYiy6O1CAAA94eI4XbA548.png

   grant select,update,insert on mail.* to postuser@localhost;  ##給予postuser用戶權限

   wKiom1klWWjhC2oHAADRnxsuCxk665.png

 4.vim  /etc/postfix/mailuser.cf

  wKioL1klWjejyEhEAABd-hzrtKg193.png

  vim /etc/postfix/maildomain.cf

  wKioL1klWl7guO7SAABbRY46XT0787.png

  vim /etc/postfix/mailbox.cf

  wKiom1klWo2wxEhaAABenPYgyog111.png

  5.配置postfix

   groupadd -g  311  vmail  ##建立vmail組

   useradd -s  /sbin/nologin -u  311  vmail -g  311  ##建立用戶vmail

   vim /etc/postfix/main.cf

    wKioL1klW9ehnH7SAADPDowPC8U932.png

測試:mail [email protected] ##給[email protected]用戶發送郵件

    cat /home/vmail/mnt/soo.com/soo/new/

    wKiom1klXMrQkDwjAABJxpDAHrE678.png

    wKiom1klXNrRC0N6AAEExyRnTiQ444.png

 

十、dovecot+mysql

 yum install dovecot dovecot-mysql -y  ##安裝郵件接收軟件


 vim /etc/dovecot/dovecot.conf     ##配置主配置文件

 24 protocols = imap pop3 lmtp    ##支持的認證方式 lmtp加密協議

 48 login_trusted_network = 0.0.0.0/0     ##信任網絡(允許所有人連接)

 49 disable_plaintext_auth = no      ##允許明文認證

 

 vim  /etc/dovecot/conf.d/10-auth.conf

  123 include auth-sql.conf.ext        ##開啓mysql認證方式

 

 cp /usr/share/doc/dovecot-2.2.10/example-config/dovecot-sql.conf.ext  /etc/dovecot/dovecot-sql.conf.ext

  

  vim /etc/dovecot/dovecot-sql.conf.ext

  32 driver = mysql

  71 connect = host=localhost dbname=email user=postuser password=postuser ##查詢時用到的庫

  78 default_pass_scheme = PLAIN

 107 password_query = \

 108  SELECT username,domain,password \

 109  FROM emailuser WHERE username = '%u' AND domain = '%d'

 125 user_query = SELECT maildir, 311 AS uid, 311 AS gid FROM eamiluser WHERE username = ‘%u’      ##查詢郵件內容

 

  vim /etc/dovecot/conf.d/10-mail.conf

  30 mail_localtion = maildir:/home/vmail/%d/%n     ##指定郵件位置

 168 first_valid_uid = 311

 175 first_valid_gid = 311


 systemctl restart dovecot


測試:

  wKioL1kuXsuyU52uAACGRjugghY508.jpg

 

十一、空殼郵件

  vim /etc/postfix/main.cf

  76 myhotsname = nullmail.example.com

  83 mydomain = example.com

  99 myorigin = westos.com      ##172.25.254.128的域名

 113 inet_interface = all

 164 mydestination = 

 316 relayhost = 172.25.254.128


測試:

 wKiom1kuX7bT3QTQAAAk5kea3oM456.jpg

 wKioL1kuX8SAMv0LAAD18Fclza4302.jpg

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