1 / 58

臺灣學術網路竹苗區域網路中心 89年網際網路教育訓練及 推廣研習課程 電子郵件系統 ( E-mail) 的 規劃與建置

臺灣學術網路竹苗區域網路中心 89年網際網路教育訓練及 推廣研習課程 電子郵件系統 ( E-mail) 的 規劃與建置. 交 通 大 學 計 算 機 與網路中 心 陳 昌 盛. 課程概要. E-mail 系統管理 入門簡介 E-mail Server 規劃與建置 sendmail, pop3/imap E-mail 系統測試與 偵錯 Anti-SPAM & Anti-virus mail 問題處理與追蹤 . HCRC’2000 網路系統訓練課程 – Unix Mail Server 的規劃與建置.

osmond
Download Presentation

臺灣學術網路竹苗區域網路中心 89年網際網路教育訓練及 推廣研習課程 電子郵件系統 ( E-mail) 的 規劃與建置

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 臺灣學術網路竹苗區域網路中心 89年網際網路教育訓練及推廣研習課程電子郵件系統 (E-mail) 的規劃與建置 交 通 大 學 計 算 機 與網路中 心 陳 昌 盛

  2. 課程概要 • E-mail 系統管理入門簡介 • E-mail Server 規劃與建置 • sendmail, pop3/imap • E-mail 系統測試與偵錯 • Anti-SPAM & Anti-virus mail • 問題處理與追蹤 HCRC’2000 網路系統訓練課程 – Unix Mail Server 的規劃與建置

  3. 0.1 從何處取得E-mail 系統的相關資訊 ? • 關於 sendmail 的網站 • http://www.sendmail.org/ • the O’Reilly DNS bible ‘sendmail’ • Newsgroups: • comp.mail.sendmail, comp.mail.imap,comp.mail.pop3,… • 關於 Qpopper 的網站 • http://eudora.qualcomm.com/freeware/qpop_faq.html • 關於 IMAP 的網站 • http://www.imap.org

  4. 1. E-mail 系統管理入門 • E-mail: Electronic Mail 電子郵件 • E-mail Server: • SMTP server, POP3/IMAP server • SMTP - Simple Mail Transfer Protocol • 用於 server 之間, 電子郵件的交換 • 單純做 E-mail 的接收處理 • POP3 - Post Office Protocol version 3 • IMAP - Internet Mail Access Protocol • Web-based Mail 系統 • WWW+SMTP+IMAP • Anti-SPAM & Anti-virus Mail

  5. 圖 1. 電子郵件接收系統運作圖 網際網路 SMTP-server SMTP server (1) (1b) (1c) 硬碟 POP3/IMAP server (2) • MSIE , Netscape 瀏覽程式

  6. 圖 2 外送電子郵件系統運作示意圖 Internet 網際網路 SMTP server (2) • 電子郵件傳送 server SMTP-server (1) • MSIE, Netscape 等 瀏覽程式

  7. web-mail 系統簡介 • 常見的web-mail 系統 • 國外, Yahoo, Hotmail • 國內, Kimo, Yam, PcHome,… • Web-mail 系統套裝軟體 • Unix 部分 • IMP project, http://www.horde.org/imp • Microsoft 產品 • Exchange+IIS+…

  8. 標準連絡用 e-mail addres • postmaster@your-organization e.g. postmaster@nctu.edu.tw, abuse@nctu.edu.tw, hostmaster@nctu.edu.tw webadmin@nctu.edu.tw

  9. SPAM Mail & DNS • SPAM Mail <=> UCE/UBE (不請自來) • UCE = Unsolicited Commercial E-mail • UBE = Unsolicited Bulk E-Mail • UCE/UBE 散佈途徑 • 名單收錄 • www homepage, USENET news articles • account password files on individual servers • 其他不當途徑 ( program bug, 招募會員活動, …) • 找尋管理較鬆散的 mail relay • Domain Zone scanning ( DNS) • URL scanning (web pages )

  10. 2. Mail server 規劃需求 • Reliability • Load sharing/balancing • Scalability • Mail Delivery Issues

  11. 2.1 E-mail 系統規劃原則 • 出入的 Mail 分流 • E-mail, 收/送系統分開 • 增加系統彈性 • 提昇系統整體使用效能 • 兩段式, 的 e-mail 收送系統 • 使用 mail relay/forwarder • 有效提昇頻寬利用 • 提昇系統的穩定度 (availability/reliability) • 加強系統安全管理

  12. Mail 的接收- 直接傳送模式 Internet incoming • Local SMTP Server Fig.3 Direct Internet mail delivery

  13. Mail 的接收- 間接傳送模式 Internet 區網中心 • Mail Relay Fig.4 Indirect Internet Mail Delivery • Local SMTP Server

  14. Mail 的接收- 混成傳送模式 Internet 區網中心 • Mail Relay Fig.5 Hybrid Internet Mail Delivery

  15. Mail 的接收- 轉送模式 Campus Mail Forwarding server Acer.cis89@nctu.edu.tw Internet Honda.cm90@nctu.edu.tw Fig.6 Mail aliasing/forwarding Grade-90 Mail Server Grade-89 Mail Server

  16. Mail 的寄送- 直接傳送模式 Internet outgoing • Local SMTP Server Fig.7 Direct Internet mail delivery

  17. Mail 的寄送- 間接傳送模式 Internet 區網中心 • Mail Relay Fig.8 Indirect Internet Mail Delivery • Local SMTP Server

  18. 2.2 出入的 Mail 分流 • 分開不同機器 • SMTP Server (outgoing) • POP3/IMAP Server ( incoming ) • 同一機器, 但 incoming 與 outgoing 經由不同 process • /usr/lib/sendmail –bd # incoming jobs • /usr/lib/sendmail -q30m # outgoing jobs

  19. 2.3 Incoming Mail 系統的規劃 • 使用 Mail Relay • DNS 上的相關配合設定 ; e-mail 最終目的地==> E-mail: cschen@cc.nctu.edu.tw cc.nctu.edu.tw. IN MX 10 mgate.nctu.edu.tw. ; mail relay ==> 宜善加利用, 可作為“備援與轉接”之用 cc.nctu.edu.tw. IN MX 20 m-relay.nctu.edu.tw. ;

  20. 2.4 Outgoing Mail 系統的規劃 • 使用 Mail Forwarder • 善用 smart-relay 與 mailertable • 以sendmail 8.10 為例, • Local mail 常見部分, 透過 mailertable 指定傳送 • 其他, 則轉往 smart relay 後續處理

  21. 2.4.1Mailertable 的設定範例 • Sendmail 8.10.x 的 /etc/mail/mailertable cc.nctu.edu.tw smtp:ccms.nctu.edu.tw csie.nctu.edu.tw smtp:smtp.csie.nctu.edu.tw cis.nctu.edu.tw smtp:mail.cis.nctu.edu.tw ; without MX RR lookup math.nctu.edu.tw smtp:[math.nctu.edu.tw]

  22. 2.4.2 Smart Relay 的設定 • Sendmail 8.10.x 的 /etc/mail/sendmail.cf # 將 mail 轉交給底下的 forwarder 處理 # 當 m-fwd 這個系統蓮步上時, 會改連向 m-relay DS m-fwd.nctu.edu.tw:m-relay.nctu.edu.tw

  23. 2.5 Mail Delivery • Normal Spool Directory /var/spool/mail/chen … /var/spool/mail/hsiao • Hash Spool Directory /var/spool/mail/c/chen … /var/spool/mail/h/hsiao

  24. 2.5 Mail Delivery (續) • Local Delivery Agent • mail.local • procmail • Hash Delivery Programs • procmail (delivery agent) • qpopper ( daemon; extracting)

  25. 2.6 特殊處理 • 轉送信件 (Mail forwarding) • 系統端 Aliasing/forwaring Honda.cis89@nctu.edu.tw cisco.cm90@nctu.edu.tw • 用戶端 ($home/.forward) • 特殊退信 • 故意不接收退信

  26. 2.6 特殊處理(續) • 故意不接受回信的實例 • morris@admail.acer.net • Sendmail 的處理範例 • /etc/mail/mailertable admail.acer.net local: null-user • /etc/mail/aliases # null-user: /dev/null

  27. 3. E-mail 系統的規劃與建置 • SMTP server • 幾乎個 Unix 系統都 有內建 • 最新正式版本 Sendmail 8.10.1 • 常見 pop3/IMAP server • qpopper 2.53 (通常必須另行安裝) • Imap 4.7, (通常必須另外安裝)

  28. 3.1 Sendmail 8.10.x 的安裝 (1) • 取得原始程式 • http://www.sendmail.org • ftp://ftp.sendmail.org • 解開壓縮檔, 並還原程式原始檔 • gzip –d sendmail.10.1.tar.gz • tar xvf sendmail.10.1.tar • 製作及編輯 ‘自訂組態檔’ • cd $src/sendmail-8.10.1/devtools/Site • vi site.config.m4 ( 也可以不設 )

  29. Sendmail 8.10.x 的安裝 (2) • 開始編譯 • cd $src; • sh ./Build –c • 安裝 • cd $src; • sh ./Build install

  30. Sendmail 8.10.x 設定檔的製作 • 製作設定控制檔 (參見後列範例) • cd $src/cf/cf; cp generic-MyOS.mc MySite.mc • vi MySite.mc • 製作主要設定檔 (參見後列範例) • cd $src/cf/domain; cp generic.m4 MyDomain.m4 • vi MyDomain.m4 • 產生設定控制檔 • cd $src/cf/cf; m4 ../m4/cf.m4 MySite.mc > MySite.cf • cp MySite.cf /etc/mail/sendmail.cf

  31. MySite.mc 控制設定檔範例 • $src/cf/cf/cc.Nctu.edu.tw.mc 設定檔 divert(0)dnl VERSIONID(`$Id: nctucc-solaris2.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') OSTYPE(solaris2)dnl DOMAIN(cc.NCTU.edu.tw)dnl MAILER(local)dnl MAILER(smtp)dnl MAILER(procmail)dnl

  32. MyDomain.m4 (1) divert(0) VERSIONID(`$Id: cc.NCTU.edu.tw.m4,v 8.15 1999/04/04 00:51:09 ca Exp $') define(`confMAILER_NAME',`NCTUCC6-Mailer-Daemon')dnl define(`confDOMAIN_NAME',`cc.Nctu.edu.tw')dnl define(`SMART_HOST', `M-Fwd.NCTU.edu.tw:M-relay.NCTU.edu.tw')dnl define(`confMAX_MESSAGE_SIZE',`10000000')dnl define(`confFORWARD_PATH',`/home2/mailforward/$u')dnl define(`confMAX_MIME_HEADER_LENGTH', `256/128')dnl define(`confMAX_HEADERS_LENGTH', `32768')dnl define(`confPRIVACY_FLAGS',`noexpn novrfy')dnl define(`confMAX_HOP',`17')dnl

  33. MyDomain.m4 (2) • 續上頁 define(`confMCI_CACHE_SIZE',`3')dnl undefine(`confTO_IDENT')dnl define(`confTO_QUEUERETURN',`2d')dnl undefine(`confTO_QUEUEWARN')dnl define(`confMAX_DAEMON_CHILDREN',`20')dnl define(`confCONNECTION_RATE_THROTTLE',`2')dnl define(`confDEF_CHAR_SET',`iso-8859-1')dnl define(`confMAX_RCPTS_PER_MESSAGE',`20')dnl define(`confPROCMAIL_MAILER_MAX',`10000000')dnl

  34. MyDomain.m4 (3) • 續上頁 FEATURE(redirect)dnl FEATURE(`local_procmail',`/usr/bin/procmail')dnl FEATURE(use_cw_file)dnl FEATURE(`mailertable', `hash /etc/mail/mailertable')dnl FEATURE(accept_unqualified_senders)dnl FEATURE(access_db, hash /etc/mail/access)dnl FEATURE(`blacklist_recipients')dnl FEATURE(masquerade_envelope)dnl FEATURE(dnsbl)dnl MASQUERADE_AS(cc.NCTU.edu.tw)dnl EXPOSED_USER(`root')dnl

  35. Sendmail 8.10.x 的設定 • /etc/mail 子目錄 • /etc/sendmail.cf 的設定 (text file) • 關於 anti-relaying 的設定 • /etc/mail/relay-domains (text file) • /etc/mail/access (database)

  36. /etc/mail/access 的設定 • Sendmail Anti-SPAM 設定 (ccserv6.cc.nctu.edu.tw 上的設定範例) cc.nctu.edu.tw relay # UCE/UBE ms.new.net.tw REJECT ts30.hinet.net DISCARD dialup.seed.net.tw DISCARD cqsam@saturn.seed.net.tw DISCARD • 使用指令 makemap hash access < /etc/mail/access

  37. 3.2 POP3 server的安裝 • 取得 qpopper 3.0-betaX 的程式 • 解壓縮, 再展開還原 • gzip -d qpopper3*tar.gz • tar xvf qpopper3*.tar • 編譯及安裝 (或直接取得執行檔) • cd $src • ./configure • make • make install

  38. POP3 server的安裝(續) • 自訂的 mkconfig script #! /bin/sh # remober to remove the "-O2" flag on the script 'configure' # Or, the AFS library will malfunction ./configure --enable-debugging --enable-servermode --enable-specialauth • 安裝完成後, 必須修改的系統設定 • 編輯 /etc/services pop3 110/tcp # Post Office • 編輯 /etc/inetd.conf pop3 stream tcp nowait root /usr/local/lib/qpopper qpopper -s

  39. 3.3 IMAP 與 POP3 簡單比較 • POP3 • 僅支援離線(off-line)閱讀 • 所有 e-mail 完全下載 • 較為普及 (因發展較早, 系統叫簡單) • 系統安全性較差 (取信密碼是明碼) • IMAP • 可涵蓋 POP3 所有離線功能 • 系統普及度較差 (因發展較晚, 系統較複雜) • 系統安全性較佳 (支援多種密碼) • DES, MD5, Kerborose

  40. IMAP 與 POP3 簡單比較(續) • IMAP (續) • 可支援在線(on-line) 閱讀 • 標題與本文, 兩段式閱讀 • 網路信件夾的觀念 (在不同系統間搬動) • 可同時支援多個不同的 server 帳號 • 支援網路漫遊(roaming) 取信服務 • Web-mail 基本上, 主要以 IMAP 類似的系統為主

  41. 4. E-mail 系統測試與偵錯 • 系統記錄檔 • 參考 /etc/syslog.conf 的設定 • SMTP server 的測試 • 以 sendmail 8.10.1 為例 • POP3 server 的測試 • 以 安裝 qpopper 3.0bXX 為例

  42. SMTP server 的簡易測試 % telnet ns1.nctu.edu.tw 25 Trying... Connected to ns1.nctu.edu.tw. Escape character is '^]'. 220 ns1.nctu.edu.tw ESMTP Sendmail 8.10.0/8.10.0; Sun, 4 Jun 2000 10:38:33 +0800 (CST) Quit 221 Nctu.EDU.TW closing connection Connection closed by foreign host.

  43. SMTP server 的簡易測試 (2) • SMTP server 並沒有跑起來 % ping ccserv.cc.nctu.edu.tw ccserv.cc.nctu.edu.tw is alive % telnet ccserv.cc.nctu.edu.tw smtp Trying 140.113.4.1... telnet: Unable to connect to remote host: Connection refused %

  44. Pop3 server 的簡易測試 % telnet ns1.nctu.edu.tw 110 Trying... Connected to ns1.nctu.edu.tw. Escape character is '^]'. +OK POP3 ns1 v7.59 server ready quit +OK Sayonara Connection closed by foreign host.

  45. Pop3 server 的簡易測試(2) • POP3 server 沒有跑起來 % ping ccserv.cc.nctu.edu.tw ccserv.cc.nctu.edu.tw is alive % telnet ccserv.cc.nctu.edu.tw pop3 Trying 140.113.4.1... telnet: Unable to connect to remote host: Connection refused %

  46. Sendmail 的系統記錄檔 Jul 20 19:30:24 ccserv6 sendmail[1591]: tcpwrappers (unknown, 210.209.58.9) rejection Jul 20 19:30:24 ccserv6 sendmail[1591]: NOQUEUE: Null connection from [210.209.58.9] Jul 20 19:30:31 ccserv6 sendmail[1624]: TAA01624: from=<zacker@ms25.hinet.net>, size=6553, class=0, pri=36553, nrcpts=1, msgid=<000001bed2a2$3aff0900$150c708c@308-3.ce.ntu.edu.tw>, proto=ESMTP, relay=root@dns2.ce.ntu.edu.tw [140.112.13.211] Jul 20 19:30:35 ccserv6 sendmail[1628]: TAA01628: from=<pcyu@alab.ee.nctu.edu.tw>, size=1272, class=0, pri=31272, nrcpts=1, msgid=<002f01bed2a2$3c59b700$0a41808c@PC_010.hsm.cmc.edu.tw>, bodytype=8BITMIME, proto=ESMTP, relay=pcyu@alab05.ee.nctu.edu.tw [140.113.218.5] Jul 20 19:30:36 ccserv6 sendmail[1629]: TAA01628: to=<pearl@cc.nctu.edu.tw>, delay=00:00:01, xdelay=00:00:01, mailer=local, stat=Sent Jul 20 19:30:37 ccserv6 sendmail[1625]: TAA01624: to=<u8533086@cc.Nctu.EDU.TW>, delay=00:00:06, xdelay=00:00:05, mailer=local, stat=Sent #

  47. POP3 server 系統記錄檔 Jul 20 19:31:29 ccserv4 popper[6306]: Stats: inet 0 0 0 0 Jul 20 19:31:50 ccserv4 popper[6307]: Stats: u8612540 22 565900 0 0 Jul 20 19:31:51 ccserv4 popper[6308]: Stats: u8414801 0 0 3 9043 Jul 20 19:32:26 ccserv4 popper[6313]: Stats: wangcc 4 76748 0 0 Jul 20 19:32:35 ccserv4 popper[6314]: u8414801@a-121.RAS.NCTU.edu.tw: -ERR POP EOF received Jul 20 19:32:35 ccserv4 popper[6314]: Stats: u8414801 0 0 3 9043 Jul 20 19:32:36 ccserv4 popper[6315]: (v2.53) Unable to get canonical name of client, err = 0 Jul 20 19:32:47 ccserv4 popper[6317]: Stats: u8724508 0 0 0 0

  48. 5. Anti-SPAM & Anti-virus Mail • SPAM Mail 防治 • Mail Server 端, 進行掃毒 • Cf. 用戶端掃毒 (安裝 anti-virus 軟體 ) • Mail Server 進行 SPAM-mail 防治 • Cf. 用戶端, anti-spam mail ( 使用過濾程式)

  49. 5.1Anti SPAM Mail & DNS ACL • SMTP server upgrade/patch • 限定 mail relaying 對象 • DNS 設ACL • 可相當程度阻擋不特定的 relay 嘗試 • 系統管理人員介入 • 聯絡相關系統的管理人員 • rbl 建立 (Real-time Block List )

  50. 5.2 Mail Server 端掃毒 • Sendmail 與電腦病毒防治 • 配合 procmail , 掃描信件的 header • 可局部對付 iloveyou 之類的 script 型態的 worm/virus • procmail 是 delivery agent, 可適度進行 filtering • 使用 queuing mode, 搭配掃毒軟體, 進行病毒掃描偵測任務

More Related