这次博文带来的自建邮件服务器的教程,首先还是老样子,这里是官网,EwoMail作为一款开源的邮件服务器软件,还是不错的。此次服务器系统使用CentOS 7的版本进行安装。
为了填充一下字数,描述一下这个邮件系统。
EwoMail是基于Linux的开源邮件服务器软件,集成了众多优秀稳定的组件,是一个快速部署、简单高效、多语言、安全稳定的邮件解决方案,帮助你提升运维效率,降低 IT 成本,兼容主流的邮件客户端,同时支持电脑和手机邮件客户端。
Postfix:邮件服务器
Dovecot:IMAP/POP3/邮件存储
Amavisd:反垃圾和反病毒
Fail2ban:监控策略
LNAMP:apache,nginx,mysql5.5,php5.4
EwoMail-Admin:WEB邮箱管理后台
Rainloop:webmail
这里是官网文档的链接,可以查看一下手册。
我这里使用的是开源版,使用的域名是onlymailtest.xyz,嗯,刚申请的,为了写这篇博文,八块钱的价值。
在这个位置,输入你的域名获取安装代码。
其实就是获取一个脚本,然后是有版本的,这个脚本执行的时候将你的域名传递进去。
wget -c http://download.ewomail.com:8282/ewomail-1.05.sh && sh ewomail-1.05.sh onlymailtest.xyz
首先需要说明一些东西,域名是onlymailtest.xyz,子域名mail.onlymailtest.xyz,还要设置好mx记录,我只是简单带一句,相信想要自己搭建邮件服务器的你应该明白邮件服务器这些常见的东西。
通过ssh连接服务器,那么现在就开始安装
如果和我一样,得到的提示是wget未找到命令的话,需要安装一下,使用命令yum install wget -y
进行安装
开始执行,根据网络情况下载相应的软件,需要一些时间,这里就看着哗啦啦的跑进度条就行了。
安装完成以后使用域名或者ip使用8010端口访问,例如我的http://mail.onlymailtest.xyz:8010
默认账号:admin
密码:ewomail123
首次登陆后请尽快改密码。
其实到这里已经算是安装完成了,一键式安装。但是如果仅仅是这样肯定有些不习惯
查看eomail的nginx配置文件,会发现这些东西,难道我访问这些都要
如果需要域名,可以这里注册Dynadot,我的推荐码8h8G7A8K6q6f8y7F价格还算公道,还提供免费的域名隐私保护。
自动配置的原理:
1)、SpringBoot启动的时候加载主配置类,开启了自动配置@EnableAutoConfiguration
2)@EnableAutoConfiguration作用:
利用@Import({AutoConfigurationImportSelector.class})选择器导入组件。
SpringFactoriesLoader这个类会扫描所有jar包类路径下 META-INF/spring.factories
将扫描内容包装成properties类对象,从properties中获取到类名并将它们添加在容器中。
# Auto Configure org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ org.springframework.boot.autoconfigure.admin.SpringApplicationAdminJmxAutoConfiguration,\ org.springframework.boot.autoconfigure.aop.AopAutoConfiguration,\ org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration,\ org.springframework.boot.autoconfigure.batch.BatchAutoConfiguration,\ org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration,\ org.springframework.boot.autoconfigure.cassandra.CassandraAutoConfiguration,\ org.springframework.boot.autoconfigure.cloud.CloudServiceConnectorsAutoConfiguration,\ org.springframework.boot.autoconfigure.context.ConfigurationPropertiesAutoConfigu
关于本编博客内容声明:
1、此次安装记录为方便将来可能用到而做的测试。(毕竟好多包名记不住,写篇博客是为了将来需要用到的时候可以抄
参考命令)
2、本次使用虚拟机安装CentOS系统,为测试环境。如果是生产环境,请做好备份并且已经能够正确认识相关命令以及数据回滚能力再进行操作。
3、本次CentOS镜像包为CentOS-7-x86_64-Minimal
Swap分区是什么?
Swap分区,即交换分区,在系统的运存不够用的时候,把运存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。
说完了Swap分区,那么久介绍一下通过文件添(增)加Swap。
首先登录服务器,提权到root账号,通过free
查看当前服务器资源使用情况
当然,因为我这里有安装中文语言包以及设置了LANG为中文,所以显示出来的是中文内容,可以使用echo $LANG
查看当前的语言环境
当然,如果需要切换为英文,可以使用LANG=$us_EN.UTF-8
可以看到输出结果也变成了英文
设置成中文为
LANG=zh_CN.UTF-8
,在这里我就不过多的介绍参数内的内容是什么含义了free -h
这个-h可以使得输出结果友好
现在,我们首先选择一个路径,我选择在根(/)路径下新建了一个swap文件夹并cd到该目录。接着,使用dd if=/dev/zero of=swapfile bs=1M count=512
来创建swap文件
此处,if选择的为用来填充的选项,of为输出文件,count设置为bs的数量,bs可以使用k、M、G等等,输出文件的大小即bs大小乘以count数量
使用ll
命令和du -h
命令来查看一下刚刚创建出来的文件
接着使用mkswap
命令将该文件格式化为swap文件,简单命令格式为mkswap 文件名
,在这里就是mkswap swapfile
这里已经将该文件格式化为swap分区格式,而且这里也提示了,对该文件默认生成的权限并不安全,建议更改权限为0600,这里更改权限命令使用chmod 0600 swapfile
当然,这里swapfile是文件名。
更改完毕权限以后,记得先查看一下权限是否正确,接着就使用swapon
命令来添加该文件扩展Swap分区,其中swapon -a
命令表示挂载已经配置在/etc/fstab中的swap分区。如果要单独挂载某个swap文件或分区,使用swapon 文件
命令,如swapon swapfile
,是否成功记得再查看一下。
但要说一句,如果每次都开机以后手动挂载,岂不是太过于麻烦了?那么这个时候就需要对/etc/fstab
文件进行修改,