Centos 搭建邮箱系统
总结
- 我实操的过程,2个邮箱都没有界面,都只是邮件系统。可能还需要再部署其他东西,暂止。
- sendmail 比较简单,主要是发邮件,使用 stmp。还需要解决收邮件的问题和管理界面的问题。
- postfix 比较全面的系统,可以收发邮件,也是没有 web 管理界面。基本步骤:
- 准备环境 ,开放需要的端口,并卸载sedmail,域名解析配置,修改hostname
- 安装并且配置好postfix发件服务
- 安装并且配置好dovect收件服务
- 测试,检查发送情况。
## postfix
1.6 postfix 特点
1、postfix是免费的;
2、性能好,大约比sendmail×××倍,一台运行postfix的台式pc每天可收发上百万邮件;
3、兼容sendmail
4、健壮稳定,postfix被设计成在重负荷之下仍然可以正常工作。当系统运行超出了可用的内存或磁盘空间时,postfix会自动减少运行进程的数目。当处理的邮件数目增长时,postfix运行的进程不会跟着增加;
5、灵活性好,postfix是由超过一打的小程序组成的,每个程序完成特定的功能。你可以通过配置文件设置每个程序的运行参数。
6、安全性,postfix具有多层防御结构,可以有效地抵御恶意者,可以运行在较低的权限之下;
设置域名
新增一条A记录,主机记录为 mail,记录值为 邮件服务器地址。
新增一条MX记录,主机记录为空,记录值为 mail.domain
新增一条TXT记录,主机记录为mail,记录值为 v=spf1 ipv4:xx.xx.xx.xx(服务器ip地址)
安全组
开启 143端口 25端口
安装
yum -y install postfix dovecot # 1.安装Postfix,2.安装Dovecot
yum remove sendmail #
安装完成还需要替换系统自带的sendmail:
alternatives --config mta # 修改MTA(默认邮件传输代理)
alternatives --display mta # 检查一下是不是已经设置成功了。第一行可以看到mta的状态。 例如:mat - status is manual.
vi /etc/postfix/main.cf # 配置Postfix
# 75行: 取消注释,设置hostname(mail+域名)
myhostname = mail.cnblogs.com
# 83行: 取消注释,设置域名
mydomain = cnblogs.com
# 99行: 取消注释
myorigin = $mydomain
# 116行: 修改
inet_interfaces = all
# 119行: 推荐ipv4,如果支持ipv6,则可以为all
inet_protocols = ipv4
# 164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 264行: 取消注释,指定内网和本地的IP地址范围
mynetworks = 0.0.0.0/0
# 419行: 取消注释,邮件保存目录
home_mailbox = Maildir/
# 571行: 添加
smtpd_banner = $myhostname ESMTP
# 添加到最后 开始添加
# 规定邮件最大尺寸为10M
message_size_limit = 10485760
# 规定收件箱最大容量为1G
mailbox_size_limit = 1073741824
# SMTP认证
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject
# 添加结束
[root@mail ~]# vi /etc/dovecot/dovecot.conf
# 26行: 如果不使用IPv6,请修改为*
listen = *
[root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf
# 9行: 取消注释并修改
disable_plaintext_auth = no
# 97行: 添加
auth_mechanisms = plain login
[root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf
# 30行: 取消注释并添加
mail_location = maildir:~/Maildir
[root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf
# 88-90行: 取消注释并添加
# Postfix smtp验证
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
# 开启 dovecot
[root@mail ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]
#设置开机自启
[root@mail ~]# chkconfig dovecot on
添加账号
#添加新用户
[root@mail ~]useradd zhangsan
[root@mail ~]passwd zhangsan #设置用户zhangsan密码 回车 再次输入两次密码(此账号密码可以直接登录服务器)
配置客户端
填写IMAP服务器: mail.xxx.com(此项与 /etc/postfix/main.cf设置的 myhostname 一致 mail+域名)
填写SMTP服务器: mail.xxx.com(此项与 /etc/postfix/main.cf设置的 myhostname 一致 mail+域名)
查看日志
cat /var/log/maillog
sendmail
安装
yum -y install sendmail mailx
设置发件人信息
vi /etc/mail.rc
set from=shliujing0721@163.com
set smtp=smtp.163.com
set smtp-auth-user=shliujing0721
set smtp-auth-password=
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/
测试
vi test.txt # 创建报警文件
mail -s '测试主题' shliujing@foxmail.com < test.txt # 发送测试邮件
查看邮箱是否收到邮件
或
echo '报警提示11' | mail -s '测试主题22' shliujing@foxmail.com
查看命令
mailq # 查看邮件发送任务队列
tail -f /var/log/maillog # 查看sendmail日志信息
FAQ
Missing "nss-config-dir" variable.
补上配置即可 set nss-config-dir=/etc/pki/nssdb/邮件内容乱码,发成附件了
TODO
参考
【推荐】centos6.8 搭建postfix/dovecot邮件服务器
centos7搭建postfix邮件服务器
【推荐】Centos7使用sendmail发送邮件
Centos 搭建邮箱系统的更多相关文章
- centos 邮件服务 腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25 收邮件协议:pop3 端口110 iredmail安装配置 使用邮箱系统 第三十一节课
centos 邮件服务 腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25 收邮件协议:pop3 端口110 iredmail安装配置 ...
- Centos 6 搭建邮箱服务器教程
Centos 6 搭建邮箱服务器主要是是包括了Postfix, Dovecot和 MySQL了,下文我们详细的为各位介绍Centos 6 搭建邮箱服务器教程(Postfix, Dovecot和 MyS ...
- CentOS和Ubuntu系统下安装vsftp(助推大数据部署搭建)
不多说,直接上干货! 同时,声明,我这里安装的vsftp,仅仅只为我的大数据着想,关于网上的复杂安装,那是服务和运维那块.我不多牵扯,也不多赘述. 一.CentOS系统里安装vsftp 第一步:使用y ...
- centos搭建dns服务
原文:(https://www.myjinji.top/articles/2020/04/02/1585800289945.html)[https://www.myjinji.top/articles ...
- 在CentOS搭建Git服务器 转
在CentOS搭建Git服务器 来自 :http://www.jianshu.com/p/69ea5ded3ede 前言 我们可以GitHub发布一些开源代码的公共仓库,但对于私密仓库就需要收费了.公 ...
- CentOS搭建Git服务器及权限管理
声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...
- 基于 CentOS 搭建 WordPress 个人博客
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 腾讯云提供了开发者实验室帮助用户搭建 WordPress 个人博客,教程内容如下,用户可以点击开发者实验室快速上机完成实验. 准备 LNMP ...
- Centos 搭建activemq
Centos 搭建activemq 1,官方下载 http://activemq.apache.org/activemq-5122-release.html apache-activemq-5.15 ...
- CentOS搭建xfce桌面+VNC教程
CentOS搭建xfce桌面+VNC教程 Linux的安全与性能向来为开发者所称道,你可以轻松地在搜索引擎中找到各种Linux优越性的说辞,其中不乏Linux的激进者.特别是当你步入VPS领域,更多地 ...
随机推荐
- python操作redis命令
Python操作redis from redis import StrictRedis, ConnectionPoolredis_url="redis://:xxxx@112.27.10.1 ...
- 015_ICMP专项研究监控
一.数据demo cat /proc/net/snmp Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagr ...
- 用Mysql进行emp、dept、salgrade表的相关查询操作
初学者都会接触到三种表:emp.dept.salgrade表,进行练习各种语句操作再合适不过 但是,网上大多数的操作语句都是用oracle进行操作的,小编在学习mysql的时候,参考网上的书写遇到了不 ...
- 一丶Http协议
一 HTTP概述 HTTP(hypertext transport protocol),即超文本传输协议.这个协议详细规定了浏览器和万维网服务器之间互相通信的规则. HTTP就是一个通信规则,通信规则 ...
- OpenStack--Rabbitmq组件消息队列
概念 队列 MQ 全称为Message Queue,消息队列( MQ ) 是一种应用程序的通信方法.应用程序通过读写入列队的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们. 消息传递指的是 ...
- ProgressDialog替代
在API level 26 中,ProgressDialog被声明不赞成使用,应使用的替代方法是ProgressBar 利用下列代码实现ProgressBar的出现和消失 progressBar.se ...
- 【mongo】查询超时处理
使用no_cursor_timeout collection = self.db[tb_name] cols = collection.find(no_cursor_timeout=True) for ...
- Java常见的10个异常
1.NullPointerException: 空指针异常,当操作一个 null 对象的方法或属性时会抛出这个异常.是一个很头疼的异常,因为它是运行时异常,不需要手动捕获,但运行时碰到这个异常会中断程 ...
- h5调起微信支付
后台需要进行生成签名获取参数. 前台代码: function onBridgeReady(appId,timeStamp,nonceStr,package1,paySign,signType,open ...
- 使用 Vscode +PlantUml 画uml图
什么是PlantUML PlantUML是一个快速创建UML图形的组件,官网上之所以称它是一个组件,主要是因为多数情况下我们都是在Eclipse.NetBenas.Intellijidea. Emac ...