iRedMail 介绍
iRedMail 是一款开源、功能完善的邮件服务器一体化解决方案,支持在 Linux 系统上一键部署完整的邮件系统。它基于 Postfix、Dovecot、Amavis、SpamAssassin、ClamAV 等成熟组件构建,集成了 SMTP、IMAP、POP3、WebMail、防垃圾邮件与病毒扫描等常用功能,适合个人站长、中小企业以及自建邮箱系统使用。

准备工作
- 准备一台服务器支持25 端口
- SSH连接工具推荐 WindTerm
- 把 IP 解析到你的域名 A记录 名称mail IP
使用ssh连接
安装 cron 开机自启
apt update apt install -y cron systemctl enable cron systemctl start cron
设置系统 hostname
hostnamectl set-hostname mail
立即生效:
exec bash hostname
编辑 /etc/hosts
nano /etc/hosts
添加一行mail.example.com替换你的域名
127.0.1.1 mail.example.com mail
创建脚本
nano iredmail.sh
- 粘贴一键脚本代码完整内容
- 注意现在是1.7.4版本
- 更改为最新版 查看版本 进行更改
#!/bin/bash
set -e
echo "========== iRedMail 一键安装脚本 =========="
# 必须 root
if [ "$(id -u)" != "0" ]; then
echo "❌ 请使用 root 用户运行"
exit 1
fi
# 检测系统
if [ -f /etc/debian_version ]; then
OS="debian"
elif [ -f /etc/lsb-release ]; then
OS="ubuntu"
else
echo "❌ 仅支持 Debian / Ubuntu"
exit 1
fi
echo "✅ 系统检测通过: $OS"
# 更新系统
echo "📦 更新系统..."
apt update -y
apt upgrade -y
# 安装依赖
echo "📦 安装依赖..."
apt install -y wget curl bzip2 tar dialog ca-certificates
# 安装 cron 并启动开机自启
echo "📦 安装 cron 并设置开机自启..."
apt install -y cron
systemctl enable cron
systemctl start cron
# 关闭冲突服务
echo "🛑 停止可能冲突的邮件服务..."
systemctl stop exim4 postfix sendmail 2>/dev/null || true
systemctl disable exim4 postfix sendmail 2>/dev/null || true
# 下载 iRedMail
cd /root
IRE_VERSION="1.7.4"
echo "⬇️ 下载 iRedMail ${IRE_VERSION}..."
wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IRE_VERSION}.tar.gz
# 解压
tar zxf ${IRE_VERSION}.tar.gz
cd iRedMail-${IRE_VERSION}
# 权限
chmod +x iRedMail.sh
echo ""
echo "================================================"
echo "🚀 即将进入 iRedMail 官方安装界面"
echo "👉 请按提示选择组件"
echo "👉 安装完成后一定保存提示的账号密码"
echo "================================================"
echo ""
# 启动安装
bash iRedMail.sh
Ctrl键X保存
执行安装
chmod +x iredmail.sh ./iredmail.sh
回车确认


确认目录(没需求直接回车)


空格选定第二个 回车确认

输入密码

输入域名一级域例如:
example.com

管理员密码忘记截图了自己输入就可以了
直接回车确认

