如何搭建邮件服务器

1、国内的邮件服务提供商:
   亿业科技  http://ui.easeye.com.cn/wiki/index.php/Webservice方法-SendMailListRequestByGroup接口
   EwoMail.com 深圳智沃科技有限公司
 
2、开源方案:
   Postfix+Amavisd+ClamAV+SpamAssassin  能够知足通常的需求,是比较简单的邮件反垃圾病毒解决方案。
  *** MX记录:MX记录存在于域名的 DNS文件中,用于将某个域名的电子邮件指向到对应的邮件服务器处理。
  *** A记录:是用来指定主机名(或域名)对应的IP地址记录。
 
3、你须要知道的软件及功能:
  ***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 调用 

4、实战,在Ubuntu 上安装Zimbra开源版(本部分转自https://cloud.tencent.com/developer/article/1344430)
   

  Zimbra是一个完整的邮件服务器,它提供配置的Postfix与OpenDKIM,Amavis,ClamAV和Nginx,准备处理一个或多个域的邮件。Linode上的Zimbra是您将找到的正常运行的邮件服务器的最快路径之一。本指南将指导您完成Zimbra安装过程。php

注意本指南中所需的步骤须要root权限。请务必以root身份或使用sudo前缀运行如下步骤。有关权限的更多信息,请参阅咱们的用户和组指南。html

设置您的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步),您应该可以使用此账户发送和接收邮件。node

 配置Zimbra服务器

  Zimbra提供了两种管理配置的方法:Web控制台和命令行。命令行界面超出了本指南的范围,但您能够在管理员指南的附录A中找到它,该指南经过管理控制台中的帮助中心进行连接。linux

在管理控制台中,您能够配置新账户的默认设置(Zimbra将其称为“服务等级”或“COS”),添加和管理账户,更改密码以及一般管理邮件服务器。管理控制台具备大多数设置的内置说明。单击输入项的标签,将出现工具提示。单击右下方的“ 更多”按钮,将显示更详细的注释。c++

  
  

注意若是您已登陆Zimbra Webmail页面,也能够访问管理控制台。窗口右上角的账户名旁边的下拉菜单提供了指向管理控制台的连接。web

 全局设置

  您的服务器在安装时已配置,大多数设置将按原样运行。您可能但愿特别访问一些,以控制它愿意与谁交谈并消除某些类型的垃圾邮件。sql

  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安装了一个默认的服务类,它将应用于全部新账户。若是您不须要为不一样的用户组提供不一样的功能或设置,那么这个默认类就是您所须要的。您能够建立其余类,而后根据须要将其分配给用户,以控制其权限,功能访问权限,配额和默认设置。shell

  1. 要在控制台中管理COS,请单击“ 配置”菜单选项。将打开“配置”菜单,而且已选择“服务等级”ubuntu

  

  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页面并在浏览器中显示证书信息。
相关文章
相关标签/搜索