今天没事想搭建一个邮件服务器,一般都推荐iRedMail,这个邮箱免费而且给别人发送不会当作垃圾邮件收录。那自己就尝试在centos系统上搭建一个试试,顺便写个教程,有兴趣的同学可以自己尝试。
一、iRedMail简介
iredmail是基于开源的postfix、dovecot、openldap、roundcube等软件,加上作者开发的安装包、配置文件、管理工具(都开源),可快速搭建一个支持SMTP、POP3、IMAP等协议,提供WebMail和Web管理界面的邮件系统
二、以CentOS上搭建为例
- 安装CentOS操作系统,并确保已经正确配置了网络和DNS。
- 安装必要的软件包:
yum install epel-release和yum install wget net-tools vim。 - 下载iRedMail最新版本:
wget https://github.com/iredmail/iRedMail/archive/1.4.2.tar.gz。 - 解压缩下载的文件:
tar xvf 1.4.2.tar.gz。 - 进入解压缩后的目录:
cd iRedMail-1.4.2/。 - 运行安装脚本:
bash iRedMail.sh。 - 按照提示进行安装,包括设置管理员密码、域名、邮箱账号等。
- 安装完成后,您可以通过浏览器访问iRedMail的Web管理界面,使用管理员账号登录即可。
- 附上iredmail官方参考文档:iredmail文档
三、下面正式开始安装IRedMail邮件服务器
1、 登录进入centos系统。
2、 更新系统安装包
yum update
安装之前要更新一下系统安装包,不然后面安装可能会报错。
3、 修改服务器主机名(hostname)
在普通用户权限下执行vim /etc/hosts命令进入hosts文件,按i进行编辑和插入,将原来的localhost改为mail.xinyixx.com,按 shift ZZ 或输入 :wq 保存退出
注:127.0.0.1 localhost.localdomain localhost
hosts文件格式是一行一条记录,分别是IP地址 、hostname、 aliases,三者用空白字符分隔由于/etc/sysconfig/network文件的所有者和所属组均是root,所以需要以root权限来编辑/etc/sysconfig/network 文件,把hostname设置成我们需要创建的邮件域名mail.xinyixx.com
在/etc/sysconfig/目录下执行命令 ls -la
切换到root身份
修改hostname
4、 修改结束后,输入命令hostname -f 查看当前的主机名,并重启一下系统
5、 禁用 SELinux
iRedMail 不支持SELinux,所以需要在/etc/selinux/config文件里禁用它,将其参数改为disabled即可
6、下载iRedMail并解压
执行命令进行下载 wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-1.4.2.tar.bz2 (此处需要有网络)
下载完成,执行命令 ls 进行查看 (若下载不成功,也可以将安装包里的iRedMail-1.4.2.tar.bz2上传到CentOS系统中进行解压)
执行命令 tar xjf iRedMail-1.4.2.tar.bz2 进行解压缩
进入解压目录
7、由于直接运行iRedMail.sh,文件内的域名解析在国内被墙。无法正常下载安装包。因此根据官方提供的中国用户安装命令来操作,要切换到root身份来执行命令 :
IREDMAIL_MIRROR='https://cnmirror.iredmail.org' \
SOGO_PKG_MIRROR='https://cnmirror.iredmail.org' \
IREDMAIL_EPEL_MIRROR='http://mirrors.aliyun.com/epel' \bash iRedMail.sh
8、安装过程
指定用于存储用户邮箱的路径。使用默认路径即可,默认是/var/vmail。
·选择用于存储邮件账号的数据库。
注:各个数据库之间没有太大区别,建议使用自己熟悉的数据库,便于后期的维护,这里我选择的是OpenLDAP
如果选择 OpenLDAP 数据库用于存储邮件账号,安装程序会要求你输入 LDAP 前缀,将example改为自定义,添加第一个邮件域名,设置邮件管理员的密码,自己填。注:该账号既是邮件管理员(可以登陆管理后台),也是普通的邮件账号(登陆webmail)
选择安装IRedMail的组件
强烈建议你安装 Roundcube,以便为域帐户提供访问邮件的 Web 界面,尽管你也可以在不同的计算机上安装并配置 Roundcube,以便在高负载情况下释放邮件服务器资源。对于受限访问互联网的本地域,特别是在我们使用域集成时,除了 Awstats 可以用于你进行邮件分析,其他组件不是非常有用
确认刚才的选择,选择y开始安装,下面等待安装完成,中间需要按几次y回车即可
注意:安装途中会有一个让设置防火墙iptables和数据库的选项,iptables选n 数据库选择y
仔细阅读上面的信息,使用reboot命令或下面的命令重启机器来使所有的邮件服务启用。
init 6
系统重启后,使用 root 权限的帐户登录或以 root 身份登录,并使用下面的命令列出所有的网络套接字以及你邮件服务器监听的相关程序。
在套接字列表中,你会看到邮件服务器几乎覆盖邮件服务正常运行所需的所有服务:SMTP/S、POP3/S、IMAP/S和防病毒以及垃圾邮件保护。
netstat -tulpn
为了查看 iRedMail 已修改的所有配置文件的位置、iRedMail 安装过程中用于数据库管理的凭据、邮件管理帐户以及其他帐户,那么就显示 iRedMail.tips 这个文件。
该文件位于你最初解压安装包的目录中。请注意,你应该移动并保护此文件,因为它包含有关邮件服务器的敏感信息。
9、安装完成
安装完毕后会显示邮箱登录和管理页面链接以及管理员帐号密码等信息。默认是需要https登录的(若你对以https方式登陆没要求,则这一步可以不用做),我们要么设置SSL证书登录,或者到执行命令
vim /var/www/roundcubemail/config/config.inc.php,到文件中设置$config['force_https'] = true;将参数改成false之后,reboot重启才可以生效。
四、验证和使用IRedMail邮件服务器(以下操作都是在CentOS系统上的)
登陆IRedMail的用户WEB界面(https://mail.yourdomain/mail/)
通过在浏览器中输入机器的 IP 地址,你可以通过 HTTPS 协议安全地访问 webmail。接受 iRedMail 自签名证书在浏览器中生成的错误,并使用在安装中为postmaster@your_domain.tld帐户设置的密码登录。阅读并将此电子邮件存储到一个安全的邮箱。
使用管理员账号和密码登陆
登陆IRedMail的管理员后台管理界面(http://mail.yourdomain/iredadmin/)
添加邮箱用户(用户名:自己填。 密码:自己填。)
用新建用户个人的用户名和密码来登陆,验证是否新建成功
登陆成功之后,写一封信给postmaster吧!
进入postmaster的用户界面,可以发现已经收到了来自自己的邮件
至此,大功告成!!!至于其它更有趣的地方留给大家去探索发现,也欢迎大家告知我~
