使用iRedMail搭建域名邮局服务

使用iRedMail搭建域名邮局服务-三六云
使用iRedMail搭建域名邮局服务
此内容为免费阅读,请登录后查看
U0
免费阅读

使用iRedMailUbuntu 20.04上搭建域名邮局服务

使用iRedMail搭建域名邮局服务-三六云

试过几个系统,最后发现Ubuntu 20.04上安装和运行iRedMail兼容是最好的,而且出错、踩坑最少的。

iRedMail是成熟的邮件服务器系统,它拥有优秀的性能,全面实用的功能,且搭建方便、社区支持良好。今天我们介绍在Ubuntu 20.04 LTS 64 bit操作系统中安装并配置iRedMail邮件服务器系统,实现域名邮箱、垃圾邮件过滤、病毒查杀等等实用功能。

准备工具

1、干净的 VPS 一台,内存最好大于 1 GB。

2、VPS 最好支持 PTR Records,演示用的 VPS 来自 搬瓦工

3、域名一个,推荐托管 cloudflare (解析生效快)

4、规划好作为邮件服务器的域名,演示用 mail.bozai.us,把该域名解析到 VPS IP。

搭建 iRedMail 邮件服务器

设置 VPS 以及系统

更新系统

apt update -y

设置 VPS 主机名

我们规划邮局的域名为 mail.bozai.us ,所以,我们需要对 VPS 的主机名进行设置。

首先,需要编辑 /etc/hosts 文件,找到含有你的 VPS IP 地址的那一行;如果没有,则添加一行。内容如下:

127.0.0.1 mail.bozai.us mail

其中, 127.0.0.1 可换为你的服务器 IP 地址,后面依次填入长主机名和短主机名,切记不可填反。

使用iRedMail搭建域名邮局服务-三六云

然后,我们找到 VPS 的 /etc/hostname 文件,编辑里面的内容为 mail (域名的前缀)

这样,就设置好了主机名。重启 VPS

此时我们检查一下是否设置正确:

执行:hostname

此时我们应该只能看到短主机名 mail. 如果你看到了长主机名 mail.bozai.us , 说明之前设置错误,请重新检查上述步骤。

执行:hostname -f

此时,我们应该只能看到长主机名 mail.bozai.us

这样,我们就全部设置好了主机名(hostname), 可以进行接下来的其他操作了

下载并安装 iRedMail

执行:

apt-get install git -y
git clone https://github.com/iredmail/iRedMail.git
cd iRedMail
bash iRedMail.sh

系统将会自动开始安装。安装过程中会出现下面这些情况,您需要依次根据您自己的信息来设置。

首先,需要指定安装目录,如下图。这里可以保持默认的/var/vmail, 也可以设置为/srv/vmail等,依个人喜好即可;请勿将其设置在/home目录之内。

第二步需要选择是否安装Web服务器。如果您只需要客户端收发信,可以不安装web服务器,其他情况下则建议安装Nginx. 按回车键进入下一步。

第三步要选择使用的数据库。我们这里选择比较简单的MariaDB. 用方向键选择MariaDB, 按空格键选中,然后回车进入下一步。

第四步则要为MariaDB设置root用户密码,输入完毕后按回车继续。

接下来一步非常重要,我们要设置第一个发信域名。如果您的邮件服务器域名为mx.qing.su, 那么这里您可以设置为qing.su

然后,我们为管理员邮箱设置管理密码。请牢记,若您的域名为example.com, 则管理员邮箱地址为postmaster@example.com.

最后一步设置,我们需要选择安装的功能。默认选择Roundcubemail + netdata + iRedAdmin + Fail2ban即可。SOGo实测没有Roundcube好用,若您喜欢这个看上去更高端的面板,也可以安装。

设置完毕后,屏幕上会列出来这些信息,我们输入y确认安装。

安装需要大概10分钟左右。全部安装好之后,系统会提示是否设置防火墙规则,我们输入y确认即可。

重启服务器,让邮件服务器生效! 至此,邮件服务器搭建完毕,以下开始设置邮件服务器。

可以通过访问(当然,我们目前还没有解析域名,后面一起解析)
https://你的域名/mail        ——邮件登录地址
https://你的域名/netdata     ——服务器状态监控
https://你的域名/iredadmin   ——邮件服务器后台管理 
管理员账号:postmaster@你的域  例如 postmaster@163.com
管理员密码:安装时候设置的密码
以上信息,可以在 /root/iRedMail-1.4.2/iRedMail.tips 文件中查看

配置 iRedMail 邮件服务器

在申请证书之前,请完成 邮件服务器域名 的相关解析,我们规划的邮件服务器地址为 mail.bozai.us ,所以,申请证书之前,需要对把该域名指向 VPS IP。

申请证书

以下是 ACME 脚本申请证书,比较方便

wget -N https://raw.githubusercontent.com/kkkyg/acme-script/main/acme.sh && bash acme.sh

配置证书

申请完毕后,我们首先配置Nginx.

编辑文件/etc/nginx/templates/ssl.tmpl, 找到下面两行:

ssl_certificate /etc/ssl/certs/iRedMail.crt;
ssl_certificate_key /etc/ssl/private/iRedMail.key;

将地址替换为您的证书地址,我这里是:

ssl_certificate /etc/letsencrypt/live/mx.qing.su/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mx.qing.su/privkey.pem;

