目录(持续更新)
基础-第0章-安装
基础-第1章-基本操作
基础-第2章-磁盘及文件系统管理
基础-第3章-获得帮助
基础-第4章-用户及权限基础
基础-第5章-网络基本配置
基础-第6章-管道,重定向及文本处理
基础-第7章-系统启动详解
进阶-第1章-日志服务
进阶-第2章-DNS域名服务器
进阶-第3章-FTP文件共享服务
进阶-第4章-NFS文件共享服务
进阶-第5章-SMB文件共享服务
进阶-第6章-WEB服务Apache篇
进阶-第7章-电子邮件服务
进阶-第8章-Linux服务基础及管理
高级-第1章-LVM逻辑卷
高级-第2章-高级权限ACL
高级-第3章-RAID提升速度及冗余
高级-第4章-高级网络-网卡绑定,子端口
高级-第5章-SELinux安全系统基础
高级-第6章-IPTable防火墙基础
高级-第7章-Linux远程管理-SSH、VNC
第7章-电子邮件服务
第一节 电子邮件服务
-
电子邮件
电子邮件起于1960 网络电邮1971 中国第一份电子邮件1987 电子邮件多架构组成
-
基本组件
MUA 邮件用户代理 邮件客户端,如outlookthunderbird 通过网页访问电子邮件那么使用的网页程序也叫MUA MTA 邮件传输代理 邮件服务器程序,负责实现SMTP协议 MDA 邮件发送代理 MRA 邮件接收代理 实现IMAP或POP3协议与用户邮件客户端进行交互,将邮件通过IMAP或POP3传输给邮件客户端 SMTP 协议 所有邮件发送都是通过SMTP协议完成 IMAP 协议 用户邮件客户端使用IMAP协议从服务器上抓邮件 POP3 协议 用户邮件客户端使用POP3协议从服务器上抓邮件 MTA --UDP--> DNS(MX record) MTA --SMTP-> MTA ------> MDA(/var/spool/mail/username) ------> MUA -------> MRA ------> MDA
-
MUA客户端
mail user agent 为邮件用户代理,用户通过MUA接收邮件 常用的软件有: outlook mac mail thunderbird foxmail mutt
IMAP POPO3
MUA接收邮件用的是IMAP或POP3标准接收协议 负责从邮件服务器上将特定用户的邮件抓取下来 我们可以控制抓取后是否在邮件服务器上保存邮件 IMAP主要优势在于客户的所有操作都与邮件服务同步 而POP3则是将邮件下载下来,所有操作都在本地,不影响服务器 IMAP体现更好
-
MTA
邮件传输代理 邮件服务器SMTP是邮件发送标准 SMTP是简单邮件传输协议 所有MTA都是对SMTP的实现 linux的主流MTA有sendmail Postfix MTA只负责邮件传输 邮件保存是MDA完成的
-
MDA
邮件递送代理 负责将MTA接收到的邮件保存在一起 通常MDA和MTA是紧密结合的 linux上邮件的默认保存目录是 /var/spool/mail/username MDA对邮件垃圾处理和病毒扫描 linux最常用的MDA有procmail maildrop sendmail Postfix用的都是procmail
-
MRA
提供IMAP和POP3协议服务器 实现协议负责和MUA交互 linux常用DOVECOT 为了安全现代邮件一般使用数字证书加密 IMAP POP3 IMAPS POP3S
-
电邮地址格式
两种 nash_su@mail.linuxcast.net nash_su@linuxcast.net 常用第二种 第二种形式的邮件爱你地址因为没指定域的邮件服务器的地址需要对域名进行DNS服务器查询
第二节 POSTFIX邮件服务器基础配置
postfix目前主流的MTA 主要用来实现SMTP功能
postfix速度快,兼容sendmail,稳定灵活健壮,安全性强
-
postfix
postfix一般默认会安装 yum install -y postfix 主配置文件 /etc/postfix/main.cf 启动postfix service postfix start chkconfig postfix on 默认使用端口25 (SMTP) 默认启动为本机用户提供邮件服务 默认监听loop端口 netstat -tupln | grep master 查看 我们可以通过以下命令发送邮件 mail -vs "test mail from linuxcast" root@training。linuxcast.net 输入邮件内容... Q退出 通过mail邮件可查看
-
对外提供服务配置
主配置文件 /etc/postfix/main.cf 不建议直接修改 使用postconf命令编辑查看 postconf -d 显示默认配置 postconf -n 显示当前生效的配置 postconf -e key=value 开始配置 postconf命令会将修改内容写入main.cf文件 这样的方式可以避免错误
-
实验环境
一台training.linuxcast.net 一台mail.linuxcast.net DNS服务器
-
配置开始
开启监听所有接口 postconf -e "inet_interfaces = all" 之后指定可能会代表本机的主机名 postconf -e "myhostname = mail.linuxcast.net" postconf -e "mydomain = linuxcast.net" 默认主机名 mydestination = $myhostname,localhost.$mydimain,localhost 限制能接受邮件的发送地址 发送邮件时使用代表本机的主机名必须再次列出,否则无法接受邮件 重启
-
域伪装
发邮件源地址一般要伪装 默认发出源地址为 用户名@主机名 一般习惯为 用户名@域名
-
通过myorigin伪装
postconf -e "myorigin=$mydomain"
-
不要伪装的用户
postconf -e "masquerade_exceptions = root"
-
最后配置如下
mydomain = linuxcast.net myhostname = mail.linuxcast.net inet_interfaces = all mydestination = $myhostname,localhost.$mydimain,localhost mynetworks = 127.0.0.0/8 无需认证的地址 myorigin=$mydomain
-
postfix管理
查看当前邮件发送队列
postqueue -p
刷新对立
postqueue -f
查看邮件服务日志
tail -f /var/log/maillig
网友评论