postfix邮件服务器与smtp搭建

登陆万网 配置域名解析

添加记录

记录类型 主机记录 解析线路 记录值 MX优先级 TTL
A mail 默认 网站ip 10分钟
TXT @ 默认 V=spf1 mx -all 10分钟
MX @ 默认 mail.xxx.com 1 10分钟

 

27-2 配置postfix

 

chkconfig postfix on

 

  1. 打开postfix的配置文件

vi /etc/postfix/main.cf

  1. :75 光标移至第75行,修改myhostname

myhostname = mail.xxx.com

  1. :83 光标移至第83行,修改mydomain

mydomain = xxx.com

  1. :99 光标移至第99行,修改myorigin

myorigin = $mydomain

  1. :116光标移至第116行,修改inet_interfaces

inet_interfaces = all

  1. :119光标移至第119行,修改inet_protocols

inet_protocols = all

  1. :164光标移至第164行,添加$mydomain

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

  1. :264光标移至第264行,修改mynetworks

mynetworks = 127.0.0.0/8

子网掩码(netmask)转换器:Network and IP address calculator

  1. :419 光标移至第419行,设置home_mailbox

home_mailbox = Maildir/

  1. :425 光标移至第425行,设置mail_spool_directory,/data是之前挂载的数据盘,mail目录需要通过mkdir命令创建

mail_spool_directory = /mnt/mail

  1. 重启postfix使设置生效

service postfix restart

  1. mkdir /mnt/mail

三、用telnet测试邮件服务器是否正常

  1. 在邮件服务器上安装telnet

yum install telnet

  1. 连接服务器SMTP端口

telnet 127.0.0.1 25

  1. 填写发件人

MAIL FROM:<master@xxx.com>

回车

  1. 填写收件人

RCPT TO:xxxx@163.com

回车

  1. 撰写邮件内容

5.1 开始写邮件内容

DATA

回车

5.2 输入标题

Subject: test message

回车

5.3 输入内容,并以.号结束

test body

.

如果显示下面的信息,说明邮件进入发送队列

250 2.0.0 Ok: queued as 88D6D32A94

 

 

28 配置SMTP

 

1 创建 linux 用户 adduser -g mail -s /sbin/nologin master

Passwd master matserpassword

 

 

2 安装所需的包

rpm -qa | grep cyrus

查看是否安装了如下的包

cyrus-sasl-2.1.23-15.el6_6.1.x86_64

cyrus-sasl-plain-2.1.23-15.el6_6.1.x86_64

cyrus-sasl-lib-2.1.23-15.el6_6.1.x86_64

cyrus-sasl-devel-2.1.23-15.el6_6.1.x86_64

 

如没有 请安装。

 

3 修改smtp的配置文件

vi /etc/sasl2/smtpd.conf

内容为

pwcheck_method: saslauthd

mech_list: plain login

 

4启动 saslauthd 服务 并设置为开机启动

service saslauthd start

chkconfig saslauthd on

 

5 修改postifx的配置文件添加SMTP相关配置 并重启服务

vi /etc/profix/main.cf

在 其中追加

smtpd_sasl_auth_enable=yes

smtpd_sasl_local_domain=$myhostname

smtpd_sasl_security_options=noanonymous

smtpd_sasl_application_name=smtpd

smtpd_banner=$myhostname ESMTP “SMTP Auth Required.”

broken_sasl_auth_clients=yes

smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

 

重启服务

 

service postfix restart

 

  1. 测试SMTP是否搭建成

获取加密的用户名和密码

printf “master” | openssl base64

printf “masterpwd” | openssl base64

使用telnet命令测试

telnet mail.xxx.com 25

ehlo localhost

authlogin

加密过的用户名

加密过的密码

MAIL FROM:master@xxx.com

RCPT TO:xxxx@163.com

data

test

.

成功发送邮件