保存好后重新载入Nginx配置文件:

service nginx reload

收发信时,同样需要用到TLS安全验证,因此我们还需要配置Postfix和Dovecot. 首先,编辑/etc/postfix/main.cf文件,找到下面这三行(我这里是第95 ~ 97行):

smtpd_tls_key_file = /etc/ssl/private/iRedMail.key
smtpd_tls_cert_file = /etc/ssl/certs/iRedMail.crt
smtpd_tls_CAfile = /etc/ssl/certs/iRedMail.crt

将其替换为您的证书地址:

smtpd_tls_key_file = /etc/letsencrypt/live/mx.qing.su/privkey.pem
smtpd_tls_cert_file = /etc/letsencrypt/live/mx.qing.su/cert.pem
smtpd_tls_CAfile = /etc/letsencrypt/live/mx.qing.su/chain.pem

保存好之后重新载入Postfix配置文件。

service postfix reload

最后,给Dovecot配置证书。编辑文件/etc/dovecot/dovecot.conf, 找到下面这两行(我这里是第47和48行):

ssl_cert = </etc/ssl/certs/iRedMail.crt
ssl_key = </etc/ssl/private/iRedMail.key

将其替换为您的证书地址:

ssl_cert = </etc/letsencrypt/live/mx.qing.su/fullchain.pem
ssl_key = </etc/letsencrypt/live/mx.qing.su/privkey.pem

保存好之后重新载入Dovecot配置文件。

service dovecot reload

这样,我们为Nginx, Postfix, Dovecot分别配置好了SSL/TLS安全证书。

禁用 iRedMail 灰名单

灰名单(greylist)是一项防止垃圾邮件的功能,iRedMail默认开启了该功能。但是,该功能开启之后,收所有信件的时候都有较长时间的延迟。因此,我们这里将该功能关闭。

我们首先给配置文件提权:

chmod +w /opt/iredapd/settings.py

然后编辑该文件(/opt/iredapd/settings.py),找到下面这行:

plugins = ["reject_null_sender", "wblist_rdns", "reject_sender_login_mismatch", "greylisting", "throttle", "amavisd_wblist", "sql_alias_access_policy"]

将其中的”greylisting”这项删去即可。然后,重启iredapd, 并且恢复文件权限。

service iredapd restart
chmod -w /opt/iredapd/settings.py

配置域名 DNS 及解析

以下内容,根据需要,替换以下命令行中的相关命令。

设置 PTR 反向解析

其他 VPS 商家,请自行查阅,搬瓦工VPS 打开后台管理,在左边选项 Mail contrlos 里面,找到右边的 PTR Records (Reverse DNS),点击 set new record 设置即可。

使用iRedMail搭建域名邮局服务-三六云

检测方式:nslookup 8.8.8.8(服务器IP)

设置 A 记录

将 mail.bozai.us 的 A 记录指向你的 VPS 服务器(邮件服务器)

检测方式:nslookup mail.bozai.us

设置 MX 记录

MX 记录就是邮件的解析记录,非常重要的一条记录,配置根域名的 MX 记录为自己的邮件域名地址,优先级为 10

检测方式:nslookup -type=mx bozai.me

设置 SPF 记录

SPF 记录是为了防止垃圾邮件而设定的,告知收件方,从设置的允许列表中发出的邮件都是合法的,设置方式为添加一条根域名的 TXT 解析记录

内容为 v=spf1 mx ~all

检测方式:nslookup -type=txt bozai.us

设置 DKIM记录

DKIM 可说是避免被判定为垃圾邮件的一大利器,DKIM 属于一种类似加密签名的解析记录,只有包含此加密数据,且公钥与密钥相匹配才属于合法邮件,要设置 DKIM 记录,首先要查询 DKIM 信息。

查询DKIM 信息有两种方式:

第一种:在系统中执行命令查看:amavisd showkeys

然后,以域名qing.su为例,请去您的DNS服务提供商那里,添加一条TXT记录,将dkim._domainkey.qing.su解析到”v=DKIM1; p=MIIBIj……………………………………ZX/AwIDAQAB”。请注意,这里的解析值包含了屏幕上给出的引号里面包含的全部内容,但是您需要删除中间多余的引号,将这些字符串拼接起来,仅保留首尾的引号。

第二种:直接查看 /root/iRedMail-1.4.2/iRedMail.tips 文件,里面有相应的 DKIM

将括号内的文本 去除引号以及空格并相连 就是咱们的 DKIM 数据,在解析中添加一条 dkim._domainkey 的 TXT 解析,内容就是咱们组合出的文本

测试方式:nslookup -type=txt dkim._domainkey.bozai.us

设置 DMARC 记录

DMARC 记录是当收件方检测到伪造邮件等行为时,将根据您的配置进行操作的一个记录,比如拒绝邮件或放入垃圾邮件以及不做处理等,同时会反馈一份检测报告到配置的邮箱地址内。

添加方法就是增加一条 _dmarc 的 TXT 解析,内容为配置选项,v=DMARC1; p=none; pct=100; rua=mailto:dmarc@bozai.us

检测方式:nslookup -type=txt _dmarc.bozai.us

写在最后

此篇文章存在演示域名不统一现象,大家阅读时请注意此问题。

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请Ctrl+D收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞613赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容