RHEL6版-项目13Postfix与Dovecot邮件服务器的搭建.ppt_第1页
RHEL6版-项目13Postfix与Dovecot邮件服务器的搭建.ppt_第2页
RHEL6版-项目13Postfix与Dovecot邮件服务器的搭建.ppt_第3页
RHEL6版-项目13Postfix与Dovecot邮件服务器的搭建.ppt_第4页
RHEL6版-项目13Postfix与Dovecot邮件服务器的搭建.ppt_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“十二五”职业教育国家规划教材选题立项 Red Hat Enterprise Linux 6.4(RHEL6.4) 教材附带的光盘资源,Linux网络操作系统配置与管理,教材主编:夏笠芹,课程标准(教学大纲) 教学设计方案(教案) PPT电子课件 教材习题参考答案 模拟试卷及参考答案(4套) IT认证+全国技能大赛资料 知识拓展&网络工程解决方案,项目13 Postfix与Dovecot邮件服务器的搭建,【职业知识目标】 了解:电子邮件服务的概念和特点,电子邮件服务的常用协议 熟悉:电子邮件系统的结构,电子邮件的传递过程 掌握:使用Postfix+dovecot搭建电子邮件服务器,使用Office Outlook收发邮件的方法 【职业能力目标】 能使用Postfix+dovecot搭建电子邮件服务器 使用用户别名虚拟别名实现邮件群发 会使用Ofiice Outlook收发邮件 会配置基于邮件地址的过滤控制 能配置SMTP认证 会用WEB方式收发邮件,13.1 项目背景,电子邮件(简称E_mail)是Internet最早出现的服务之一,是人们利用计算机网络进行信息传递的一种简便、迅速、廉价的现代化通信方式,它不但可以传送文本,还可以传递图片、图像、声音等多媒体信息。此外,附加网络硬盘的邮箱存储和兼顾收发短信、彩信、邮件等服务功能的移动邮箱,让用户可以通过手机随时随地获取邮件信息,实现真正的移动畅快沟通。 到2012年,全国企业邮箱用户数达到5.8亿,虽然多数用户使用ISP或免费的电子邮箱收发电子信件,但对一些企事业单位而言,拥有自己的邮件系统是高效、安全业务运作与快速市场响应的标志,它不仅能够满足组织内部频繁的信件交流的需求,还能够提升组织形象并带来实际效益,据统计Internet上有30%的业务与电子邮件有关,邮件系统正逐步成为现代企事业内外信息交流、商务往来、移动办公的重要工具。,13.2 项目知识准备,13.2.1 电子邮件系统的组成 邮件用户代理MUA客户端程序,其功能是为邮件用户提供发送、接收及邮件的撰写、阅读的界面,是用户与电子邮件系统的接口。 邮件传输代理MTA负责接收MUA发送的邮件,并将邮件由一个MTA服务器转发到另一个MTA服务器。 邮件递交代理MDA负责把邮件按照接收者的用户名投递到邮箱中。 电子邮件协议 SMTP、POP3 、IMAP4,13.2.2 电子邮件传输过程,当163.com服务器上的用户zhang3向发送E-mail时,zhang3使用MUA编辑要发送的邮件,然后发送至163.com域(本地域)的SMTP服务器。 163.com的SMTP服务器收到邮件后,将邮件放入缓冲区,等待发送。 163.com的SMTP服务器每隔一定时间处理一次缓冲区中的邮件队列,若是自己负责域的邮件,则根据自身的规则决定接收或者拒绝此邮件,否则163.com的SMTP服务器根据目的E-mail地址,使用DNS服务器的MX(邮件交换器资源记录)查询解析目的域的SMTP服务器地址,并通过网络将邮件传送给目标域的SMTP服务器。 的SMTP服务器收到转发的E-mail后,根据邮件地址中用户名判断用户的邮箱,并通过MDA将邮件投递到li4用户的邮箱中保存,等待用户登录来读取或下载。 的li4用户利用客户端的MUA软件登录至的POP服务器,从其邮箱中下载并浏览E-mail。,13.2.3 Linux平台上主流E_mail软件,任务13-1 发送邮件服务器Postfix的配置,1Postfix服务的安装(RHEL6默认安装了Postfix而非Sendmail) rootmail # rpm -qa | grep postfix postfix-2.6.6-2.2.el6_1.i686 rootmail # chkconfig -list postfix 2Postfix的主要配置文件,任务13-1 发送邮件服务器Postfix的配置,3main.cf文件配置行的格式及常用配置参数 Postfix绝大多数配置参数都在main.cf文件中,且都设置了缺省值。用户只要调整几个基本的参数便可搭建起基本的接收邮件服务器。 配置行的格式为:参数=参数值|$参数。 所有配置以类似变量的设置方法来处理,如:myhostname = ,请注意等号的两边要留空格符,非续行的配置行第一个字符不可以是空白,要从行首写起。 可以使用“$”来扩展使用变量设置。例如,当myhostname = ,而myorigin=$myhostname时,则后者等价于myorigin = 。 如果参数支持两个以上的参数值,则可使用空格符或逗号加空格符来分隔。如:“mydestination = $myhostname, $mydomain, ” 可使用多行来表示同一个设置值,只要在第一行最后有逗号,且第二行开头为空格符,即可将数据延伸到第二行继续书写。 若重复设置了某一项目,则以较晚出现的设置值为准。,任务13-1 发送邮件服务器Postfix的配置,4Postfix服务器的基本配置 【例13-1】Postfix和DNS服务在IP地址为1的同一主机,主机名为,服务器应为本地域中的用户提供邮件服务以及远程邮件域邮件的中继转发,局域网网段为/16。 配置的步骤如下: 步骤1:设置Postfix服务器所在主机的主机名,rootmail # vim /etc/sysconfig/network /将HOSTNAME配置项改为: HOSTNAME= rootmail # service network restart,步骤2:设置DNS服务 步骤3:安装Postfix软件。 步骤4:编辑主配置文件main.cf,按照表13-2所示调整基本配置项。,任务13-1 发送邮件服务器Postfix的配置,任务13-1 发送邮件服务器Postfix的配置,步骤5:检查配置文件的语法正确性,重新加载配置。 rootmail # postfix check rootmail # service postfix restart 步骤6:创建用户账号。 步骤6:创建用户账号。 步骤7:为了使用telnet工具进行发信测试,安装telnet相关软件包 步骤8:执行ntsysv命令在弹出的窗口中,按空格键选择telnet按【 Tab】键选择【确定】开启telnet服务执行service xinetd start启动服务(telnet是挂在xinetd下的,只要启动xinetd服务就能启动telnet服务)。 步骤9:发信测试(下面粗体部分为用户输入,其余为系统应答信息),任务13-2 接收邮件服务器Dovecot的配置,1dovecot服务的安装 过程如下:,rootmail # vim /etc/dovecot/dovecot.conf /查找以下配置行并将其修改为: protocols = imap pop3 lmtp /20行:指定本邮件主机所运行的协议 listen = * /26行:监听本机的所有网络接口 login_trusted_networks = /16 /38行:指定允许登录的网段地址,2dovecot服务的基本配置 步骤1:要启用最基本的Devocot服务,需对文件/etc/dovecot/dovecot.conf作如下修改:,# mount /dev/cdrom /mnt # rpm -ivh /mnt/Packages/dovecot-2.0.9-5.el6.i686.rpm,任务13-2 接收邮件服务器Dovecot的配置,步骤3:启动Dovecot服务并设置为开机自动启动。,rootmail # service dovecot start rootmail # chkconfig -level 345 dovecot on,步骤2:对/etc/dovecot/conf.d/10-mail.conf配置文件作如下修改:,rootmail # vim /etc/dovecot/conf.d/10-mail.conf /查找以下配置行(第24行)并将行首“#”去掉 mail_location = maildir:/Maildir /指定邮件存储格式和位置,任务13-3 使用Office Outlook 2007收发邮件,1在客户端建立电子邮件账户 步骤1:若在服务器端开启防火墙,则要在服务器端使用以下命令开启25和110端口。 rootmail # iptables -I INPUT -p tcp -dport 25 -j ACCEPT rootmail # iptables -I INPUT -p tcp -dport 110 -j ACCEPT 步骤2:配置客户端DNS地址,使其指向网络中DNS服务器的IP地址,如图13-3所示。 步骤3:单击【开始】【程序】【Microsoft Office】【Microsoft Office Outlook 2007】在弹出的Office Outlook 2007主窗口中依次单击【工具】【帐户设置】菜单项,如图13-4所示。 步骤4:在弹出的【电子邮件帐户】对话框上单击【电子邮件】选项卡单击【新建】按钮,如图13-5所示。 步骤5:弹出【选择电子邮件服务】对话框,选择【Microsoft Exchanges、POP3、IMAP或HTTP】单选项单击【下一步】,如图13-6所示。 步骤6:在弹出的【自动帐户设置】对话框中勾选【手动配置服务器设置或其他服务器类型】单击【下一步】,如图13-7所示。 步骤7:弹 出【选择电子邮件服务】对话框,选择【Internet电子邮件】单选项单击【下一步】,如图13-8所示。,任务13-3 使用Office Outlook 2007收发邮件,步骤8:弹出【Internet电子邮件设置】对话框,填写用户、服务器和登录等信息,填写完成后单击【测试用户设置】按钮弹出【测试用户设置】系统开始测试,若测试任务的状态均显示“已完成”,则表明设置正确单击【关闭】按钮,系统返回【Internet电子邮件设置】对话框,单击【其他设置】按钮,如图13-9所示。 步骤9:弹出【Internet电子邮件设置】对话框,单击【发送服务器】选项卡取消勾选【我的发送服务器(SMTP)要求验证”】,如图13-10所示。 步骤10:单击【高级】选项卡勾选【在服务器上保留邮件的副本】单击【确定】按钮,如图13-11所示。 步骤11:系统返回【Internet电子邮件设置】对话框中,单击【下一步】,在弹出的窗口中单击【完成】,则成功新建了一个邮件帐户。 重复步骤4步骤11过程可建立多个帐户,如图13-12所示,任务13-3 使用Office Outlook 2007收发邮件,2用户在客户端收发电子邮件 步骤1:在客户端启动Office Outlook 2007在弹出的Office Outlook 2007主窗口中单击【新建】在打开的【未命名-邮件】窗口中,单击【帐户】下拉按钮选择发件人输入收件人的邮箱地址、主题和邮件内容单击【发送】按钮,如图13-13所示。,任务13-3 使用Office Outlook 2007收发邮件,2用户在客户端收发电子邮件 步骤2:若能成功发送邮件则说明SMTP服务器运行正常。在Office Outlook 2007主窗口上点击【发送/接收】图标,若成功接收,说明POP3服务运行也正常,如图13-14所示。,任务13-4 使用用户别名实现邮件群发,在Postfix邮件系统中,发给一个别名用户邮件地址的邮件会实际投递到相对应的一个或多个真实用户的邮箱中,从而实现邮件一发多收的群发效果。另外,当真实用户采取实名制,而别名使用非实名制时,那又起到了隐藏真实邮件地址的效果。 用户别名机制通过/etc/aliases文件实现,其配置步骤如下: 步骤1:编辑main.cf,确认文件中包含如下两条语句(默认已存在):,rootmail # vim /etc/postfix/main.cf alias_maps = hash:/etc/aliases/ /386行:指定含有用户别名定义的文件的路径及名称 alias_database = hash:/etc/aliases /397行:指定别名表数据库文件的路径及名称,任务13-4 使用用户别名实现邮件群发,步骤2:编辑/etc/aliases文件,建立别名用户与真实用户的映射关系。,rootmail # vim /etc/aliases /添加以下两行: admin: my_stu: zhang3, li4, wang5,步骤3:执行如下命令,使修改后的配置文件main.cf和aliases立即生效。,rootmail # postalias /etc/aliases /生成可以读取的库文件aliases.db rootmail # newaliases rootmail # service postfix reload,任务13-4 使用用户别名实现邮件群发,步骤4:验证使用用户别名实现邮件的群发功能,任务13-5 使用虚拟别名域实现邮件群发,使用虚拟别名域,可以将发给虚拟域的邮件实际投递到真实域的用户邮箱中。而当一个虚拟域对应多个真实域时,则能实现邮件的群发功能。 虚拟别名域的配置步骤如下: 步骤1:编辑主配置文件main.cf,在其末尾添加以下两条配置行:,rootmail # vim /etc/postfix/main.cf virtual_alias_domains = , /指定虚拟别名域的名称(可以定义多个) virtual_alias_maps = hash:/etc/postfix/virtual /指定虚拟别名域文件的路径和名称,步骤2:编辑/etc/postfix/virtual文件,在其中添加虚拟别名域与真实域名间的映射关系。,rootmail # vim /etc/postfix/virtual v_ li4, wang5, zhang3,任务13-5 使用虚拟别名域实现邮件群发,步骤3:执行如下命令,使更改后的配置文件main.cf和virtual立即生效。,步骤4:验证使用虚拟别名域实现邮件的群发功能,rootmail # postmap /etc/postfix/virtual /更新virtual.db数据库文件 rootmail # postfix reload,任务13-6 基于邮件地址的过滤控制,1基于客户端主机名/地址的限制规则 使用smtpd_client_restrictions参数对客户端使用的IP地址、网络地址、主机名、域名等进行过滤检查 步骤1:修改main.cf文件,添加基于客户端地址的过滤项目,rootmail # vim /etc/postfix/main.cf smtpd_client_restrictions = /基于客户端地址的过滤参数,以下是2个参数值 check_client_access hash:/etc/postfix/access /指定验证访问表的名称及位置 reject_unknown_client /拒绝其IP地址在DNS中无PTR记录的客户端,步骤2:编辑access文件,在其中添加基于客户端地址的过滤规则,rootmail # vim /etc/postfix/access 172.16.102 OK 8 REJECT REJECT /保存退去。下面第一条命令是将access文件转换为hash数据库文件access.db rootmail # postmap /etc/postfix/access rootmail # service postfix reload,任务13-6 基于邮件地址的过滤控制,步骤3:验证 由于客户端的IP地址为被拒绝的8,因此出现如图13-17所示的无法到达收件人的系统报告。,任务13-6 基于邮件地址的过滤控制,2基于发件人地址的限制规则 使用smtpd_sender_restrictions参数可以针对发件人的地址设置多项限制 步骤1:修改main.cf文件,添加基于发件人地址的过滤项目,rootmail # vim /etc/postfix/main.cf smtpd_sender_restrictions = /基于发件人的过滤参数 permit_mynetworks, /允许其IP地址在$mynetworks范围的发件人的连接 reject_sender_login_mismatch, /拒绝发件人与登录用户不匹配时的连接 reject_non_fqdn_sender, /拒绝发件人地址域不是FQDN格式的连接 reject_unknown_sender_domain, /拒绝其IP在DNS中无A或MX记录的发件人 check_sender_access hash:/etc/postfix/sender_access /指定发件人访问表的位置 rootmail # postfix reload,任务13-6 基于邮件地址的过滤控制,2基于发件人地址的限制规则 步骤2:创建sender_access文件,在其中添加基于发件人地址的过滤规则。,rootmail # vim /etc/postfix/sender_access REJECT /拒绝L用户从外部登录发送邮件 liu2 REJECT /拒绝任何域的liu2用户发送邮件 REJECT /拒绝的子域用户发送邮件 rootmail # postmap /etc/postfix/sender_access /生成hash格式的库文件,任务13-6 基于邮件地址的过滤控制,3基于收件人地址的限制规则 通过smtpd_recipient_restrictions参数可以对收件人进行过滤检查,rootmail # vim /etc/postfix/main.cf smtpd_recipient_restrictions = /基于收件人的过滤参数 permit_mynetworks, /允许本邮件系统发出的邮件 reject_unauth_destination, /拒绝不是发往默认转发和默认接收的连接 reject_non_fqdn_recipient, /拒绝其地址域不属于合法FQDN的收件人 reject_unknown_recipient_domain /拒绝其IP在DNS中无A或MX记录的收件人 rootmail # postfix reload,任务13-7 使用Cyrus-SASL实现SMTP认证,无论是本地域内的不同用户还是本地域与远程域的用户,要实现邮件通信都要求邮件服务器开启邮件的转发功能。为了避免邮件服务器成为各类广告与垃圾信件的中转站和集结地,对转发邮件的客户端进行身份认证(用户名和密码验证)是非常必要的。 SMTP认证机制常用的是通过Cryus SASL包来实现的,其具体配置步骤如下: 步骤1: RHEL6默认已经安装了Cyrus-SASL认证包。,rootmai1 # rpm -qa | grep sasl cyrus-sasl-2.1.23-13.el6_3.1.i686 cyrus-sasl-lib-2.1.23-13.el6_3.1.i686 cyrus-sasl-plain-2.1.23-13.el6_3.1.i686 cyrus-sasl-gssapi-2.1.23-13.el6_3.1.i686,任务13-7 使用Cyrus-SASL实现SMTP认证,步骤2:查看、选择、启动和测试所选的密码验证方式,rootmail # saslauthd -v /查看支持的密码验证方法 saslauthd 2.1.23 authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap rootmail # vim /etc/sysconfig/saslauthd /将密码认证机制修改为shadow MECH=shadow root mail # ps aux | grep saslauthd /查看saslauthd进程是否已经运行 root 6126 0.0 0.1 5980 744 pts/0 S+ 10:04 0:00 grep saslauthd rootmail # service saslauthd start rootmail # chkconfig saslauthd on /开启SELinux允许saslauthd程序读取/etc/shadow文件 rootmail # setsebool -P allow_saslauthd_read_shadow on rootmail # testsaslauthd -u li4 -p 123.com /测试saslauthd的认证功能 0:OK “Success.” /表示saslauthd的认证功能已起作用,任务13-7 使用Cyrus-SASL实现SMTP认证,步骤3:调整main.cf文件,使Postfix支持SMTP认证,rootmail # vim /etc/postfix/main.cf smtpd_sasl_auth_enable = yes /启用SASL作为SMTP认证 smtpd_sasl_local_domain = /采用Cyrus-SASL V2版认证这里不作设置 broken_sasl_auth_clients = yes /兼容早期非标准的SMTP认证协议(如OE4.x) smtpd_sasl_security_options = noanonymous /禁止采用匿名登录方式 smtpd_recipient_restrictions = /设置基于收件人地址的过滤规则 permit_mynetworks, /允许局域网内的MUA不需要认证也能发邮件 permit_sasl_authenticated, /允许通过了SASL认证的用户向外发送邮件 reject_unauth_destination /拒绝不是发往默认转发和默认接收的连接 smtpd_client_restrictions = permit_sasl_authenticated / /禁止未经过认证的客户端,步骤4:重新载入Postfix服务,使配置文件生效,rootmail # postfix reload,任务13-7 使用Cyrus-SASL实现SMTP认证,步骤5:测试Postfix的SMTP认证,rootmail # printf “zhang3“ | openssl base64 emhhbmcz /经过编码的用户名zhang3 rootmail # printf “123456“ | openssl base64 MTIzNDU2 /经过编码的密码123456 rootmail # telnet 25 /第一次失败的测试 Trying 1. Connected to (1). Escape character is . 220 ESMTP Postfix EHLO localhost 250- 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-AUTH LOGIN PLAIN /表明Postfix已启用了SMTP认证功能 250-AUTH=LOGIN PLAIN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN MAIL FROM: 250 2.1.0 Ok RCPT TO: 554 5.7.1 : Relay access denied /未经过验证的发信失败,任务13-7 使用Cyrus-SASL实现SMTP认证,步骤5:测试Postfix的SMTP认证,AUTH LOGIN /声明开始进行SMTP认证登录 334 VXNlcm5hbWU6 Emhhbmcz /填写zhang3用户名对应的加密字符串 334 UGFzc3dvcmQ6 MTIzNDU2 /填写zhang3用户密码对应的加密字符串 235 2.0.0 Authentication successful /登录成功,身份认证配置是正确的 MAIL FROM: 250 2.1.0 Ok RCPT TO: 250 2.1.5 Ok DATA 354 End data with . how are you! . 250 2.0.0 Ok: queued as D84771483B4 QUIT 221 2.0.0 Bye Connection closed by foreign host.,任务13-7 使用Cyrus-SASL实现SMTP认证,步骤6:客户端启用认证支持。 当服务器启用认证机制后,客户端也需要启用认证支持。以Office Outlook 2007为例,在图13-10的窗口中一定要勾选【我的发送服务器(SMTP)要求验证”】,否则,不能向其它邮件域的用户发送邮件,而只能够给本域内的其他用户发送邮件。,1SquirrelMail的下载与安装 SquirrelMail是使用PHP开发的一套网页程序,可以与postfix、Dovecot很好地协作,通过Web界面提供邮件发送,接收和管理操作。SquirrelMail下载与安装步骤如下: 步骤1:从RHEL6开始未自带SquirrelMail了,用户可以从官方网站或其它网站下载SquirrelMail软件包和多国语言包。 步骤2:将下载的程序包和多国语言包传送至服务器的/tmp/目录下,并将其解压到Web服务器的/var/www/webmail目录,rootmail # tar -zxf /tmp/squirrelmail-webmail-1.4.22.tar.gz -C /var/www rootmail # mv /var/www/squirrelmail-webmail-1.4.22 /var/www/webmail rootmai1 # tar -zxf /tmp/all_locales-1.4.18-20090526.tar.gz -C /var/www/webmail,任务13-8 使用SquirrelMail实现Web方式收发邮件,1SquirrelMail的下载与安装 步骤3:创建用于存放邮件内容(如签证,名称和主题)、上传附件的data和attach目录(其中在解压SquirrelMail软件包后, data目录已自动生成),并确保网站运行用户(Apache网站默认以“apache.apache”身份访问)对这两个目录有访问和写入权限。,rootmai1 # chown -R apache.apache /var/www/webmail/data/ rootmai1 # mkdir -p /var/www/webmail/attach/ rootmai1 # chown -R root.apache /var/www/webmail/attach/ rootmai1 # chmod -R 730 /var/www/webmail/attach/,任务13-8 使用SquirrelMail实现Web方式收发邮件,任务13-8 使用SquirrelMail实现Web方式收发邮件,2建立和调整SquirrelMail的配置文件 SquirrelMail的主配置文件位于子目录config/中,该文件并不存在,但可以在相同目录下复制样本文件便可生成,然后对其作适当修改。,rootmai1 # cd /var/www/webmail/ rootmai1 webmail# cp config/config_default.php config/config.php rootmai1 webmail# vim config/config.php /省略大部分配置行,查找以下各行并按所示修改: $domain = ; /118行:本地邮件域 $imap_server_type = dovecot; /231行:使用IMAP的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论