《电子邮件服务的配置与应用》由会员分享,可在线阅读,更多相关《电子邮件服务的配置与应用(47页珍藏版)》请在金锄头文库上搜索。
1、第第09章章 电子邮件服务的配置与应用电子邮件服务的配置与应用本章导读l电子邮件服务的概述lpostfix邮件服务的安装lpostfix邮件服务的配置l启动和停止postfix服务lPOP和IMAP邮件服务的实现l电子邮件客户端的配置lWeb方式收发邮件电子邮件服务的概述电子邮件服务的概述电子邮件服务的概述电子邮件系统的简介电子邮件服务的工作原理主流电子邮件服务器软件电子邮件服务的概述Internet最基本的服务,也是最重要的服务之一,就是电子邮件服务。据统计Internet上百分之三十以上的业务量是电子邮件,仅次于WWW服务。与传统的邮政信件服务类似,电子邮件可以用来在Internet或In
2、tranet上进行信息的传递和交流,但电子邮件服务还具有快速、经济的特点。发一份电子邮件给远在他方的一位用户,通常来说,对方几分钟之内就能收到。如果选用传统邮件,发一封特快专递也需要至少一天的时间。而且电子邮件的费用最多只需几毛钱。与实时信息交流,如电话相比,因为电子邮件是采用存储转发的方式,发送邮件时,并不需要收件人处于在线状态,收件人可以根据实际需要随时上网从邮件服务器上收取邮件,方便了信息的交流。电子邮件系统的简介对于一个完整的电子邮件系统而言,它主要由以下三部分构件组成。1用户代理2邮件服务器3电子邮件使用的协议SMTP协议POP3协议IMAP4协议电子邮件服务的工作原理E-mail的
3、传输过程如下。用户在各自的POP服务器注册登记,由网络管理员设置为授权用户,并取得一个POP信箱,获得POP和SMTP服务器的地址信息。假设两个服务器的域名分别为和,注册用户分别为liu和chen,E-mail地址分别为和。当服务器上的用户liu向发送E-mail时,E-mail首先从客户端被发送至的SMTP服务器。的SMTP服务器根据目的E-mail地址查询的SMTP服务器,并转发该E-mail。的SMTP服务器收到转发的E-mail,并保存。的chen用户利用客户端登录至的POP服务器,从其信箱中下载并浏览E-mail。主流电子邮件服务器软件在Linux平台中,有许多邮件服务器可供选择,但
4、目前使用较多的是Sendmail服务器、Postfix服务器和Qmail服务器。Sendmail是一个很优秀的邮件服务软件。几乎所有Linux的缺省配置中都内置了这个软件,只需要设置好操作系统,它就能立即运转起来。Postfix是一个由IBM资助下由WietseVenema负责开发的一个自由软件工程产物,它的目的就是为用户提供除Sendmail之外的邮件服务器选择。Qmail是有DanBernstein开发的可以自由下载邮件服务器软件,其第一个beta版本发布于1996年1月24日,当前版本是。postfix邮件服务的安装邮件服务的安装RedHatEnterpriseLinux提供了sendm
5、ail和postfix两种STMP邮件服务软件,让用户可以随意地选择其中一种!不过,默认情况下安装程序已将sendmail安装到系统中了,如果要使用postfix,就必须先将sendmail服务停止,然后再安装postfix服务软件。具体操作步骤如下:检查sendmail服务是否已启动netstat-nutlp|grep:25关闭sendmail服务及开机时自启动chkconfigsendmailoff安装postfix服务将RedHatEnterpriseLinux5的第3张安装盘放入光驱,加载光驱后在光盘的Server目录下找到postfix的RPM安装包文件,然后使用下面的命令安装:邮件
6、服务的配置邮件服务的配置postfix服务的基本配置服务的基本配置虚拟别名域的配置虚拟别名域的配置用户别名的配置用户别名的配置SMTP认证的配置认证的配置postfix服务的基本配置1设置运行postfix服务的邮件主机的主机名、域名2设置由本机寄出的邮件所使用的域名或主机名称myorigin=$mydomain3设置postfix服务监听的网络接口inet_interfaces=all4设置可接收邮件的主机名称或域名mydestination=$mydomain,$myhostname5设置可转发(Relay)哪些网络的邮件6设置可转发哪些网域的邮件虚拟别名域的配置虚拟别名域的配置编辑pos
7、tfix主配置文件,进行如下定义:,virtual_alias_maps=hash:/etc/postfix/virtual编辑配置文件/etc/postfix/virtual,进行如下定义:st0321001,lbt,在修改配置文件和virtual后,要使更改立即生效,应分别执行/usr/sbin目录下以下的两条命令:postmap /etc/postfix/virtualpostfix reload虚拟别名域的配置虚拟别名域的配置此外,要使它能在单位内部网络中更好地转发邮件,还必须进行DNS设置。.IN CNAME.INMX.用户别名的配置打开postfix主配置文件,应确认文件中包含以下
8、两条默认语句:alias_maps=hash:/etc/aliasesalias_database=hash:/etc/aliases编辑配置文件/etc/aliases,进行如下定义:st0322:st0322001,st0322002,st0322003,st0322004st0323:include:/etc/mail/st0323jcz01:jczliuminglm01:jczliuming,在修改配置文件和aliases后,要使更改立即生效,应分别执行/usr/sbin目录下以下的两条命令:postalias /etc/aliases postfix reloadSMTP认证的配置C
9、yrusSASL是CyrusSimpleAuthenticationandSecurityLayer的简写,它最大的功能是为应用程序提供了认证函数库。应用程序可以通过函数库所提供的功能定义认证方式,并让SASL通过与邮件服务器主机的沟通从而提供认证的功能。1Cyrus-SASL认证包的安装默认情况下,RedHatEnterpriseLinux安装程序会将Cyrus-SASL认证包,可使用下面的命令检查系统是否已经安装了Cyrus-SASL认证包或查看已经安装了何种版本:rpm -qa | grep sasl如果系统还没有安装Cyrus-SASL认证包,应将RedHatEnterpriseLin
10、ux5第1、2和3张安装光盘分别放入光驱,加载光驱后在光盘的Server目录下找到与Cyrus-SASL认证包相关的RPM包文件,然后分别使用rpm-ivh命令安装。例如,要安装第1张光盘上的包文件,可使用下面的命令:SMTP认证的配置2Cyrus-SASLV2的密码验证机制默认情况下,Cyrus-SASLV2版使用saslauthd这个守护进程进行密码认证,而密码认证的方法有多种,使用下面的命令可查看当前系统中的Cyrus-SASLV2所支持的密码验证机制:saslauthd v当前可使用的密码验证方法有getwent、kerberos5、pam、rimap、shadow和ldap。为简单起
11、见,这里准备采用shadow验证方法,也就是直接用/etc/shadow文件中的用户账户及密码进行验证,因此,在配置文件/etc/sysconfig/saslauthd中,修改当前系统所采用的密码验证机制为shadow,即:MECH=shadowSMTP认证的配置3测试Cyrus-SASLV2的认证功能由于Cyrus-SASLV2版默认使用saslauthd这个守护进程进行密码认证,因此,需要使用下面的命令来查看saslauthd进程是否已经运行:ps aux | grep saslauthd如果没有发现saslauthd进程,则可用下面的命令启动该进程并设置它开机自启动:chkconfig
12、saslauthd on然后,可用下面的命令测试saslauthd进程的认证功能:/usr/sbin/testsaslauthd u lbt p 123456SMTP认证的配置4设置postfix启用smtp认证文件中有关smtp认证的设置部分smtpd_sasl_auth_enable=yessmtpd_delay_reject=yessmtpd_recipient_restrictions=permit_mynetworkspermit_sasl_authenticatedpermit_auth_destinationrejectsmtpd_client_restrictions=perm
13、it_sasl_authenticatedbroken_sasl_auth_clients=yessmtpd_sasl_security_options=noanonymousSMTP认证的配置5测试postfix是否启用了smtp认证采用telnet命令连接到postfix服务器端口25来进行测试,测试过程如下图所示。启动和停止启动和停止postfix服务服务1启动postfix服务2停止停止postfix服务服务3重新启动重新启动postfix服务服务4重新载入重新载入postfix主配置文件主配置文件启动和停止启动和停止postfix服务服务5自动启动postfix服务如果需要让post
14、fix服务随系统启动而自动加载,可以执行“ntsysv”命令启动服务配置程序,找到“postfix”服务,然后在其前面加上“*”星号,确定即可。POP和和IMAP邮件服务的实现邮件服务的实现dovecot服务的实现服务的实现cyrus-imapd服务的实现服务的实现POP和和IMAP邮件服务的实现邮件服务的实现postfix服务只是一个MTA(邮件传输代理),它只提供SMTP服务,也就是只提供邮件的转发及本地的分发功能。要实现邮件的异地接收,还必须安装POP或IMAP服务。通常情况下,都是将STMP服务和POP或IMAP服务安装在同一台主机上,那么这台主机也就称为电子邮件服务器。RedHatE
15、nterpriseLinux5中,有以下两个软件可以同时提供POP和IMAP服务:dovecot和cyrus-imapd。dovecot服务的实现服务的实现1dovecot服务的安装RedHatEnterpriseLinux安装程序默认没有安装dovecot服务,可使用下面的命令检查系统是否已经安装了dovecot服务:rpm -q dovecot如果系统还没有安装dovecot服务,将RedHatEnterpriseLinux5第2张安装光盘放入光驱,加载光驱后在光盘的Server目录下找到dovecot服务的RPM安装包文件和相关程序,然后使用下面的命令安装dovecot服务和相关程序:d
16、ovecot服务的实现服务的实现2dovecot服务的基本配置dovecot服务的配置文件是。要启用最基本的dovecot服务,只需要修改该配置文件中的以下内容:protocols=pop3pop3sprotocolpop3listen=*:101003启动dovecot服务并设置为自启动 chkconfig -level 345 dovecot oncyrus-imapd服务的实现1cyrus-imapd服务的安装RedHatEnterpriseLinux安装程序默认没有安装cyrus-imapd服务,可使用下面的命令检查系统是否已经安装了cyrus-imapd服务:rpm -qa | gr
17、ep cyrus-imapd系统当前还没有安装cyrus-imapd服务,将RedHatEnterpriseLinux5第2、3张安装光盘放入光驱,加载光驱后在光盘的Server目录下可找到以下与cyrus-imapd服务相关的RPM包文件:然后,可使用rpm-ivh命令分别进行安装。cyrus-imapd服务的实现2cyrus-imapd服务的基本配置cyrus-imapd服务的配置文件有以下三个:/etc/sysconfig/cyrus-imapd:是用于启动cyrus-imapd服务的配置文件;:是cyrus-imapd服务的主要配置文件,其中包含该服务中各个组件(imap、pop3、s
18、ieve和nntp等)的设置参数;:是cyrus-imapd服务中的imap服务的配置文件。为了使postfix与cyrus-imapd整合在一起,必须在postfix的主配置文件中加入以下内容:mailbox_transport=lmtp:unix:/var/lib/imap/socket/lmtpcyrus-imapd服务的实现3启动cyrus-imapd服务并设置自动运行默认情况下,利用RPM包文件安装cyrus-imapd服务后,该服务是被停用的,所以用户必须手动启动它;如果需要开机自动运行,也必须手动启用。使用下面的命令可启动cyrus-imapd服务并设置其开机时自动运行:serv
19、ice cyrus-imapd startchkconfig cyrus-imapd oncyrus-imapd服务的实现4用户邮件信箱的管理创建邮件信箱时,为每一个邮件信箱命名的格式为:信箱类型信箱类型.名称名称.文件夹名称文件夹名称.文件夹名称文件夹名称(1)为)为Cyrus-IMAP管理员账户管理员账户cyrus设置密码设置密码 passwd cyrus(2) 使用使用cyradm管理工具为用户创建邮件信箱管理工具为用户创建邮件信箱/usr/bin/cyradm -u cyrus localhost然后使用下面的命令就可为用户然后使用下面的命令就可为用户lbt创建一个邮件信箱:创建一个邮
20、件信箱:cyrus-imapd服务的实现(3)在用户邮件信箱下添加其他文件夹使用下面的命令为用户lbt在其邮件信箱下创建发件箱、垃圾箱和草稿箱等其他文件夹:(4)为用户邮件信箱设置配额为用户lbt的信箱设置5M的配额,可使用下面的命令:setquota user.lbt 5210用下面的命令查看用户邮箱的使用情况:su -l cyrus -c /usr/lib/cyrus-imapd/quotacyrus-imapd服务的实现(5)为用户邮件信箱设置权限权限限缩写写描述描述none无任何权限read允许读取信箱的内容post允许读取和向信箱中张贴信息(如发邮件)append允许读取和向信箱中张
21、贴与插入信息write除具有append权限外,还具有在信箱中删除邮件的权限,但不具有变更信箱的权限all具有所有权限Cyrus-IMAP中设置用户信箱权限的6种缩写形式cyrus-imapd服务的实现常用的cyradm管理命令及其缩写形式命令命令缩写写描述描述listmailboxlm列出与给定字符串相匹配的所有邮件信箱的名称createmailboxcm创建一个新的邮件信箱deletemailboxdm删除一个邮件信箱及其下层的所有文件夹renamemailboxrenm为邮件信箱更名setaclmailboxsam为邮件信箱设置用户的访问权限deleteaclmailboxdam删除用户
22、访问邮件信箱的部分或全部权限listaclmailboxlam列出邮件信箱的访问权限列表setquotasq为邮件信箱设置配额listquotalq列出邮件信箱的配额电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置电子邮件客户端的配置Web方式收发邮件方式收发邮件虽然postfix没有直接提供Web邮件服务功能,但是通常可通过将它与Apache以及第三方的Webmail软件(如squirrelmail、openwebmail等)集成在一起,提供Web邮件服务。1s
23、quirrelmail的安装RedHatEnterpriseLinux安装程序默认没有安装squirrelmail,可使用下面的命令检查系统是否已经安装了squirrelmail:rpm -q squirrelmail如果系统还没有安装squirrelmail,将RedHatEnterpriseLinux5第2、3张安装光盘放入光驱,加载光驱后在光盘的Server目录下分别找到squirrelmail的RPM安装包文件php-mbstring-5.1.6-5.el5.i386.rpm和,然后使用下面的命令安装它:Web方式收发邮件方式收发邮件2squirrelmail的配置squirrelma
24、il的主配置文件为。要配置squirrelmail,可以直接修改该文件的内容,但是使用squirrelmail的配置工具来配置更方便、更直观。使用squirrelmail的配置工具进行配置的具体步骤如下。打开squirrelmail的配置工具,可执行下面的命令: Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件3使用squirrelmail收发邮件采用RPM包安装squirrelmail时,安装程序会在Apache服务器的默认Web站
25、点中配置一个别名webmail,该别名被定义在文件中,即:Alias/webmail/usr/share/squirrelmail因此,可直接在浏览器的地址栏中输入(其中,是postfix+apache+squirrelmail服务器的域名),从而打开squirrelmail的登录页面。Web方式收发邮件方式收发邮件Web方式收发邮件方式收发邮件练习题练习题1架设一台postfix+cyrusimapd+squirrelmail电子邮件服务器,并按照下面的要求进行配置。(1)只为子网提供邮件转发功能。(2)允许用户使用多个电子邮件地址,如用户tom的电子邮件地址可有和。(3)设置邮件群发功能。(4)设置SMTP认证功能。(5)用户可以使用squirrelmail收发邮件。2试用OutlookExpress、Evolution等客户端软件收发电子邮件。