EwoMail 邮件服务器(开源版文档) 首页 分享
文档地址:http://doc.ewomail.com/docs/ewomail/jianjie
一:简介
EwoMail开源邮件服务器软件
EwoMail是基于Linux的开源邮件服务器软件,集成了众多优秀稳定的组件,是一个快速部署、简单高效、多语言、安全稳定的邮件解决方案,帮助你提升运维效率,降低 IT 成本,兼容主流的邮件客户端,同时支持电脑和手机邮件客户端。
集成组件
Postfix:邮件服务器
Dovecot:IMAP/POP3/邮件存储
Amavisd:反垃圾和反病毒
Fail2ban:监控策略
LNAMP:apache,nginx,mysql5.5,php5.4
EwoMail-Admin:WEB邮箱管理后台
Rainloop:webmail
快速部署
只需要执行一行简单的安装代码,只需几分钟即可为您部署一台功能完善的邮件服务器,物理服务器或云服务器都可安装。
安全稳定
集成知名的开源反垃圾和防病毒组件,为你的邮件保驾护航,服务器定时更新病毒库,无需管理。
支持基于TLS/SSL(POP3/IMAP/SMTP)邮件传输加密,支持服务器与邮件账号的密码破解防御。
数据安全,可以根据需求在你的服务器定时备份数据(包括邮件数据)。
无限制
一些大的邮件厂商通常都会有邮件账号、容量、发件数量的限制,EwoMail并没有任何限制,容量根据你的服务器硬盘大小来决定。
低配置高效率
无需单独购买物理服务器,一台低配的云服务器即可支撑100-500人的邮件账号通信。
基于PHP开发的邮箱管理后台
基于PHP开发的webmail
二:安装
安装环境
安装前请检查端口,点击查看(无法连接服务器)
centos6/7系统,服务器需要干净环境,要求全新干净系统,不能安装在已有的apache,mysql的环境中。
最低配置要求
CPU:1核
内存:1G
硬盘:40G
由于新版本的杀毒软件占用的内存比较多,512M到2GB内存请参考降低内存占用
EwoMail安装后会把数据存放在 /ewomail 目录
建议你提前创建
/ewomail 目录,并且将硬盘容量挂载或分配到/ewomail
为了你的资料隐私安全,请从该文档提供的下载渠道安装使用
关闭selinux
vi /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled
检查swap
如果没启动swap,这会导致EwoMail的防病毒组件不能启动,所以在安装前先检查swap是否已经启动,如已启动可跳过该步骤。
查看swap
free -m
如果swap位置都显示是0,那么系统还没创建swap
创建swap分区(内存超过2G,可不配置)
创建1G的swap,可以根据你的服务器配置来调整大小
dd if=/dev/zero of=/mnt/swap bs=1M count=1024
设置交换分区文件
mkswap /mnt/swap
启动swap
swapon /mnt/swap
设置开机时自启用 swap 分区
需要修改文件 /etc/fstab 中的 swap 行,添加
/mnt/swap swap swap defaults 0 0
邮箱域名
EwoMail本身是可以配置多个域名来收发邮件的,但在安装前需要一个邮箱的主域名。
本次教程例子使用的主域名是ewomail.cn
设置主机名(可不配置主机名)
EwoMail在安装后会默认使用域名前缀mail的主机名,例如mail.ewomail.cn
将系统主机名改成mail.ewomail.cn
查看当前主机名
hostname -f
centos6 配置
修改主机名,修改文件 /etc/sysconfig/network
修改文件 /etc/hosts , 添加 mail.ewomail.cn
输入命令:
hostname mail.ewomail.cn
centos7 配置
输入命令:
hostnamectl set-hostname mail.ewomail.cn
修改文件 /etc/hosts , 添加 mail.ewomail.cn
安装 (centos7)建议使用 git方式安装
国内网络
gitee 项目地址 https://gitee.com/laowu5/EwoMail
yum -y install git
cd /root
git clone https://gitee.com/laowu5/EwoMail.git
cd /root/EwoMail/install
#需要输入一个邮箱域名,不需要前缀,列如下面的ewomail.cn
sh ./start.sh ewomail.cn
国外网络
github 项目地址 https://github.com/gyxuehu/EwoMail
yum -y install git
cd /root
git clone https://github.com/gyxuehu/EwoMail.git
cd /root/EwoMail/install
#需要输入一个邮箱域名,不需要前缀,列如下面的ewomail.cn
sh ./start.sh ewomail.cn
在线安装
安装前请服务器必须已链接网络,安装时间将会根据你的系统配置和网络环境大概会在10分钟内安装完成。(需要root权限)
打开:http://www.ewomail.com/list-11.html 输入你的域名获取安装代码
执行安装命令后全程会自动安装(需要root权限)
wget -c http://download.ewomail.com/ewomail-1.0.sh && sh ewomail-1.0.sh ewomail.com
安装过程中可能会显示 shutting down postfix : FAILED,如果它的下面再出现一条 starting postfix : OK ,那就是正常的。
安装成功后将会输出”Complete installation”。
查看安装的域名和数据库密码
cat /ewomail/config.ini
遇到的报错
出现 installation failed,dovecot is installed 的报错,请卸载当前默认的dovecot再重新执行命令安装
部分centos版本可能会在安装时不兼容的情况,会出现 ewomail-lamp install failed
在 sh ./start.sh xxx.com 安装域名后面加-f
完整语句
sh ./start.sh xxx.com -f
注意:使用该命令安装,必须要求你的系统是全新干净的系统,而且系统没有安装apache,mysql,nginx 这些组件,否则千万别执行该命令安装。
下载过慢
当clamav下载过慢的时候,可以用按键 ctrl+c 跳过下载,等安装完成后然后关闭杀毒软件。
关闭杀毒软件请查看 降低内存占用
安装后的常规配置
将你安装的域名,例如安装的域名时 xxx.com,就将这行加在服务器的hosts文件里 /etc/hosts
127.0.0.1 mail.xxx.com smtp.xxx.com imap.xxx.com
配置SSL和webmail端口,请点击常规配置
访问地址(将IP更换成你服务器IP即可)
邮箱管理后台:http://IP:8010 (默认账号admin,密码ewomail123)
web邮件系统:http://IP:8000
项目地址1:https://github.com/gyxuehu/EwoMail
项目地址2:https://gitee.com/laowu5/EwoMail
授权协议
http://www.ewomail.com/license.html
三:常规配置
EwoMail安装后还需进一步完善资料,只需几分钟即可。
修改密码
邮箱管理后台的默认密码是ewomail123,建议修改一个复杂的密码。
登陆:http://IP:8010 , 点击”个人资料”进行修改。
修改资料
修改后台标题,备案资料,语言种类等等。。
以下针对1.06版本
webmail修改端口
nginx 配置文件 /ewomail/nginx/conf/vhost/rainloop.conf
SSL证书
操作的时候请备份要替换的配置文件
webmail的https
复制/ewomail/nginx/conf/vhost/rainloop.conf.ssl
替换rainloop.conf
1、系统自带了本地SSL证书,imap,smtp,nginx都会使用它,你可以默认也使用,安装的时候根据你的域名生成。
2、使用互联网经过认证的证书,将你申请生成的nginx证书替换以下2个文件
公匙 /etc/ssl/certs/dovecot.pem
私匙
/etc/ssl/private/dovecot.pem
如果你使用默认本地证书,就不用进行替换,复制文件替换后就可以了。
最后执行命令重启
service
nginx restart
systemctl restart postfix
dovecot
mysql优化配置
1.06版本默认mysql是针对1G内存以下进行优化的,如果你服务器内存大于1G,请以下操作
将 /ewomail/mysql/etc/my-huge.cnf 替换 /ewomail/mysql/etc/my.cnf
重启mysql
service mysqld restart
四:域不允许
当显示域不允许的时候,请检查域名解析是否已做好,如果只在本地搭建测试,请参考内部通信的文章操作。
如果这2个步骤还不行,请参考自定义访问路径文章,填上你具体的访问地址。
五:使用过程遇到问题
开源版在安装过程或使用过程中遇到问题,可以将问题发送到我们的邮箱。
请仔细的描述问题,最好把截图一并发送过来。
咨询时间:工作日,10:00-12:00,15:00-17:00
咨询邮箱:solve@ewomail.cn
(注:如果你将EwoMail开源版用于,群发邮件,批量发送邮件,我们将不会回复你的。)
六:开放端口
安装成功后,系统会开放以下的端口
默认开放的端口
端口都是TCP类型
8000,8010,8020,25,143,993,995,587,110,465
如果是使用的是云服务器,可能需要在控制面板的防火墙开放以上端口
必须打开的端口8000,8010,25,143
七:邮箱管理后台
EwoMail-Admin邮箱管理后台
EwoMail-Admin是一个邮箱管理后台,用PHP语言开发,开源免费,支持多语言切换,自主原生开发,没有采用第三方框架,简单高效、易二次开发。
安装后默认地址:IP:8010
将IP改成你服务器的IP,例如:127.0.0.1:8010
二次开发
需要搭配EwoMail邮件服务器软件使用。
支持Linux/Window环境下开发。
环境要求:PHP5.4+,MYSQL5.5+
开发文档:http://doc.ewomail.com/ewomail-admin
七-1:登录界面
在浏览器输入你的邮箱管理后台地址,例如:IP:8010
默认账号:admin
密码:ewomail123
首次登陆后请尽快改密码。
七-2:邮箱域名管理
系统安装后会自动把邮箱主域名添加,手动在后台添加的域名基本是副域名。
添加域名后需要设置副域名的DNS才能正常收发邮件。
七-3:邮箱用户管理
邮箱用户管理
添加邮箱
七-4:邮箱系统设置
系统安装后会自动添加配置信息,在更改主域名后才需要更改邮箱配置信息,一般情况下不建议修改。
imap和smtp是客户端的配置信息。
七-5:管理员
管理员列表
系统安装后默认添加一个admin账号,并且有所有权限,不能删除。
添加管理员
管理员类型:普通管理员可以根据角色来分配每个栏目的操作权限,超级管理员会拥有所有栏目的操作权限。
七-6:权限管理
角色管理(管理组)
添加角色
填写一个角色名称,勾选对应栏目的权限,保存后就可以在管理员页面设置每个管理员的权限了。
七-8:系统设置
系统设置
设置邮箱管理后台的标题或语言。
八:域名解析
EwoMail邮件服务器安装完成后需要设置域名解析才能正常发送/接收邮件。
按照文档的说明来域名解析即可。
域名DNS解析
主域名解析
文档使用的域名只是例子,只用于参考,实际过程中请使用你的域名。
查看主域名
打开ewomail-admin邮箱管理后台查看主域名,http://IP:8010
设置域名DNS
这里使用万网DNS为参考
将mail.ewomail.cn 改成你的域名
红色部分请改为你的服务器IP
副域名解析
文档使用的域名只是例子,只用于参考,实际过程中请使用你的域名。
设置域名DNS
万网DNS
请参考以上的图:
只需要简单的添加2条DNS记录即可。
spf记录:v=spf1
include:ewomail.cn -all
mx记录:mail.ewomail.cn
请将域名替换成你的主域名。
如需要添加副域名的DKIM,可参考这里DKIM设置
DKIM设置
DKIM是电子邮件验证标准,域名密钥识别邮件标准,主要是用来防止被判定为垃圾邮件。
每个域名都需要添加一个dkim的key,EwoMail默认安装后已自动添加主域名dkim,只需要设置好dkim的dns即可。
获取dkim key
登录安装EwoMail的服务器,执行查看代码
centos6
[root@mail ~]# amavisd showkeys
centos7
[root@mail ~]# amavisd -c /etc/amavisd/amavisd.conf showkeys
若安装成功会输出以下信息:
复制输出的信息,打开http://www.ewomail.com/list-20.html 整理dkim信息
整理完成后会在“整理显示区域”显示解析记录,接下来设置域名解析即可完成。
设置域名解析
等待10分钟后测试是否设置正确。
测试命令:
centos6
[root@mail ~]# amavisd testkeys
centos7
[root@mail ~]# amavisd -c /etc/amavisd/amavisd.conf testkeys
显示pass则正确。
添加新的域名dkim
EwoMail默认安装后已自动添加主域名dkim,如无需要多个域名,可忽略该步骤。
如果使用子域名作为邮箱域名,例如(test.ewomail.com)
那dkim.domainkey应该是这样的dkim.domainkey.test
修改/etc/amavisd/amavisd.conf
找到dkim_key开头,复制添加一行,参考图上。
重启amavisd
[root@mail ~]# service amavisd restart
对应该域名设置dkim的域名解析即可。
九:WebMail
WebMail
rainloop开源免费邮件系统
EwoMail的邮件系统是集成了rainloop开源webmail,它是基于PHP语言开发,简单易用,支持电脑和手机端。
安装后默认地址:IP:8000
将IP改成你服务器的IP,例如:127.0.0.1:8000
演示图
邮箱登录
使用浏览器打开http://IP:8000
只支持ewomail邮箱系统的邮箱账号登陆
邮件操作
常用功能
发送邮件
邮箱设置
一般设置:设置当前邮箱的基本信息
联系人:开关自动添加到地址簿
账号:添加多个邮箱账号和管理
安全:设置获取邮件的刷新时间
密码:修改当前邮箱账号密码
文件夹:邮箱文件夹管理
主题:选择web邮箱系统的界面风格
控制面板
登陆控制面板
使用ewomail-admin的账号和密码登陆
修改常规信息
包含默认语言,附件上传限制等等
修改网站标题
其他选项建议不做修改
手机版
使用手机浏览器打开http://IP:8000
登陆界面
邮件列表
发送邮件
十:客户端配置
foxmail
以下的域名仅供参考,请更换成你的域名
iphone
1
IOS版本12+ 的请点击 > 设置 > 密码与账号
2
3
4
5
发件服务器链接失败
发送邮件失败可参考该图设置
十一:无法连接服务器
无法连接服务器
1、安装过程检查是否有报错
2、检查运营商是否开放25端口出站方向
- 25端口是邮局通信的固定端口,不能更换成其他端口,465端口只用登录(465端口不是用于发送邮件,只用于登录,将邮件数据加密传送到本地服务器,最后本地服务器将会链接对方邮局的25端口,进行邮件发送,基本所有的邮局,都只用于25端口来接收邮件)
- 如果你的25端口出站方向被屏蔽了,那么你就不能发送邮件到外面的邮局。
- 但你可以使用465端口登录第三方服务器的邮局
首先在服务器执行以下命令测试你的端口是否正常,注意(是在你搭建邮局的服务器执行)
以下命令不需修改,复制执行即可
yum install telnet -y
telnet smtp.qq.com 25
出现220字样才是正常的。
25端口正常的情况下,如果不能链接服务器,请检查域名DNS解析,或做内部通信。
十二:内部通信
内部通信
在外网端口不确定是否开放的情况下,可以用来测试EwoMail的邮件通信是否正常。
也可以建立你的内部邮件系统。
1、参考教程完成安装EwoMail
2、设置hosts,添加红色框文字,将ewomail.org换成你安装的域名
将你安装的域名,例如安装的域名时 xxx.com,就将这行加在服务器的hosts文件里 /etc/hosts
127.0.0.1 mail.xxx.com smtp.xxx.com imap.xxx.com
3、打开管理后台添加2个账号
4、登录web邮件系统
5、将test@ewomail.org发一封邮件给test1@ewomail.org,登录2个账号检查是否收发正常
十三:降低内存占用
降低内存占用
降低内存占用
安装完成EwoMail后,可关闭邮件杀毒软件可以降低内存占用,对于运行内存2G以下的服务器可关闭杀毒来降低内存占用,关闭后能大大的降低内存的占用,不影响防垃圾邮件检测。
#查看内存占比命令
free -m
centos7
命令执行
#安装vim
yum install vim -y
#修改文件(修改前请备份文件)
vim /etc/amavisd/amavisd.conf
输入 :set number 回车显示行号
输入 i 回车可以编辑修改
找到大概在383行左右,将图片以下的4行前面加上#符号
修改前
修改后
在文件尾部加上该行参数@bypass_virus_checks_maps =
(1);
最后按下esc键,输入:wq保存
修改文件(参考上面的例子操作命令修改)
vim /usr/lib/systemd/system/amavisd.service
在 Wants=clamd@amavisd.service 前面加上#符号
保存文件
修改后
输入以下命令即可完成杀毒软件的关闭
systemctl daemon-reload
systemctl stop clamd@amavisd
systemctl disable clamd@amavisd
systemctl restart amavisd
十四:自定义访问路径
自定义访问路径
如果在apache修改了后台管理或webmail的访问路径,需要修改PHP配置文件才能正常使用webmail。
打开 /ewomail/www/ewomail-admin/core/config.php
修改url和webmail_url的2个值即可。
例如已在apache修改了访问路径。
后台管理修改成admin.test.com
webmail修改成mail.test.com
修改后:
‘url’=>’http://admin.test.com',
‘webmail_url’=>’http://mail.test.com',
如果是IP:
‘url’=>’http://127.0.0.1:8010',
‘webmail_url’=>’’http://127.0.0.1:8000',
服务器如果多个IP,请把公网IP写上即可。
十五:忘记密码
忘记密码
管理员默认账号:admin
默认密码:ewomail123
忘记管理员
如果忘记管理员密码,需要进入数据库修改。
查看数据库密码
进入服务器执行命令:cat /ewomail/config.ini
上图红圈的是root账号密码
打开http://IP:8020 (ewomail默认安装了phpmyadmin,为了安全,可以关闭或更换端口)
打开ewomail数据库,找到i_admin表,将password改为3bb3733de472b226208307ec1e689347
这样就可以把密码改回ewomail123,重新使用默认账号和密码登录即可。
十六:数据备份与还原
数据备份与还原
EwoMail 主要目录在/ewomail,相关的数据与文件都存放在该目录。
数据备份
备份ewomail数据库,相关数据库备份操作可百度mysql数据库操作
备份目录/ewomail/mail
数据还原
无论你在原有EwoMail或新安装的EwoMail,都可以还原。
将备份的数据库覆盖mysql的ewomail数据库
将备份的目录/ewomail/mail,覆盖回去。
执行下面的命令
chown -R vmail:vmail /ewomail/mail
systemctl restart dovecot
十七:其他
关闭selinux
EwoMail在安装前会默认临时关闭SELINUX,安装后请手动永久关闭SELINUX,否则在重启服务器后会遇到一些不正常的因素。
关闭selinux
vi /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled
apache/nginx
1.05版本开始
nginx
默认绑定80端口,需手动启动。
可以利用nginx配置php-fpm或apache,php-fpm默认端口9000,需手动启动。
配置目录:/ewomail/nginx
启动命令:
service
nginx start
php-fpm启动命令:
service php-fpm start
apache
取消apache的80端口,管理邮箱后台与webmail保留原来的端口。
配置目录:/ewomail/apache
启动命令:
service
httpd start
十八:重装与卸载
重装与卸载
1、重装需要重新安装系统,然后按照教程来安装。
2、卸载,因为依赖的组件比较多,所以卸载后再安装会有相关冲突,所以不能再次重装。
服务器执行
service httpd stop
service mysqld stop
rm
-rf /ewomail
十九:重启命令
重启命令
centos7
service php-fpm restart
service
nginx restart
service mysqld restart
systemctl restart postfix dovecot
amavisd
centos6
service php-fpm restart
service
nginx restart
service mysqld restart
service dovecot restart
service
postfix restart
service amavisd
restart
也可以直接重启服务器,重启后会直接启动所有的组件,如果是网页打不开,就重启下nginx就可以了
二十:exe附件收发
exe附件收发
系统默认会禁止exe后缀文件附件的收发,如果你需要开通这个权限,请操作以下步骤
修改/etc/amavisd/amavisd.conf
将图上的红色圈,每行的前面加上 #
最后执行 systemctl restart amavisd
学问:纸上得来终觉浅,绝知此事要躬行
为事:工欲善其事,必先利其器。
态度:道阻且长,行则将至;行而不辍,未来可期
.....................................................................
------- 桃之夭夭,灼灼其华。之子于归,宜其室家。 ---------------
------- 桃之夭夭,有蕡其实。之子于归,宜其家室。 ---------------
------- 桃之夭夭,其叶蓁蓁。之子于归,宜其家人。 ---------------
=====================================================================
* 博客文章部分截图及内容来自于学习的书本及相应培训课程以及网络其他博客,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。 * @author Alan -liu * @Email no008@foxmail.com
转载请标注出处! ✧*꧁一品堂.技术学习笔记꧂*✧. ---> https://www.cnblogs.com/ios9/