如何搭建郵件服務器


一、國內的郵件服務提供商:
   億業科技  http://ui.easeye.com.cn/wiki/index.php/Webservice方法-SendMailListRequestByGroup接口
   EwoMail.com 深圳智沃科技有限公司
 
二、開源方案:
   Postfix+Amavisd+ClamAV+SpamAssassin  可以滿足一般的需求,是比較簡單的郵件反垃圾病毒解決方案。
  *** MX記錄:MX記錄存在於域名的 DNS文件中,用於將某個域名的電子郵件指向到對應的郵件服務器處理。
  *** A記錄:是用來指定主機名(或域名)對應的IP地址記錄。
 
三、你需要知道的軟件及功能:
  ***postfix:  IBM的GPL協議之下開發的MTA(郵件傳輸代理)軟件。Postfix試圖更快、更容易管理、更安全,同時還與sendmail保持足夠的兼容性。主要競爭對手Exim,Qmail。
  ***Nginx:一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。
     smtp:知道smtplib.SMTP里發生了什么,需要怎么樣的郵件parts,嘗試自己實現smtp服務器。
  ***dkim: 電子郵件驗證標准——域名密鑰識別郵件標准 。
  ***dmarc:DMARC協議是有效解決信頭From偽造而誕生的一種新的郵件來源驗證手段,(為郵件發件人地址提供強大保護),並在郵件收發雙方之間建立起一個數據反饋機制。
     ptr:(Pointer Record ) PTR記錄是電子郵件系統中的郵件交換記錄的一種,常被用於反向地址解析。
       MX record:郵件交換記錄,是域名系統(DNS)中的一種資源記錄類型。
       SPF Record:(Sender Policy Framework)作用發送策略框架,是解決郵件防偽和垃圾郵件的一個新標准。http://ui.easeye.com.cn/EventMail/SPFRecord.aspx
  ***SSL/TLS證書:SSL/TLS證書是什么,證書怎么驗證的、怎么申請、吊銷。
       starttls:(簡稱OE)有時候也稱非認證加密。是一種明文通信協議的擴展,能夠讓明文的通信連線直接成為加密連線(使用SSL或TLS加密),而不需要使用另一個特別的端口來進行加密通信,屬於機會性加密。
  ***Amavisd :是介於MTA(郵件傳輸代理)和郵件分析直接的接口。常和clamav,spamssassin一起使用。
  ***ClamAV: 開源的殺毒軟件,https://hacpai.com/article/1533785819461。
  ***spamassassin:  一種安裝在郵件伺服主機上的郵件過濾器,用來辨識垃圾信。
       Python memoryview 調用 

