/**PageBeginHtml Block Begin **/ /***自定义返回顶部小火箭***/ /*生成博客目录的JS 开始*/ /*生成博客目录的JS 结束*/

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

官网网站:http://www.ewomail.com


二:安装

安装环境

安装前请检查端口,点击查看(无法连接服务器

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解析

主域名DNS解析

副域名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


posted @ 2020-10-13 09:42  一品堂.技术学习笔记  阅读(1859)  评论(0编辑  收藏  举报