邮件服务器搭建内容整理

PHPer 2022-06-04 40 0 0

这里做下邮件服务器的内容整理 20220604...

立即注册

更新于:2022-06-10 17:01:02
    您需要登录后才可以评论。 立即注册

    Linux利用mail-in-a-box搭建自己的域名邮箱(全流程完整版,包括添加SSL)

    注意mail-in-a-box的域名就用默认的box.yourdomian,改了的话,很多地方要改。 另外,mail-in-a-box只支持Ubuntu 18.04,不支持其他的Linux系统版本

    刺猬 2019-06-27

    Mail-in-a-Box lets you become your own mail service provider in a few easy steps. It’s sort of like making your own gmail, but one you control from top to bottom.
    现阶段的免费邮件服务比较多,博主也尝试过一些进行安装,比如经典的vesta面板自带邮局、国内开源的ewomail、winwebmail、zimbra、mailinabox 等等,大多都能正常配置。

    但是总是发现smtp有问题,具体问题为接入一些常见的应用进行发信就会出现错误。所以今天给大家推荐这款:Mail-in-a-Box。

    系统要求:

    操作系统:Ubuntu 18.04 x64内存:最低512MB。
    

    安装前的准备:

    一,在域名解析商那里配置DNS,下面是至少要配置的

    A记录     box              IP
    A记录     ns1.box          IP
    A记录     ns2.box          IP 
    TXT记录   _dmarc           v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;
    TXT记录   *._domainkey     v=DKIM1; p=
    TXT记录   @                v=spf1 -all
    MX记录    @                box.yourdomain      优先级10
    

    二,在服务器主机商那里去设置DNS反解析,国内的很多要联系客服设置,国外的不少都支持用户自己在主机管理设置,比如vultr.com等等。

    找到Reverse DNS,如果有了的话就更改,没有的话就添加:前面是输入IP 后面是输入box.yourdomain

    安装:

    安装Mail-in-a-Box非常简单,官方提供了一键安装包:

    curl -s https://mailinabox.email/setup.sh | sudo bash
    

    请务必使用root用户进行安装。

    安装过程过,会出现以下提示:

    b73e4445c6-1_normal.jpg

    此界面请输入管理员邮箱,此邮箱为后台用户名,也是第一个邮箱用户。请务必记录下来。

    回车后,会出现第二个页面:

    7a334596d6-2_normal.jpg

    这个页面是地址是管理地址,后台、邮箱、云服务地址都在此页面中。

    然后等待系统自动安装完成即可,期间可能会有报错,比如下面这样

    Firewall is active and enabled on system startup
    Failed to restart systemd-resolved.service: Unit systemd-resolved.service is masked.
    

    我们执行下面命令就可以解决...

    立即注册
    更新于:2022-06-11 14:01:09

    使用EwoMail 邮件服务器软件搭建邮件服务器(在Centos Stream 8上安装失败,在Centos 7.9上安装成功)

    在Centos Stream 8上尝试安装EwoMail 邮件服务器软件,repo源一直出问题 更换操作系统为Centos 7.9,再安装EwoMail 邮件服务器,OK啦 开源免费版不能用POP3和STMP发系统邮件的功能,果断放弃了。

    炸,锅,2G内存好像安装不上(已实测2G内存Centos7.9安装上了EwoMail 20220611)

    安装根据手册 http://doc.ewomail.com/docs/ewomail/install

    安装开始时提示mysql已安装

    [root@10-7-188-37 ~]# cd /root/EwoMail/install
    [root@10-7-188-37 install]# sh ./start.sh  yourdomian
    ./start.sh: line 20: [: too many arguments
    mysql installed, installation failed
    [root@10-7-188-37 install]#
    

    安装中断,于是又卸载了mysql,

    安装开始后,前面挺顺利,但是后面又报错有应用安装不上

    忘记把代码复制贴过来了

    未完待续 2020602

    来了,上报错代码

    [root@10-7-118-170 ~]# cd /root/EwoMail/install
    [root@10-7-118-170 install]# sh ./start.sh   yourdomain
    setenforce: SELinux is disabled
    ./start.sh: line 20: [: too many arguments
    Last metadata expiration check: 0:15:39 ago on Fri 03 Jun 2022 05:28:04 AM HKT.
    Package epel-release-8-15.el8.noarch is already installed.
    Dependencies resolved.
    Nothing to do.
    Complete!
    0 files removed
    ./start.sh: line 162: [: too many arguments
    Extra Packages for Enterprise Linux 8 - x86_64               0.0  B/s |   0  B     00:00    
    Errors during downloading metadata for repository 'epel':
      - Curl error (6): Couldn't resolve host name for https://download.example/pub/epel/8/Everything/x86_64/repodata/repomd.xml [Could not resolve host: download.example]
    Error: Failed to download metadata for repo 'epel': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
    Extra Packages for Enterprise Linux 8 - x86_64               0.0  B/s |   0  B     00:04    
    Errors during downloading metadata for repository 'epel':
      - Curl error (7): Couldn't connect to server for https://download.example/pub/epel/8/Everything/x86_64/repodata/repomd.xml [Failed to connect to download.example port 443: Connection refused]
      - Curl error (6): Couldn't resolve host name for https://download.example/pub/epel/8/Everything/x86_64/repodata/repomd.xml [Could not resolve host: download.example]
    Error: Failed to download metadata for repo 'epel': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
    amavisd Installation failed
    [root@10-7-118-170 install]#
    

    又报错啦

    更换yum源为Centos-vault

    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
    yum clean all && yum makecache
    

    好 ,再试试

    cd /root/EwoMail/install
    [root@10-7-118-170 install]# cat /etc/centos-release
    CentOS Stream release 8
    [root@10-7-118-170 install]# sh ./start.sh  yourdomain
    setenforce: SELinux is disabled
    ./start.sh: line 20: [: too many arguments
    Last metadata expiration check: 0:11:16 ago on Fri 03 Jun 2022 05:54:28 AM HKT.
    Package epel-release-8-15.el8.noarch is already installed.
    Dependencies resolved.
    Nothing to do.
    Complete!
    sed: can't read /etc/yum.repos.d/epel.repo: No such file or directory
    sed: can't read /etc/yum.repos.d/epel-testing.repo: No such file or directory
    0 files removed
    ./start.sh: line 162: [: too many arguments
    Last metadata expiration check: 0:11:19 ago on Fri 03 Jun 2022 05:54:28 AM HKT.
    No match for argument: oniguruma-devel
    Package libtool-ltdl-2.4.6-25.el8.x86_64 is already installed.
    Package freetype-2.9.1-4.el8_3.1.x86_64 is already installed.
    Package libpng-2:1.6.34-5.el8.x86_64 is already installed.
    Package libjpeg-turbo-1.5.3-12.el8.x86_64 is already installed.
    Package unzip-6.0-46.el8.x86_64 is already installed.
    Package wget-1.19.5-10.el8.x86_64 is already installed.
    Error: Unable to find a match: oniguruma-devel
    Last metadata expiration check: 0:11:20 ago on Fri 03 Jun 2022 05:54:28 AM HKT.
    Error: 
     Problem: conflicting requests
      - nothing provides perl(Digest::SHA1) needed by amavisd-new-2.12.0-1.el8.noarch
      - nothing provides perl(IO::Stringy) needed by amavisd-new-2.12.0-1.el8.noarch
    (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
    amavisd Installation failed
    [root@10-7-118-170 install]#
    

    又报错Error: Unable to find a match: oniguruma-devel ...

    立即注册
    更新于:2022-06-11 12:39:22

    基于CentOS7 Centos8平台搭建邮件服务器

    EwoMail​在Centos8上安装了,各种坑,各种报错。这个集成包太臃肿了。官网建议是在Centos7上安装 ,在Centos7上安装了下,安装的挺顺利 20200416 EwoMail 已经弃用,国内的一家公司搞的产品,免费版的不支持stmp和pop3自动发送邮件,改用mail-in-a-box(只支持Ubuntu 18.04)。 20200418

    基于CentOS7平台搭建邮件服务器

    https://blog.51cto.com/jiayimeng/2416421


    centos7搭建postfix邮件服务器

    https://www.cnblogs.com/operationhome/p/9056870.html

    Postfix的简介

    是一种电子邮件服务器,它是由任职于IBM华生研究中心的荷兰籍研究员Wietse Venema为改良sendmail邮件服务器而产生的。最早在1990年代晚期出现,是个开放源代码的软件。


    在 Red Hat Enterprise Linux 或 CentOS 系统上安装 iRedMail

    https://docs.iredmail.org/install.iredmail.on.rhel-zh_CN.html

    系统要求

    Warning

    阿里云、腾讯云均禁止使用邮件服务所必须的 25 端口提供邮件服务,因此您不能在 它们的云服务器部署邮件服务器。

    Warning

    iRedMail 只针对全新安装的操作系统设计,它要求你的操作系统上没有事先 安装邮件服务相关的组件,例如 MySQL,OpenLDAP,Postfix,Amavisd,等。 iRedMail 会自动安装和配置邮件服务所需的组件,因此如果操作系统上已有相关 组件,iRedMail 可能会打乱你的配置并造成服务无法正常启动。

    要在 Red Hat Enterprise Linux (以下简称 RHEL)或 CentOS 上安装 iRedMail,你需要:

    • 一个全新安装的 RHEL 或 CentOS 系统。支持的版本号在下载页面有注明。
    • 要运行一个低流量的邮件服务器,要求至少2 GB内存才能使用完整的垃圾邮件和病毒扫描功能。

    未完待续,有空继续找搭建邮件服务器的资料和文章 20200414


    ...

    立即注册
    更新于:2022-07-05 11:49:22

    使用EwoMail搭建属于自己的个人邮件服务器——超详细图文教程

    hostnamectl set-hostname mail.chawen.org cd /root/EwoMail/install sh ./start.sh chawen.org -f

    详情链接:https://wokan.chawen.org/post/1263...

    立即注册
    更新于:2022-07-05 11:45:41

    如何在 CentOS 8 上安装和配置 Postfix 邮件服务器

    试了ewomail,ewomail-lamp install failed。安装失败,各种失败,各种报错。一家深圳的公司搞的。 试了mail-in-a-box/mailinabox Mail-in-a-Box only supports being installed on Ubuntu 18.04, sorry. You are running: setup/preflight.sh: line 14: lsb_release: command not found 各种坑,邮件服务器不是好搭的 20200416 03:18

    https://zhuanlan.zhihu.com/p/92890899

    Postfix 是一个自由开源的 MTA(邮件传输代理),用于在 Linux 系统上路由或传递电子邮件。在本指南中,你将学习如何在 CentOS 8 上安装和配置 Postfix。-- James Kiarie(作者)

    Postfix 是一个自由开源的 MTA(邮件传输代理),用于在 Linux 系统上路由或传递电子邮件。在本指南中,你将学习如何在 CentOS 8 上安装和配置 Postfix。

    实验室设置:

    步骤 1)更新系统

    第一步是确保系统软件包是最新的。为此,请按如下所示更新系统:

    # dnf update

    继续之前,还请确保不存在其他 MTA(如 Sendmail),因为这将导致与 Postfix 配置冲突。例如,要删除 Sendmail,请运行以下命令:

    # dnf remove sendmail

    步骤 2)设置主机名并更新 /etc/hosts

    使用下面的hostnamectl命令在系统上设置主机名:

    # hostnamectl set-hostname server1.crazytechgeek.info
    # exec bash

    此外,你需要在/etc/hosts中添加系统的主机名和 IP:

    # vim /etc/hosts
    192.168.1.13   server1.crazytechgeek.info

    保存并退出文件。

    步骤 3)安装 Postfix 邮件服务器

    验证系统上没有其他 MTA 在运行后,运行以下命令安装 Postfix:

    # dnf install postfix
    88970d9175_normal.jpgInstall-Postfix-Centos8

    步骤 4)启动并启用 Postfix 服务

    成功安装 Postfix 后,运行以下命令启动并启用 Postfix 服务:

    # systemctl start postfix
    # systemctl enable postfix

    要检查 Postfix 状态,请运行以下systemctl命令:

    # systemctl status postfix
    ca73c1fea5_normal.jpgStart-Postfix-check-status-centos8

    太好了,我们已经验证了 Postfix 已启动并正在运行。接下来,我们将配置 Postfix 从本地发送邮件到我们的服务器。

    步骤 5)安装 mailx 邮件客户端

    在配置 Postfix 服务器之前,我们需要安装mailx,要安装它,请运行以下命令:

    # dnf install mailx
    54c77ffb34_normal.jpgInstall-Mailx-CentOS8

    步骤 6)配置 Postfix 邮件服务器

    Postfix 的配置文件位于/etc/postfix/main.cf中。我们需要对配置文件进行一些修改,因此请使用你喜欢的文本编辑器将其打开:

    # vi /etc/postfix/main.cf

    更改以下几行:

    myhostname = server1.crazytechgeek.info
    mydomain = crazytechgeek.info
    myorigin = $mydomain
    ## 取消注释并将 inet_interfaces 设置为 all##
    inet_interfaces = all
    ## 更改为 all ##
    inet_protocols = all
    ## 注释 ##
    #mydestination = $myhostname, localhost.$mydomain, localhost
    ## 取消注释 ##
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
    ## 取消注释并添加 IP 范围 ##
    mynetworks = 192.168.1.0/24, 127.0.0.0/8
    ## 取消注释 ##
    home_mailbox = Maildir/

    完成后,保存并退出配置文件。重新启动 postfix 服务以使更改生效:

    # systemctl restart postfix

    步骤 7)测试 Postfix 邮件服务器

    测试我们的配置是否有效,首先,创建一个测试用户。

    # useradd postfixuser
    # passwd postfixuser

    接下来,运行以下命令,从本地用户pkumar发送邮件到另一个用户postfixuser

    # telnet localhost smtp
    或者
    # telnet localhost 25

    如果未安装 telnet 服务,那么可以使用以下命令进行安装:

    # dnf install telnet -y

    如前所述运行命令时,应获得如下输出:

    [root@linuxtechi ~]# telnet localhost 25
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    220 server1.crazytechgeek.info E***TP Postfix

    上面的结果确认与 postfix 邮件服务器的连接正常。接下来,输入命令:

    # ehlo localhost

    输出看上去像这样:

    250-server1.crazytechgeek.info
    250-PIPELINING
    250-SIZE 10240000
    250-VRFY
    250-ETRN
    250-STARTTLS
    250-ENHANCEDSTATUSCODES
    250-8BITMIME
    250-DSN
    250 ***TPUTF8

    接下来,运行橙色高亮的命令,例如mail fromrcpt todata,最后输入quit:...

    立即注册
    更新于:2022-06-04 10:38:55

    0成本,一招永久解决自建邮件服务器被退信问题

    不知道怎么样,去试试

    相信很多有NAS喜欢折腾的同学,在自己家里搭建过Mail server,但都有一个绕不开的话题,那就是发送邮件时有很大的概率会被退信。其中有一个很重要的原因(配置问题导致的不在本次讨论之列),就是因为我们的域名或IP被防垃圾邮件机构(如spamhaus)列入了不信任清单。网上也有各种申请移除的方法,但我们家用的一般为动态IP,每次都走一遍移除的手续很麻烦。有没有能永久解决退信的问题,答案是肯定的:有!

    解决思路

    既然知道了被退回的原因,那我们就尝试找解决的办法。通过中继服务器发送邮件是一个不错的选择,这样可以解决信任问题,但现在市面上提供中继服务的都是收费的,我尝试了很多,最后选定的是亚马逊的Amazon SES产品,虽然也是商业化产品,但免费套餐包中每月出站62000条,入站1000条的量,已足以满足个人日常收发邮件的需求。我个人用了两年时间,至今没产生1分钱费用。如果有人觉的是在做广告,慢走不送,谢谢。

    c08a0512ca_normal.jpg

    但这个解决方案有一个前提条件:就是NAS上已经搭建好了邮件服务器,能正常收发邮件,只不过发出去的很多邮件会被退回或拒收。至于如何在NAS上搭建和配置邮件服务器,可以自行度娘,或者有时间了我也出个搭建的过程分享。目前,该方案在Mail-tester上的得分为9.9分。

    7e57ab2d0e_normal.jpg

    特别声明

    以上方法只解决因IP不被信任或拉黑而导致的被退信,不能解决所有的退信问题。同时该方法是由本人尝试后目前在用的方案,但并不对按此方案部署引起的任何问题负责。

    亚马逊Amazon SES申请流程及注意事项

    1、登录亚马逊官网的AWS频道,在客户参与下找到Amazon SES

    bd4617f250_normal.jpg

    2、点Amazon SES入门,在弹出页面点创建新AWS账户

    548abbc8fe_normal.jpg cc6f0977ea_normal.jpg

    3、按照提示创建一个新AWS账户,其中支付环节选定一种支付方式(会做扣款验证),支持计划先择免费后完成注册

    5a0bafa00e_normal.jpg 35bd5aef59_normal.jpg

    4、回到刚才的注册窗口,选择根用户登录。注意:不是所有区域都支持SES服务,需要在右上角选择一个比较近的区域登入

    cd319e74b7_normal.jpg 420d3ffb96_normal.jpg

    5、确认区域后,在左侧找到SES服务点进去

    66e528af87_normal.jpg

    6、在Domain页面填入自己邮件服务器的域名

    958222c160_normal.jpg

    7、在域名管理后台,增加4条解析记录。下面第1张图是弹层,CNAME记录少1条,关闭弹层后,以页面上的3条CNAME记录为准(第2张图)

    d5b2528c82_normal.jpg 5c404a9010_normal.jpg 43f6798c30_normal.jpg

    8、之后系统会自动完成认证,到此,基础的服务配置就算完成了...

    立即注册
    更新于:2022-06-06 10:27:59

    CloudFlare CDN 使用教程 启用 DNSSCE

    不少站长都遇到过DNS劫持和污染的情况~莫名其妙的自己的域名就指向了乱七八糟的网站~运气背点的域名直接就没了~所以在防止dns劫持上未雨绸缪是非常有必要的~今天带来Cloudflare免费配置DNSSEC的教程~

    DNSSEC说明

    DNSSEC是Domain Name System Security Extensions 的简称~翻译为DNS安全扩展,是由IETF提供的一系列DNS安全认证的机制(可参考RFC2535)。它提供了一种来源鉴定和数据完整性的扩展,但不去保障可用性、加密性和证实域名不存在。换一个大家都能理解的说法~DNSSEC与DNS的关系 就如同HTTPS和HTTP的关系~

    DNSSEC 是 DNS 协议的扩展,允许签名 DNS 数据以保护域名解析过程的安全。欲了解有关 DNSSEC 和其用途的信息,请访问ICANN 网站https://tools.ietf.org/html/rfc6781

    开启后邮件被拒收的可能性会降低。

    在CloudFlare的DNS配置找到DNSSCE设置,点击Enable DNSSCE

    d029836a1d-qq-jie-tu20220610164900_normal.jpg ...

    立即注册
    更新于:2022-06-10 18:06:22
    相关内容

    上网服务器搭建时遇到的问题

    CentOS7下解决ifconfig command not found的办法

    CentOS 7安装锐速高速上网

    切换使用锐速和BBR加速时遇到的问题failed to dial to (wss:// *** ) 502...

    服务器加速的解决方案

    使用V2Ray的mKCP协议加速游戏

    Quick and easy VPNs with WireGuard

    v2rayN已停止工作

    服务器搭建

    centos7用yum搭建LAMP环境之一

    CentOS 7 安装 LNMP 环境,sh脚本一键安装

    安装phaclon遇到的各种问题。

    LNMP的那些事情

    centos7安装openssl

    Centos系统在Apache服务器上安装SSL证书

    Centos7.4 修改MySQL5.7 root 密码

    2020在godaddy首页上看到企业建站服务

    邮件发送报错No IDN encoder found(install the intl extension or the tr...

    yum安装php扩展intl报错:Error: php71w-common conflicts with php-comm...

    如何在CentOS上安装PHP intl扩展?

    服务器选择-阿里云轻量应用服务器 轻量应用服务器 (香港节点丢包严重,延迟25ms)

    阿里云香港服务器和大陆服务器区别在哪,如何选择

    关于网站的robots文件以及robots文件在线生成工具

    robots.txt 不让搜索引擎收录网站的方法

    Yii2生成sitemap,yii2-sitemap-module Yii2 module for automatically ...

    验证谷歌站长平台 – GOOGLE SEARCH CONSOLE 验证流程

    centos7下自动备份mysql数据库

    谷歌站长平台实测网站

    CentOS 7中看PHP运行时的Log文件日志信息

    Linux设置Swap虚拟内存方法

    CentOS 7一键安装桌面环境命令(可远程RDP连接)

    如何在 CentOS8/RHEL8 上安装配置 VNC 服务器

    查问我看服务器搭建和使用中遇到的问题

    服务器搭建2

    mysql报错问题解决MySQL server PID file could not be found!

    找了半天找不到看着靠谱的centos8开机启动后运行的脚本

    LAMP一键安装包安装的时候方便,增加开机启动的时候出了问题

    一键安装,用sh一键安装LAMP

    QQ授权码(更改QQ密码以及独立密码会触发授权码过期)

    FileZilla设置主密码保护FTP密码,服务器主机网站更安全了。

    linux配置多个ssl证书,Apache 配置多个HTTPS站点(202204亲测)

    服务器搭建3

    CentOS8下yum安装LNMP

    Linux查看端口使用状态、关闭端口方法

    LNMP与LAMP有哪些区别,安装哪个好?

    Centos杀死进程kill方法大全

    CentOS如何查看端口是否被占用

    xampp更改mysql数据库密码

    Vultr主机Centos Stream8系统上修改 Root 密码的方法(2022年版)

    Centos Stream8上安装ImageMagick和php的imagick扩展

    在 CentOS 7 上搭建属于自己的 “完美” 邮件系统

    Vultr如何发工单联系客服(2022年6月最新版)

    Could not get lock /var/lib/dpkg/lock-frontend Linux系统 sudo apt upda...

    Ubuntu Linux服务器安装图形化界面并用VNC Viewer连接(2022年6月实测有效)

    Centos7系统下图形化界面安装以及VNC远程连接教程(2022年6月实测ok)

    sudo 出现unable to resolve host 解决方法

    一键测试脚本bench.sh

    LNMP一键安装包添加、删除虚拟主机及伪静态使用教程

    Failed to update header with correct duration

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    使用V2Ray的mKCP协议加速游戏

    v2rayN已停止工作