毕业设计---Linux架构邮件服务器.doc_第1页
毕业设计---Linux架构邮件服务器.doc_第2页
毕业设计---Linux架构邮件服务器.doc_第3页
毕业设计---Linux架构邮件服务器.doc_第4页
毕业设计---Linux架构邮件服务器.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计题目:linux 邮件服务器的架设 linux 架构邮件服务器 摘 要 电子邮件系统采用客户端/服务器(c/s)模式,在此主要是邮件服务器的架设,本 邮件服务器的架构是在 linux 操作系统下进行的。其中 sendmail 的邮件服务器软件用 来负责邮件的传输, pop 或 imap 的服务器软件负责客户端读取电子邮件。 根据系统总体上的设计明确了该系统的任务目的、邮件系统原理、工作流程和邮 件服务器的架构实施。该系统主要是要实现邮件用户代理(mua)功能模块和用户传 输代理(mta)功能模块,mua 包括用户登录邮箱、电子邮件的读取、电子邮件的 回复、电子邮件的编辑处理等,mta 包括电子邮件的发送、电子邮件的群发、电子邮 件的认证等。在系统的总体设计中,根据该系统的架构,对客户端和服务器端进行了 详细的设计描述。在系统实现中,还进行了详细的步骤描述与分析。 在自己的努力和老师的指导下,经过多次的尝试后,该系统的设计与实现基本完 成,并达到了预期效果。 毕业设计题目:linux 邮件服务器的架设 linux based framework mail server abstract this e-mail server architecture is in linux operating system, e-mail system adopts the client/server (c/s) mode, in this article is mail server for erection, among them, sendmail mail server software used to responsible for mail delivery, pop or imap server software is responsible for client reading email. according to the whole system design explicitly the system objectives, mail system principle, working process and mail server architecture implementation.this system is to realize the email user agent (mua) function modules and user transmission agent (mta) function modules, mua include user logining mailbox, email to read, e-mail replying, email editor processing, the mta including emails delivered and e-mail indiscriminately, e-mail of authentication, etc. in the design of the whole system, and on the basis of this system framework, to the client and the server is carried on the detailed design description. in system realization, also carried on the detailed steps of description and analysis. key words: mail, server, architecture, linux 毕业设计题目:linux 邮件服务器的架设 目目 录录 1.1 邮件服务器的背景4 2 邮件系统工作原理 .4 2.1 邮件系统的工作流程 .4 2.4 e-mail 常见协议 .5 3 邮件服务器的架构邮件服务器的架构.5 3.1 服务器端的搭建5 3.1.1 dns 服务安装与配置 6 3.1.2 sendmail 服务安装与配置.9 3.1.3 pop3 和 imap 安装与配置16 3.2 客户端的搭建 .18 4 结束语结束语.22 4.1 毕业设计总结22 参参 考考 文文 献献.22 毕业设计题目:linux 邮件服务器的架设 1 绪 论 1.1 邮件服务器的背景 电子邮件服务器是处理邮件交换的软硬件设施的总称,包括电子邮件程序、电子邮件箱等。它 是为用户提供全由 e-mail 服务的电子邮件系统,人们通过访问服务器实现邮件的交换。服务器程 序通常不能由用户启动,而是一直在系统中运行,它一方面负责把本机器上发出的 e-mail 发送出 去,另一方面负责接收其他主机发过来的 e-mail,并把各种电子邮件分发给每个用户。 1.2 主要的 开发环境 本项目主要任务的是架构邮件服务器,服务器的操作系统采用的是 red hat linux 5.0,客户端操作系统可以为 linux 或 windows,数据库是 mysql。 而其中最为重要的就是服务器软件了,服务器能否正常运用,最关键的一步就是 设置邮件交换记录(mx) ,所以要先安装 dns 服务器的相关软件,当然重点还是要安 装作为邮件传输代理的 sendmail 服务器相关软件,如果要想使用电子邮件通信,还需 要安装 pop3/imap 服务器的软件支持,当然这些服务器可以安装在一台主机上。 2 邮件系统工作原理 2.1 邮件系统的工作流程 用户可以自由收发电子邮件,邮件系统会按照用户的指令完成一系列的发送、接 受操作。可以根据需要选择不同的 e-mail 工作方式,决定是在同一台服务器上发送 email,即单一服务器方式,还是通过网络将邮件发送到其它邮件服务器,及多服务器 方式,而多服务器方式需要设置邮件中继。邮件系统工作流程如下图 2.2 所示。 毕业设计题目:linux 邮件服务器的架设 dns 服务器 域邮件服务器 域邮件服务器 dns 服务器 图图 2.2 邮件系统的工作流程图邮件系统的工作流程图 2.4 e-mail 常见协议 当前常用的电子邮件协议有 smtp、pop3,他们都属于 tcp/ip 协议簇,默认状态 下,分别通过 25、110 端口建立连接。 1smtp 协议 简单邮件传输协议,是一种在 internet 中传递电子邮件的通信协议,可以在 internet 上和不同的邮件系统交换信息。 2pop3 协议 邮局通信协议,是邮件系统上负责接收电子邮件的通信协议,它不具有传送邮件 至使用者或其它邮件主机的功能。 3 邮件服务器的架构 3.1 服务器端的搭建 服务器端主要是负责电子邮件的传输,当客户端用户要发送电子邮件时,首先得 登录到自己的邮箱,而用户的邮箱都在服务器端有相应的磁盘存储空间,再由邮件服 务器根据目的邮箱进行选择,是发给本地邮箱的用户还是发给外部的服务器,目的用 户再通过登录外部服务器的邮箱对电子邮件进行操作。 毕业设计题目:linux 邮件服务器的架设 3.1.1 dns 服务安装与配置服务安装与配置 在安装 sendmail 服务器之前,首先要考虑是否已安装和配置好 dns 服务。因为 sendmail 中的邮件交换记录 mx 是在 dns 服务器的区域文件中添加的,所以如果没有 安装和配置好 dns 服务,要先安装和配置 dns 服务。 1安装 dns 服务器软件 (1)用 rpm qa 命令检测系统是否已安装好 dns 服务器相关软件,如图 3.1 所示。 rootasd123 #rpm qa | grep bind 图图 3.1 查看查看 dns 软件的安装软件的安装 (2)从图 3.1 可以看到相关软件包没有安装完全,用 rpm ivh 软件包名 命令安装 相应软件,如图 3.2 所示。 rootasd123 #rpm ivh bind -9.3.3-7e15.i386.rpm 图图 3.2 安装安装 dns 的主程序包的主程序包 (3)再次确认相关软件是否已安装完成,如下图 3.3 所示。 rootasd123 # rpm qa | grep bind 图图 3.3 确认确认 dns 软件的安装软件的安装 2建立 dns 的主配置文件 (1)用 vi 命令进入主配置文件 named.conf 中。 毕业设计题目:linux 邮件服务器的架设 rootasd123 #vi /etc/named.conf (2)手动建立好该文件,包括整体和局部的配置如下所示,完成后保存退出。 options directory “/var/named”; ; zone “.” type hint; file “named.root”; ; zone “” type master; file “asd123.zone”; ; zone “46.168.192.” type master; file “46.168.192.rev”; ; 3建立根区域文件 (1)从国际互联网信息中心下载 /domain/ named.root,并将 named.root 保存到/var/named 目录下。 (2)用 vi 命令进入/var/named 查看 named.root 文件,如图 3.4 所示。 rootasd123 #vi /var/named/named.root 毕业设计题目:linux 邮件服务器的架设 图图 3.4 根区域文件根区域文件 named.root 4配置正向解析区域文件 (1)用 vi 命令进入 asd123.zone 文件。 rootasd123 #vi /var/named/asd123.zone (2)手动建立正向解析区域文件 asd123.zone ,并添加邮件交换记录 mx,如下所示。 insoa . ( 1 3h 15m 1w 1d ) inns. dnsina00 inmx10. mailina00 5配置反向解析区域文件 同样首先进入/var/named 目录下,然后编辑反向解析区域文件 46.168.192.rev。 rootasd123 #vi /var/named/46.168.192.rev in soa . . ( 1 3h 15m 1w 1d ) inns. 200inptr. 200inptr. 6启动并测试 dns 服务 (1)启动 dns 服务命令: rootasd123 #service named start 毕业设计题目:linux 邮件服务器的架设 (2)任选一台主机做客户端,用 host 命令对 dns 服务器进行测试,如下图 3.6 所示。 rootasd123 #host 00 rootasd123 #host rootasd123 #host 图图 3.6 dns 服务器的测试服务器的测试 3.1.2 sendmail 服务安装与配置 添加了邮件交换记录(mx)后,接下来就可以对 sendmail 服务进行安装配置了。 在安装 sendmail 服务之前,首先来了解一下安装 sendmail 服务所需要的软件包。 sendmail-8.13.8-2.el5.i386.rpm(主程序包)。 sendmail-cf-8.13.8-2.el5.i386.rpm(sendmail 的宏文件包)。 m4-1.4.5-3.el5.i386.rpm(宏处理过滤软件)。 cyrus-sasl-lib-2.1.22-4.i386.rpm。 cyrus-sasl -2.1.22-4.i386.rpm(主程序包)。 1安装 sendmail 和 m4 相关软件包 (1)用 rpm qa 命令查询是否已安装 sendmail 的相关软件包。 rootasd123 #rpm qa | grep sendmail (2)从下图 3.7 可看出 sendmail 的相关软件包没有安装完全,用 rpm ivh 软件包名 进行相应软件的安装。 rootasd123 #rpm ivh sendmail-cf-8.13.8-2.e15.i386.rpm (3)用同样的方法可以查看和安装 m4 的相关软件。 rootasd123 #rpm qa | grep m4 rootasd123 #rpm ivh m4-1.4.5-3.e15.1.i386.rpm 2编辑 sendmail 的核心配置文件 毕业设计题目:linux 邮件服务器的架设 由于 sendmail.cf 核心配置文件配置过于复杂,m4 工具可以让开发人员只修改 sendmail.mc 文件,然后在重定向到 sendmail.cf 文件中。 (1)通过 vi 命令进入 sendmail.mc 文件中。 rootasd123 #vi /etc/mail/sendmail.mc (2)把 smtp 的侦听网段范围 改为 , (3)设置本地邮箱域名,在括号内填写本地域名 ,如下图 3.9 所示。 图图 3.9 设置本地邮箱域名设置本地邮箱域名 (4)通过 m4 命令把 sendmail.mc 重定向 sendmail.cf 文件中,如下图 3.10 所示。 rootasd123 #m4 /etc/mail/sendmail.mc /etc/mail/sendmail.cf 图图 3.10 重定向生成重定向生成 sendmail 文件文件 3编辑 local-host-names 文件 local-host-names 文件是用来定义收发邮件的主机别名的。 (1)用 vi 命令编辑修改 local-host-names 文件。 rootasd123 #vi /etc/mail/local-host-names (2)在文件中添加以下两行,分别是主机名和域名,如下图 3.11 所示。 . . 图图 3.11 添加主机名和域名添加主机名和域名 毕业设计题目:linux 邮件服务器的架设 4别名群发设置 (1)用 vi 命令进入/etc 目录下的 aliases 文件。 rootasd123 #vi /etc/aliases (2)在 aliases 文件中添加一行 b1:c1,c2,如下图 3.12 所示。 图图 3.12 添加别名添加别名 (3)保存退出,用 newaliases 命令生成 aliases.db 文件。 rootasd123 #newaliases 5设置邮件中继 access 文件用于控制邮件中继与邮件的进出管理,access 的每一行都包含了对象和 对对象的处理方式。 (1)用 vi 进入 access 文件。 rootasd123 vi /etc/mail/access (2)在文件中添加如下两行,如下图 3.13 所示,允许 域用户中继而拒绝 1 的用户中继。 relay 1reject 毕业设计题目:linux 邮件服务器的架设 图图 3.13 邮件中继的设置邮件中继的设置 (3)用 makemap 命令生成新的 access.db 数据库。 rootasd123 #makemap r hash /etc/mail/access.db /etc/mail/access 6建立用户 (1)建立组群 b1,用户 c1,c2,b1,a1,而且用户 c1,c2,b1 属于组群 b1,如图 3.14 所示。 rootasd123 #groupadd b1 rootasd123 #useradd g b1 s /sbin/nologin c1 rootasd123 #useradd g b1 s /sbin/nologin c2 rootasd123 #useradd g b1 s /sbin/nologin b1 rootasd123 #useradd a1 图图 3.14 新建组群和用户新建组群和用户 (2)给用户设置密码,如下图 3.15 所示。 rootasd123 #passwd a1 rootasd123 #passwd c1 rootasd123 #passwd c2 毕业设计题目:linux 邮件服务器的架设 图图 3.15 设置用户密码设置用户密码 7sendmail 的服务认证功能的配置 对 sendmail 服务进行认证功能的配置,要先安装 sasl 库,再编辑 sendmail.cf 文件。 (1)检测 sasl 软件的安装,如图 3.16 所示。 rootasd123 #rpm qa | grep cyrus-sasl 图图 3.16 检测检测 cyrus 软件的安装软件的安装 从上图可以看到,相关的软件已经安装完毕,如果没有安装的,参考上面 sendmail 服务器软件的安装。 (2)编辑 sendmail.mc 文件找到相应部位进行修改开启认证功能。 首先,用 vi 命令进入/etc/mail 目录下的 sendmail.mc 文件。 rootasd123 #vi /etc/mail/sendmail.mc 然后,把以下三行的前头的 dnl 字段去掉,如下图 3.17 和图 3.18 所示。 dnl daemon_options(port=submission,name=msa,m=ea) dnl trust_auth-mech (external digest-md5 login plain) dnl define (confauth_mechanisms, external gssapi digest-md5 cram-md5 login plain ) 毕业设计题目:linux 邮件服务器的架设 图图 3.17 编辑编辑 sendmail.mc 开启认证功能(一)开启认证功能(一) 图图 3.18 编辑编辑 sendmail.mc 开启认证功能(二)开启认证功能(二) 8启动 sendmail 服务 重新启动 sendmail 服务,如下图 3.19 所示。 rootasd123 #service sendmail restart 图图 3.19 重启重启 sendmail 服务服务 9sendmail 的调试 (1)查看是否已安装了相关的 telnet 软件,并查看 25 是否处于监听状态,如下图 3.20 所示。 rootasd123 #rpm qa | grep telnet rootasd123 #netstat an | grep 25 图图 3.20 查看查看 telnet 的安装和的安装和 25 端口是否处于监听状态端口是否处于监听状态 (2)在 linux 的客户端使用 telnet 命令登录 sendmail 服务器的 25 端口,进行邮件发 毕业设计题目:linux 邮件服务器的架设 送测试,如图 3.21 所示。 rootasd123 #telnet 25 图图 3.21 用用 telnet 登录登录 25 号端口号端口 若出现 sender ok 的字样,则表明发送成功,接着输入接收方的邮件地址 rcpt to:; 如果出现 recipient ok 则表明接收成功,接着输入 data,就可以输入邮件的正文了, 图中输入的是:long time to see you b1b1b1b1!; 如果正文输完,输入“.”结束,并用 quit 命令退出并保存。 (3)查看邮件接收,用 mail 命令查看用户 b1 是否收到邮件,同样查看别名用户 c1,c2 是否收到邮件,如图 3.22 所示。 #mail u b1 #cd /var/spool/mail/ #vi c1 #vi c2 图图 3.22 邮件的接收邮件的接收 毕业设计题目:linux 邮件服务器的架设 虽然是邮件的接受方是 b1,但作为别名的 c1,c2 是实际接受者。所以能看到 c1 和 c2 是同时收到从 aaa 发送过来的如下图 3.23 所示的同一封邮件。 图图 3.23 c1 和和 c2 收到的邮件收到的邮件 3.1.3 pop3 和 imap 安装与配置 一般的安装好 dovecot 软件包后,pop3 和 imap 就能正常工作了,能接受客户端 的接收邮件请求。在安装 dovecot 时,可能会提示对其他软件有依赖性,只需要把相应 软件安装好,再进行安装。 在安装和配置 pop3/imap 服务之前,先来了解一下所需要的相关软件软件。 dovecot-1.0.-1.2.rcl5.i386.rpm (接收邮件软件)。 mysql-5.0.45-7.e15.i386.rpm。 1dovecot 的安装与启动 dovecot 的安装与启动全过程如下图 3.24 所示。 毕业设计题目:linux 邮件服务器的架设 图图 3.24 dovecot 的安装与启动的安装与启动 (1)查看是否已经安装 dovecot 相关软件包,如图 3.24 所示。 rootasd123 #rpm qa | grep dovecot 图中显示相关软件包没有安装完成。 (2)安装 dovecot 的相关软件。 rootasd123 #rpm ivh dovecot-1.0-1.2.rc15.e15.i386.rpm (3)安装 mysql-5.0.45-7.e15.i386.rpm 软件。 rootasd123 #rpm ivh mysql-5.0.45-7.e15.i386.rpm (4)再次安装 dovecot 软件。 rootasd123 #rpm ivh dovecot-1.0-1.2.rc15.e15.i386.rpm (5)启动 dovecot 服务,如图 3.24 所示。 rootasd123 #service dovecot start 3查看端口 查看 110 和 143 端口是否处于监听状态, 毕业设计题目:linux 邮件服务器的架设 3.2 客户端的搭建 虽然邮件服务器用的是 linux 的操作系统,但其实邮件系统对客户端的操作系统 是没有限定的,不论是 linux 或 windows 操作系统,用户都可以通过邮件系统的客户 端软件来实现电子邮件的发送。 如果使用 windows 客户端,则可以使用 foxmail、outlook 等邮件客户端软件。由 于 windows 操作系统一般都自带了 outlook express,我们直接可以利用它配置,通过 添加邮箱账户,登录服务器从而最终接受和发送邮件。 1添加邮箱账户 (1) 打开 outlook express,点击菜单栏中的【工具】在下拉菜单中选择【账户】 , 如下图 3.30 所示。 图图 3.30 选择邮件账户选择邮件账户 (2)点击右边的【添加】 ,选择【邮件】 ,如图 3.31 所示。 毕业设计题目:linux 邮件服务器的架设 图图 3.31 添加邮件添加邮件 (3) 添加用户名 a1,单击【下一步】 ,如图 3.32 所示。 图图 3.32 配置邮箱显示名配置邮箱显示名 (4)设置电子邮箱地址,单击【下一步】 , 如图 3.32 所示。 毕业设计题目:linux 邮件服务器的架设 图图 3.32 设置电子邮箱地址设置电子邮箱地址 (5) 添加邮件服务器地址,单击【下一步】 ,如图 3.33 所示。 图图 3.33 添加邮件服务器地址添加邮件服务器地址 (6) 输入账号密码,单击【下一步】 ,然后单击【完成】 ,同理可以添加 a1,b1,c1,c2 等用户,如图 3.34 所示。 毕业设计题目:linux 邮件服务器的架设 图图 3.34 输入用户密码输入用户密码 2发送邮件 在 outlook express 主界面单击【创建邮件】 ,填写相应信息,就可以发送邮件,如 下图 3.35 所示,从图可以看出,发件人是 a1,收件人是 b1,主题是 c

温馨提示

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

评论

0/150

提交评论