四、實戰,在Ubuntu 上安裝Zimbra開源版(本部分轉自https://cloud.tencent.com/developer/article/1344430)
   

  Zimbra是一個完整的郵件服務器,它提供配置的Postfix與OpenDKIM,Amavis,ClamAV和Nginx,准備處理一個或多個域的郵件。Linode上的Zimbra是您將找到的正常運行的郵件服務器的最快路徑之一。本指南將指導您完成Zimbra安裝過程。

注意本指南中所需的步驟需要root權限。請務必以root身份或使用sudo前綴運行以下步驟。有關權限的更多信息,請參閱我們的用戶和組指南。

設置您的Linode

  1. 創建一個至少具有4 GB RAM的Linode。有關設置主機的幫助,請參閱“ 入門”
  2. 將Ubuntu 14.04 LTS映像部署到您的Linode。考慮使用少於一半的可用磁盤空間用於第一個映像,另一半用於在更新之前獲取備份映像。您的分區大小取決於您希望處理的帳戶數量和郵件量。部署后,啟動新主機。使用Linode Manager中遠程訪問頁面上顯示的命令和創建Linode時輸入的密碼SSH進入終端。
  3. 您必須在安裝Zimbra之前設置主機名和完全限定的域名(FQDN),並更新/ etc / hosts
  4. 在DNS提供程序中配置DNS條目以提供主機的A記錄,並將域MX記錄指向新服務器。強烈建議使用反向DNS指針,以防止服務器中的郵件被拒絕。有關設置DNS的詳細信息,請參閱運行郵件服務器:DNS記錄

下載Zimbra

  1. 下載最新版本的Zimbra開源版。在安裝之前閱讀發行說明並了解要求和警告是個好主意。選擇Ubuntu 14.04 LTS 64位版本並將其下載到您的Linode wget。要執行此操作,請右鍵單擊瀏覽器中的64位x86鏈接,然后從Zimbra頁面復制該鏈接。將其粘貼到shell命令中並執行它。
    例如:

    wget https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.UBUNTU14_64.20141215151116.tgz
    注意本指南是關於設置新的Zimbra Linode,但如果您要升級現有的Zimbra安裝,請務必閱讀Zimbra提供的發行說明!這些注釋位於您找到該軟件的下載頁面上。升級之前或之后可能需要執行一些步驟。
  2. 以下載Zimbra tarball相同的方式下載SHA256校驗。
  3. 測試校驗。

    sha256sum -c zcs-8.6.0_GA_1153.UBUNTU14_64.20141215151116.tgz.sha256
    如果校驗匹配,則此命令將輸出“OK”。如果沒有,您可能有一個損壞的下載。再次下載並重新檢查。
  4. 將Zimbra應用程序文件解壓縮到Linode root用戶目錄。

    tar xzf zcs-*.tgz

安裝Zimbra

  1. 切換到解壓縮的目錄並運行安裝腳本。

    cd zcs-*  ./install.sh
    檢查一些先決條件后,系統會要求您接受許可協議。請注意,雖然Zimbra OSE是開源的,但它不是GPL。腳本顯示的鏈接允許您閱讀術語。如果您決定不安裝,請將默認回復保留為N,然后按Enter鍵。否則鍵入Y並按Enter繼續。(在運行安裝腳本的任何時候,要接受括號中顯示的默認答案,您只需按Enter鍵。)

    ...  License Terms for the Zimbra Collaboration Suite: http://www.zimbra.com/license/zimbra-public-eula-2-5.html  Do you agree with the terms of the software license agreement? [N]
    回答Y后,腳本會檢查已安裝的軟件並報告任何差異。
  2. 滿足缺少的依賴關系。
    Zimbra將通過MISSING:字段通知您任何缺少的依賴項,如下所示。

    Checking for prerequisites... FOUND: NPTL FOUND: netcat-openbsd-1.105-7ubuntu1 FOUND: sudo-1.8.9p5-1ubuntu1.1 FOUND: libidn11-1.28-1ubuntu2 FOUND: libpcre3-1:8.31-2ubuntu2.1 MISSING: libgmp10 FOUND: libexpat1-2.1.0-4ubuntu1 FOUND: libstdc++6-4.8.4-2ubuntu1~14.04 MISSING: libperl5.18 MISSING: libaio1 FOUND: resolvconf-1.69ubuntu1.1 FOUND: unzip-6.0-9ubuntu1.3  Checking for suggested prerequisites... MISSING: pax does not appear to be installed. FOUND: perl-5.18.2 FOUND: sysstat MISSING: sqlite3 does not appear to be installed.  ###WARNING###  The suggested version of one or more packages is not installed. This could cause problems with the operation of Zimbra.  Do you wish to continue? [N]
    必須先安裝這些依賴項,然后再進一步安裝,所以回答N退出安裝程序並解決問題。例如,安裝以下包將滿足上面輸出中指定的依賴項:

    sudo apt-get install libgmp10 libperl5.18 libaio1 pax sqlite3
  3. 選擇安裝選項。
    安裝缺失的軟件包后,再次啟動安裝程序。Zimbra將繼續安裝。接受所有默認值,zimbra-snmp如果您沒有使用SNMP監視,則可能包含該例外。

    Checking for installable packages  ...  Install zimbra-snmp [Y] n  ...  The system will be modified.  Continue? [N]
    此時,您已經准備好允許安裝,這樣回答ÿ。將安裝軟件包,並將大多數Zimbra設置配置為默認設置。
  4. 配置MX記錄。
    如果您收到有關缺少的MX記錄的錯誤,如下所示,則表示您的域DNS記錄與Zimbra期望找到的內容不匹配,具體取決於您之前配置的主機名。檢查您的/etc/hostname文件和DNS記錄以解決問題。

    DNS ERROR resolving MX for linodemail.example.com It is suggested that the domain name have an MX record configured in DNS Change domain name? [Yes]
    如果您只是測試Zimbra而不是部署,請繼續回答N以跳過更改域名。
  5. 設置管理員密碼和DNS。
    接下來,您將看到主菜單。安裝程序顯示Zimbra的當前設置,並允許您更改它們。輸入要更改的主要部分的編號,將顯示該部分的子菜單。輸入要更改的部分中的項目編號,然后輸入首選值。

    Main menu  1) Common Configuration: 2) zimbra-ldap:                             Enabled 3) zimbra-logger:                           Enabled 4) zimbra-mta:                              Enabled 5) zimbra-dnscache:                         Enabled 6) zimbra-store:                            Enabled     +Create Admin User:                    yes     +Admin user to create:                 admin@linodemail.computassist.net ******* +Admin Password                        UNSET     ...  Address unconfigured (**) items  (? - help)
    默認情況下,不設置管理密碼。要設置密碼,請輸入6以顯示zimbra-store菜單,然后輸入4以在提示符下鍵入新密碼。輸入r返回主菜單。對於DNS,進入zimbra-dnscache菜單,然后更改Master DNSIP地址並返回主菜單。
    注意在UTC上運行郵件服務器是很常見的,因為它們經常接收來自世界各地的郵件。當夏令時啟動或退出時,這有助於跟蹤郵件流,並使查閱日志更容易。如果您願意,您可以選擇使用當地時間。
  6. 完成安裝。
    輸入a以將更改應用於設置。最后,輸入Y繼續安裝。

    *** CONFIGURATION COMPLETE - press 'a' to apply Select from menu, or press 'a' to apply config (? - help) a Save configuration data to a file? [Yes] Save config in file: [/opt/zimbra/config.13935] Saving config in /opt/zimbra/config.13935...done. The system will be modified - continue? [No] y
    安裝程序將開始完成Zimbra安裝的最后步驟,並告知您每個步驟的進度。系統將詢問您是否希望與Zimbra家庭辦公室的人員分享您的新安裝通知。

    You have the option of notifying Zimbra of your installation. This helps us to track the uptake of the Zimbra Collaboration Server. The only information that will be transmitted is:     The VERSION of zcs installed (8.6.0_GA_1153_UBUNTU14_64)     The ADMIN EMAIL ADDRESS created (admin@linodemail.example.com)  Notify Zimbra of your installation? [Yes] Notifying Zimbra of installation via http://www.zimbra.com/cgi-bin/notify.cgi?VER=8.6.0_GA_1153_UBUNTU14_64&MAIL=admin@linodemail.example.com
    安裝完成后,您將看到輸出:

    Configuration complete - press return to exit
  7. 訪問您的郵件服務器。
    使用https訪問瀏覽器中的Linode主機名或IP地址。例如,https://mail.example.com。這將打開登錄頁面。使用安裝期間創建的管理員帳戶和密碼登錄。
    警告由於您尚未安裝受信任的證書,因此您可能會收到有關不受信任的站點的瀏覽器警告。現在繞過警告。稍后您可以將Zimbra的自簽名證書添加到瀏覽器或在Zimbra中安裝可信證書。
    


  如果您配置了相應的DNS記錄(上面設置您的Linode的第4步),您應該能夠使用此帳戶發送和接收郵件。

 配置Zimbra服務器

  Zimbra提供了兩種管理配置的方法:Web控制台和命令行。命令行界面超出了本指南的范圍,但您可以在管理員指南的附錄A中找到它,該指南通過管理控制台中的幫助中心進行鏈接。

