邮件服务器也采用的是C/S工作模式,通过SMTP,POP3,IMAP协议来实现邮件的发送和接受
SMTP协议
- 发邮件
- 使用TCP 25端口进行邮件传输
- 所谓SMTP。即简单邮件传输协议,它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。
- SMTP服务器就是遵循SMTP协议发送邮件服务器。
- SMTP认证,简单地说就是要求必须提供了账户名和密码之后可以登陆SMTP服务器,这就使得那些垃圾邮件的散播者无可乘之机。增加SMTP认证的目的是为了使用户避免受到垃圾邮件的侵扰
POP3协议
- 收邮件
- 使用TCP 110端口进行邮件收取
- 是从邮件服务器中下载邮件存起来支持不在线用户
IMAP协议
- 收邮件
- 使用TCP 143端口进行邮件收取‘
- 将邮件留在服务器直接对邮件进行管理、操作,比POP3更先进支持邮件头部预览主题
POP3与IMAP的区别
收发邮件的流程
1)两个不同的域的用户进行邮件收发
2)使用客户端或者编辑器写邮件发送到自己域内的邮件服务器
3)邮件服务器通过域内的客户端发送邮件到目标域
4)客户端通过DNS查询MX记录和A记录解析对方的IP地址,多个MX记录就找优先级高的
5)目标服务器的服务正常监听在指定端口上来接收客户端的请求
6)确定邮件的目标用户是否在本域
7)如果在域内,通过邮件投递代理把邮件存放到指定的邮件目录
8)该用户登陆系统后进行邮件检测,然后收取邮件即可
案例
- 案例一:mail命令使用方法
#写邮件给redhat
mail to redhat
#输入邮件的主题,冒号前的为提示信息
Subject: test
#输入主题后会返回空白提示,输入邮件内容
mail body,mail content.
#按下CTRL+d按键保存发送,回显一个标记
EOT
#使用mail 命令查看自己的邮件
mail
- 案例二:邮件群发-以root发送workgroup组中的用户都可以收到邮件
#编辑文件
vim /etc/aliases
#加入以下内容
Workgroup : maomao,xixi,redhat
workgroup1: redhat,xixi
#使用postalias命令将别名文件转换成数据库
#postalias /etc/aliases
#ll /etc/aliases*
#useradd maomao /xixi /redhat
#mail to workgroup
#su - xixi
#su - redhat
- 案例三:域内互访
安装使用,默认已经安装
yum install postfix -y
######配置postfix服务--发送邮件服务#####
#编辑主配置文件(自定义邮件域信息)
vim /etc/postfix/main.cf
#配置邮件服务器主机名
76 myhostname=mail.openlab.com
#配置域名(这个邮件服务器管理的是哪个区域范围的邮件发送)
83 mydimain=openlab.com
#指定邮件发送时的域名
99 myorigin= $mydomain
#指定网络接口(默认只监听本地到那时如果要与外界通信那么就要监听所有地址)
113 inet_interface=all
116注释掉
#指定服务器的目标区域,设置邮件可以发送到哪些域名
164 mydestination=$myhostname,localhost,$mydomain,localhost,$mydomain
#指定语序网络网段地址,设置信任的有劲啊客户端地址
264 mynetworks=192.168.221.0/24
#转发域 设置邮件转发到哪去
296 relay_doamins=$mydestination
###########配置dovecot服务--接收邮件服务#####
#配置dovecot主配置文件
vim /etc/dovecot/dovecot.conf
24 protocols=imap pop3 imtp
48 login_trusted_networks=192.168.171.0/24 允许登陆接受的ip段
#编辑dovecot子配置文件
vim /etc/dovecot/conf.d/10-mail.conf
25 mail_location=mbox:~/mail:INBOX=/var/mail/%u
#添加用户后,需要在用户目录下建立INBOX文件夹,否则后面在收信的时候会报错
mkdir /home/mail/.imap/INBOX -P
#注意有的系统可能没有权限
chmod 0600 /var/mail/*
#如果不执行上卖弄这个命令,可能会出席那在系统中可以收到邮件,但是客户端无法收到邮件
- 案例四:域外互访–多增加了一个DNS服务器的搭建