然后Y确认自己的信息或者取消重新设置
是否使用防火墙规则Fail2ban
Y确认
重启防火墙
已放行 SSH 22 端口不用担心
Y确认
- 大约需要十分钟左右,根据服务器性能决定
- 安装完成进行重启
reboot
重启后准备申请证书
使用下面方法或其他方法获取证书移动到指定位置就行
安装
curl https://get.acme.sh | sh
替换你的邮箱[email protected]
~/.acme.sh/acme.sh --register-account -m [email protected]
申请证书替换你的域名 example.com
~/.acme.sh/acme.sh --issue -d example.com --webroot /var/www/html
移动证书到iRedMail替换你的域名证书 example.com
~/.acme.sh/acme.sh --install-cert -d example.com \ --fullchain-file /etc/ssl/certs/iRedMail.crt \ --key-file /etc/ssl/private/iRedMail.key \ --reloadcmd "chmod 644 /etc/ssl/certs/iRedMail.crt; \ chmod 600 /etc/ssl/private/iRedMail.key; \ nginx -t && systemctl restart nginx && systemctl restart postfix && systemctl restart dovecot"
重载服务
service postfix reload;service dovecot reload;service nginx reload
- 禁用 iRedMail 灰名单
- 找到 VPS 文件
/opt/iredapd/settings.py编辑 - 或者使用 nano 直接编辑
nano /opt/iredapd/settings.py
将其中的 ”greylisting ” 这项删去除注意代码格式
然后重载服务
service iredapd restart
域名DNS 及解析
1.添加MX记录
MX 记录就是邮件的解析记录,非常重要的一条记录,配置根域名的 MX 记录为自己的邮件域名地址,优先级为 10
名称
@
搭建时解析的域名
准备工作第三步的你的解析域名
mail.example.com
优先级为 10
检测方式:
nslookup -type=mx example.com
2.SPF 记录
SPF 记录是为了防止垃圾邮件而设定的,告知收件方,从设置的允许列表中发出的邮件都是合法的,设置方式为添加一条根域名的 TXT 解析记录
名称
@
内容为
v=spf1 mx ~all
检测方式:
nslookup -type=txt example.com
3.设置 DKIM记录
DKIM 可说是避免被判定为垃圾邮件的一大利器,DKIM 属于一种类似加密签名的解析记录,只有包含此加密数据,且公钥与密钥相匹配才属于合法邮件,要设置 DKIM 记录,首先要查询 DKIM 信息。
查询DKIM 信息有两种方式:
1:在系统中执行命令查看:amavisd showkeys
2:直接查看 /root/iRedMail-1.7.4/iRedMail.tips 文件,里面有相应的 DKIM
如果使用第一种方法查看出现错误时
若是出现报错:Config file “/etc/amavisd.conf” does not exist, at /usr/sbin/amavisd line
修改 /usr/sbin/amavisd 文件
搜索 config_files = ( ‘
把括号里面的路径改为 ‘/etc/amavisd/amavisd.conf’
第一种直接查看
amavisd showkeys
第二种查看服务器文件/root/iRedMail-1.7.4/iRedMail.tips
删除多余的 “” 与空格
完内容为示例:
添加为txt记录名称为
dkim._domainkey
值为删除多余的引号与空格示例
v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCsAQ8AqMIIBCgKQEAl wayXNLDTZLJ1RU2VdjTjb5OvbNFJ8nC1Y8WN8FvrzPUBIM+ht5bA3PCH ujYDQJWPNRhe9oO4kCMNW5FAKiU/nsNhcA3O9VtrAsA0SvuH8eif0iq4 Pclg5VAsdaYGsg5Bd09j7P1zTSd+l3rcPU4pgwoFOd31yYkuBqT+i6DarJ+ c5XeaCfLSJSB6tiSxe2c5Xc5lg8pas28wAskwDa3PIYVXxjdB1ZAe6loR/R TFCH95jfKW7hmIBlvZ1Ib8g1uiQS0zyeQpPhS9QPsuoma2huhiykZG3Uj4 PEoKyWshDVuD352/4rDod85KgNN9RQl6KG5trQIDuuhiykZG3Uj4AQAB
测试方式:
nslookup -type=txt dkim._domainkey.example.com
4.设置 DMARC 记录
DMARC 记录是当收件方检测到伪造邮件等行为时,将根据您的配置进行操作的一个记录,比如拒绝邮件或放入垃圾邮件以及不做处理等,同时会反馈一份检测报告到配置的邮箱地址内。添加方法就是增加一条的 TXT 解析
example.com改为自己的域名
名称
_dmarc
值为
v=DMARC1; p=none; pct=100; rua=mailto:[email protected]
检测方式:
nslookup -type=txt _dmarc.example.com
邮件域名管理以及监控状态
初始管理员是postmaster@你的域名
https://你的域名/mail ——邮件登录地址 https://你的域名/netdata ——服务器状态监控 https://你的域名/iredadmin ——邮件服务器后台管理 管理员账号:[email protected] 例如 [email protected] 管理员密码:安装时候设置的密码 以上信息,可以在 /root/iRedMail-1.4.2/iRedMail.tips 文件中查看
访问测试你发出邮件的垃圾邮件匹配度进行检测
至此,iRedMail 邮件服务器已成功搭建完成。通过本次部署,我们实现了一套集 SMTP、IMAP、WebMail、 于一体的完整邮件系统,能够满足个人站点及中小企业在生产环境中的日常邮件收发需求。