在管理控制台中,您可以配置新帳戶的默認設置(Zimbra將其稱為“服務等級”或“COS”),添加和管理帳戶,更改密碼以及通常管理郵件服務器。管理控制台具有大多數設置的內置說明。單擊輸入項的標簽,將出現工具提示。單擊右下方的“ 更多”按鈕,將顯示更詳細的注釋。

  
  

注意如果您已登錄Zimbra Webmail頁面,也可以訪問管理控制台。窗口右上角的帳戶名旁邊的下拉菜單提供了指向管理控制台的鏈接。

 全局設置

  您的服務器在安裝時已配置,大多數設置將按原樣運行。您可能希望特別訪問一些,以控制它願意與誰交談並消除某些類型的垃圾郵件。

  1. 從管理控制台的菜單中,單擊配置,然后單擊全局設置。左側有一個頁面菜單。隨意瀏覽,這里有數百種選擇。
  2. 單擊MTA頁面以配置一些可以控制您將接受郵件的Postfix設置。如果您在自己之外的其他網絡上已知要接受郵件的服務器,則可以將它們添加到MTA可信網絡。將它們作為帶子網的IP地址輸入,用空格分隔,例如“127.0.0.0/8 10.0.0.0/16 12.34.56.78/32”。
  3. 在“ 消息”部分中控制最大郵件大小。以KB為單位輸入限制,因此25 MB將為25600 KB。
  4. 協議檢查他們進入你的系統之前,可以阻止許多垃圾郵件。您可以將它們全部打開,但至少應檢查發件人地址是否完全合格
  5. DNS檢查使用實時黑名單來拒絕來自已知垃圾郵件服務器的郵件。zen.spamhuas.org是一個好的建議開始。在“客戶端RBL列表”中輸入域名。
  6. 單擊AS / AV頁面。在這里,您可以確定如何標記或拒絕郵件的“垃圾郵件”。Zimbra使用SpamAssassin為每條消息打分。得分為零或小於零意味着該消息可能值得傳遞。高於零的分數意味着有一些指標可能是不需要的電子郵件。所述殺死百分比是高於該Zimbra的不會在所有傳遞消息的分數。該標簽%的是分數高於該Zimbra公司將讓通過的消息,但它傳遞到垃圾郵件文件夾。
    這些百分比將根據您的傳入郵件流而有所不同。您必須平衡控制垃圾郵件與獲取好郵件的誤報。此外,這些數字全球適用於您的所有帳戶。實驗將告訴你移動的方式。Zimbra以Kill = 75,Tag = 33開始。你可能會遇到相當多的垃圾郵件。經過大量的測試和超過一年的逐漸走下去,我到達Kill = 20,Tag = 4.請在您自己的條件下測試並學習您自己的最佳值!
  7. 單擊“ 保存”按鈕,然后單擊左上角的“ 主頁”按鈕。
  8. 如果您對全局設置進行了更改,請在繼續之前重新啟動服務器。

 服務類

  Zimbra安裝了一個默認的服務類,它將應用於所有新帳戶。如果您不需要為不同的用戶組提供不同的功能或設置,那么這個默認類就是您所需要的。您可以創建其他類,然后根據需要將其分配給用戶,以控制其權限,功能訪問權限,配額和默認設置。

  1. 要在控制台中管理COS,請單擊“ 配置”菜單選項。將打開“配置”菜單,並且已選擇“服務等級”

  

  2. 雙擊默認 COS,打開“服務等級”頁面。左側有一個頁面菜單。每個頁面都允許您修改此COS的設置。

  

  3. 您需要瀏覽“ 功能”頁面,然后確定要為用戶提供的內容。例如,如果您沒有足夠的存儲空間,限制某些形式的共享或啟用外部POP或IMAP訪問,您可能希望關閉公文包(文件保存和共享)。

  4. 接下來,閱讀首選項,按照您希望的方式為用戶設置每個項目。請記住,所有這些設置僅適用於此類服務,您可以根據需要創建其他類。

  5. 最后,查看“ 高級”頁面。建議設置帳戶配額,即使它相當大,以防止一個用戶占用所有磁盤空間。您可以在此處自定義配額警告消息模板。向下滾動以設置密碼要求,鎖定選項以及垃圾郵件和垃圾郵件保留策略。

  6. 如果需要,您可以繼續添加更多服務類別,並為其他類型的用戶定義所有這些設置。不同的類可以具有不同的配額,訪問更多或更少的功能,或者可能一個組獲得外部IMAP或訪問公文包選項卡。請注意,單個用戶帳戶設置可以覆蓋COS設置。除非您已定義另一個用戶帳戶並在創建帳戶時選擇它,否則將為新用戶帳戶分配默認COS。

 用戶帳戶

  您在安裝Zimbra時收到了管理員帳戶。開源版對您可以擁有的帳戶數量沒有限制。它僅受服務器處理流量的能力的限制。如果您已通過服務等級,則創建另一個帳戶將是熟悉的區域之旅,因為大多數設置都相同,但適用於此個人帳戶。

  創建帳戶

  1. 主頁單擊“ 管理”。將顯示“ 帳戶”頁面。
  2. 單擊右上角的齒輪圖標,然后單擊“ 新建”
  
  

  3. 唯一需要的項目是電子郵件地址和姓氏,但您需要創建臨時密碼,如果您已設置其他密碼,則可能會覆蓋默認COS。

  4. 如果要在此帳戶上顯式設置其他屬性,請單擊“ 下一步”繼續瀏覽頁面。您可以隨時選擇“ 完成”以接受其余屬性的默認值。

  5. 創建帳戶后,即可立即使用。

  管理帳戶

  當用戶忘記密碼時,可以輕松完成重置。

  1. 在“ 管理帳戶”頁面上,右鍵單擊要更改的帳戶,然后單擊“ 更改密碼”

  

  2. 輸入您將發送給用戶的臨時密碼,並單擊必須更改密碼。下次登錄時,系統會提示他們選擇新密碼。

  

 安裝SSL證書

  Zimbra在安裝時創建並使用自簽名SSL安全證書。如果您計划向其他人提供電子郵件服務,則需要從第三方證書頒發機構(CA)安裝可信證書。

 創建證書簽名請求(CSR)

  1. 登錄Zimbra管理控制台
  2. 單擊配置菜單,然后單擊證書
  3. 單擊工具欄中的齒輪圖標,然后選擇“ 安裝證書”
  4. Zimbra證書安裝向導將打開。選擇主域,然后單擊“ 下一步”
  5. 選擇生成證書簽名請求(CSR)的選項,然后單擊“ 下一步”
  6. 有關如何正確填寫表單的詳細信息,請訪問CA的網站並按照其建議操作。通常,您將輸入您的FQDN作為通用名稱,相應的國家/地區,州/省,城市和您自己的組織名稱。如果您的證書僅用於主域,則將備用名稱留空,或者如果您將獲得通配符或多域證書,則輸入域的其他形式(不同的主機,子域)。出於電子郵件的目的,您的證書只需要驗證服務器的FQDN。
  7. 復制CSR文本並完成Zimbra向導,返回到CA的網站並按照其過程購買SSL證書。

 將您的證書安裝到Zimbra。

  1. 在Zimbra管理控制台中,單擊“ 配置”菜單,然后單擊“ 證書”
  2. 單擊工具欄中的齒輪圖標,然后選擇“ 安裝證書”
  3. Zimbra證書安裝向導將打開。選擇主域,然后單擊“ 下一步”
  4. 選擇安裝商業簽名證書的選項,然后單擊“ 下一步”
  5. 再次查看CSR中的信息,然后單擊“下一步”。
  6. 上傳從CA收到的文件。各種CA以不同方式提供證書,中間CA和根CA文件。您可能會收到包含所需內容的ZIP文件,或者您可能需要從其網站下載根CA和中間CA文件。再次,請咨詢CA的網站以正確處理這些文件。獲得所有需要的文件后,使用“證書安裝向導”中的“瀏覽”按鈕上載每個文件。然后單擊下一步
  7. 該向導將安裝新證書。完成后,您可以通過兩種方式確認安裝。在管理控制台中,轉到“ 配置”,“ 證書”,然后雙擊您的服務器名稱。將顯示證書信息。或者,訪問服務器的Zimbra webmail頁面並在瀏覽器中顯示證書信息。


免責聲明!

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



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