【任务说明】
Postfix 是一种电子邮件服务器,它是由任职于IBM华生研究中心(T.J. Watson Research Center)的荷兰籍研究员Wietse Venema为了改良sendmail邮件服务器而产生的。最早在1990年代晚期出现,是一个开放源代码的软件,postfix想要作用的范围是广大的Internet用户,试图影响大多数的Internet上的电子邮件系统,因此它是免费的。
postfix在性能上大约比sendmail**倍。一部运行postfix的台式PC每天可以收发上百万封邮件。postfix是与sendmail兼容的,从而使sendmail用户可以很方便地迁移到postfix。postfix被设计成在重负荷之下仍然可以正常工作。当系统运行超出了可用的内存或磁盘空间时,postfix会自动减少运行进程的数目。当处理的邮件数目增长时,postfix运行的进程不会跟着增加。
postfix是由十多个小程序组成的,每个程序完成特定的功能。你可以通过配置文件设置每个程序的运行参数。
postfix具有多层防御结构,可以有效地抵御恶意入侵者。如大多数的postfix程序可以运行在较低的权限之下,用户不可以通过网络访问postfix与安全性相关的本地投递程序。
某生产加工企业希望在企业网环境中架设一台电子邮件服务器,为本单位用户提供邮件服务。该服务器的地址为192.168.223.250和一个合法的域名mail.yhy.com,并且DNS的MX记录也指向该域名,现规划采用Postfix软件来搭建企业的邮件服务器。
【任务实施】
第1步:配置服务器网络环境
本服务器即是DNS服务器又是邮件服务器,IP地址分别设置为192.168.223.250,设置过程如下:
【cd /etc/sysconfig/network-scripts】进入网卡文件存放目录
【cp ifcfg-eth0 ifcfg-eth0.bak】备份将要编辑的网卡配置文件
【vim /etc/sysconfig/network-scripts/ifcfg-eth0】打开并编辑网卡配置文件
将/etc/sysconfig/network-scripts/ifcfg-eth0文件修改成为如下内容:
第2步:安装和配置DNS服务
(1)【yum -y install -y bind】安装DNS主程序
(2)修改/etc/named.conf
【cp /etc/named.conf /etc/named.conf.bak】备份将要编辑的DNS主配置文件
【im /etc/named.conf】v打开并编辑DNS主配置文件
改掉以下只针对本服务器提供服务的三行内容,如果不修改的话,该DNS服务器只针对本身的查询提供应答,不对其他客户端提供域名解析服务。
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
allow-query { localhost; };
修改后的内容如图11-1所示,保存退出。
图11-1 /etc/named.conf文件内容截图
(3)修改/etc/named.rfc1912.zones
【vim /etc/named.rfc1912.zones】打开并编辑named.rfc1912.zones文件,在此文件中定义解析的域名为yhy.com以及提供域名解析的正向查找区域文件为yhy.com.zone。
在/etc/named.rfc1912.zones文件中添加如图11-2所示的内容。
图11-2 /etc/named.rfc1912.zones文件内容修改截图
(4)创建正向查找区域文件yhy.com.zone
【cp -p /var/named/named.localhost /var/named/yhy.com.zone 】复制样本区域文件为yhy.com.zone,一定记得带-p参数,连带权限一并复制。
【vim /var/named/yhy.com.zone】编辑正向查找区域文件
添加如图11-3所示的内容,保存退出,当发送给@yhy.com域的邮件转发到pop.yhy.com服务器上。
图11-3/var/named/yhy.com.zone文件内容修改截图
为了防止权限问题,需要确保该文件所属组为named
【chown :named /var/named/yhy.com.zone】
(5)启用DNS服务
【service named start】
如果出现出现Generating /etc/rndc.key错误,解决方法就是运行下面的命令导入key:
【rndc-confgen -r /dev/urandom –a】
(6)修改防火墙设置
【vim /etc/sysconfig/iptables】
增加两行,允许53端口和953端口通过防火墙
重启防火墙服务
【service iptables restart】
第3步:安装和配置相关邮件服务
安装相关邮件服务
【yum -y install postfix dovecot mailx】
第4步:配置postfix服务
【vim /etc/postfix/main.cf】编辑/etc/postfix/main.cf配置文件。
修改为如下内容(计算机名和域名根据情况修改)
queue_directory = /var/spool/postfix #列队目录
command_directory = /usr/sbin # 控制命令文位置
daemon_directory = /usr/libexec/postfix #后台管理程序位置
data_directory = /var/lib/postfix
mail_owner = postfix #设置邮件及邮件队列的所有者
myhostname = pop.yhy.com #必须是完整的主机名
mydomain = yhy.com
myorigin = $myhostname
myorigin = $mydomain
inet_interfaces = all # 让postfix服务监听的端口
inet_protocols = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
unknown_local_recipient_reject_code = 550
mynetworks = 0.0.0.0/0 #允许内部用户匿名SMTP连接请求范围
alias_maps = hash:/etc/aliases # 别名数据库查询
alias_database = hash:/etc/aliases # 别名数据库
home_mailbox = Maildir/
debug_peer_level = 2 #排错相关
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix #sendmail目录
newaliases_path = /usr/bin/newaliases.postfix #newaliases目录 一个命令 重建别名数据库
mailq_path = /usr/bin/mailq.postfix #mailq工具所在目录
setgid_group = postdrop #所有者组
html_directory = no
manpage_directory = /usr/share/man #man目录
sample_directory = /usr/share/doc/postfix-2.6.6/samples #模版目录
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES #说明文件目录
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes #是否开启sasl验证
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, permit #反垃圾邮件相关
broken_sasl_auth_clients = yes
第5步:设置postfix在服务器中运行
【service postfix restart】启动postfix服务
【chkconfig postfix on】设置postfix服务开机后自动启动
第6步:配置dovecot服务
(1)配置dovecot接收邮件服务器主配置文件
【vim /etc/dovecot/dovecot.conf】编辑/etc/dovecot/dovecot.conf文档。
将以下两行的#去掉,修改为如下内容
具体修改内容如图11-4所示。
图11-4 dovecot主配置文件修改内容截图
(2)配置认证方式
【vim /etc/dovecot/conf.d/10-auth.conf】打开编辑10-auth.conf认证方式文件将以下两行内容前面的注释符号去掉:
(3)配置文件夹位置
【vim /etc/dovecot/conf.d/10-mail.conf】打开编辑10-mail.conf文件配置邮件的存放位置,将以下一行前面的注释符号去掉:
(4)配置认证
【vim /etc/dovecot/conf.d/10-master.conf】打开编辑10-master.conf文件,
将以下内容的前两行的注释符号去掉,然后增加后面两行内容,修改后的内容如下:
(5)配置pop3
【vim /etc/dovecot/conf.d/20-pop3.conf】打开编辑20-pop3.conf文件,将以下内容前面的 注释“#”去掉,修改后的内容如下:
第7步:重启相关服务
【service dovecot restart】重启dovecot服务
【chkconfig dovecot on】设置dovecot服务开机自动启动
第8步:新增邮件用户
(1)创建yang3 和li4 都不允许本地登录
【useradd -s /sbin/nologin yang3】创建yang3用户并指定不可用的shell(登录环境)
【useradd -s /sbin/nologin li4】创建li4用户并指定不可用的shell
(2)设置123456为两个用户的初始密码:
【echo 123456 | passwd --stdin yang3】设置yang3的密码为123456
【echo 123456 | passwd --stdin li4】设置li4的密码为123456
当看到有“successfully”字样时,表示密码设置成功。
第9步:配置防火墙
【iptables –F】 清空防火墙
【service iptables save】 保存防火墙配置
第10步:测试相关服务