注意:本文件仅适用于 Red Hat 6.2 以下版本. | ||||
认识邮件运送的过程 基本上,当你使用 E-Mail 讯息时,信件是如何运送的呢?通常是如下图这样运送的: 你的信件将经过 smtp 协议传送至 邮件服务器 ,然后邮件服务器将视有无设定转信主机(Mail eXchanger, MX),若有转信主机,则信件先经过转信主机后再传到目的邮件服务器,若无转信主机,则信件将直接由你的邮件服务器送至目的邮件服务器,最后,由你的收件者以 pop-3 协议,将信件由对方的邮件服务器中捉下来!举个例子来说,如果你要从 kimo 寄信给鸟哥的话(tsai.adsldns.org),那信件是如何传送的呢? 1. 你在 Windows 系统中写完了信,以 smtp 协议将你的信传送至 kimo.com.tw 这个邮件服务器; 2. kimo.com.tw 这个邮件服务器将你的信转送至鸟哥的 tsai.adsldns.org 这个邮件服务器; 3. 鸟哥在 Windows 系统中,以 pop-3 协议将这封信由 tsai.adsldns.org 捉下来计算机中! 大致的流程就是这样而已。底下来说说一些邮件的术语: · MUA(Mail User Agent ):照字面的意义来说,就是所谓的『邮件代理人』,MUA 从字面上看似乎好容易给它吓死﹐但说穿了您可能会笑耶﹕我们平时用的 Outlook Express、Netscape Mail,或是 Linux 上面的 pine ﹐它们都是 MUA 。简单说﹐MUA 是用来给使用者流览邮件和书写邮件的程序; · MTA(Mail Transfer Agent ):照字面的意义来说,就是『邮件传送代理人』,我们管它叫邮件服务器好了﹐它负责 MUA 的请求﹐也负责将邮件从一个 MTA 传到另一个 MTA 。通常一个 MTA 都可以支持好几种邮件协议﹐例如﹕ UUCP、SMTP、POP 等。 UUCP (Unix to Unix Communication Protocol) 现在已经比较少用了﹐取而代之的是 SMTP (Simple Mail Transfer Protocol) 和 POP (Post Office Protocol) 这两个协议。 SMTP 负责的将邮件从 MUA 上传给 MTA﹐也是 MTA 和 MTA 之间的邮件传递协议﹔而在没有 POP 之前﹐email 的使用者一般都要用 telnet 或其它远程控制程序连上 MTA 那里﹐然后在那里阅读邮件﹐而有了 POP 之后﹐ MTA 可以将使用者的邮件存在一个档案里﹐然后使用者通过 MUA 连到 MTA ﹐再将信件下载回本地机器阅读。另外﹐ MUA 和 MTA 都无需是同一个厂家的软件﹐只要双方都支持 POP 协议就可以了﹐其灵活性是不言而喻的了。有些程序﹐如 sendmail ﹐表面来说﹐就同时具备 MUA 和 MTA 功能了。 · 我们用 MUA 撰写邮件之后﹐是通过 SMTP 协议上传给 MTA 的﹔而阅读邮件则是通过 POP 从 MTA 那里下载回来。 Mail 与 DNS 的相关性: 与 mail 最具相关的大概就是 DNS 的设定了,例如你要寄信给我的话,就要寄到 vbird@tsai.adsldns.org 这个信箱,因此,如果你要架设邮件服务器的话,请务必将你的 DNS 设定正确!否则一定信件是寄不到你的信箱的喔!而由于我们是使用 ADSL拨接系统 来上网的,所以只好申请动态 IP 啰! ----------------------------------------------------------------------------------------------- 简易的设定 sendmail 开始设定前的准备工作: 在开始设定你的邮件服务器之前,请先让你的主机具有 DNS 可以追查到的功能啰!申请 DNS 主要有两种方法: · 若你在学术系统中,你可以直接向您的上一层 DNS Server 的管理员申请,由于你具有固定 IP ,所以架设上会很方便; · 再来,如果你与我相同是使用 ADSL拨接系统 的话,由于没有办法具有固定 IP,所以只好申请动态 IP 的 DNS 系统了,详细的申请步骤请至『动态 DNS 申请』中察看。 请千万注意,由于 DNS 设定错误将使你的信件无法收取(不过发信可能没有问题!)因此这一部分请仔细的设定喔! 设定 sendmail : 如果你是使用这个网页介绍的 Redhat 6.1 来安装你的 Linux 的话,那在你安装好了 Linux 时,你的邮件服务器已经架设好了!不相信吗?假设你的 ID 是 test,则你可以进入 Linux 之后,输入这样的字眼: 然后你只要输入 mail 即可收信喔! 简易的设定 sendmail 虽然你的 Linux 已经具有收发信件的能力,但是你也可以看到,上面的例子中,所显示的邮件主机是 localhost.localdomain ,这是不对的!寄给别人的信也是使用这一个名称的话,当然人家一定寄不到你这里来啦!所以要设定一下你的 sendmail 啦! · netconf 设定邮件服务器: 基本上,设定邮件服务器只要两个步骤: 1. 一个是使用 netconf 简易的设定好主机的名称与其它与主机相关的事项; 2. 然后再修改 /etc/inetd.conf 这个档案,开启 pop-3、smtp 及 imap 的服务即可! 这个 IMAP 是目前新的邮件协议﹐通过 IMAP﹐ 使用者在 MUA 那端就无需分别指定 SMTP 和 POP 作为上传和下载协议了﹐而只一个 IMAP 协议就可以﹐而且 IMAP 还可以让不同的使用者共享一个 MUA﹐非常方便哦。 netconf:好了,现在来设定一下主机吧: 1. 以 root 的身份执行 『netconf』,会出现一个窗口; 2. 向下移动光标到 『Mail delivery system (sendmail)』 这一项,并按下 enter 键; 3. 在出现的框框中选择 『basic information』 这一项; 4. 在 『Present your system as』 及 『Mail server』 这两个地方,都输入你在 动态 DNS 系统中申请到的名称(以我为例,在这两个地方都输入 tsai.adsldns.org 即可);另外,在这勾选两行中间的 『[X] Accept email for adsldns.org』 这一个咚咚,这样就设定好了! 5. 以 Tab 键将光标移动到 Accept 这一项,按下 enter,回到刚刚的画面; 6. 按一次 Quit 出来主选单,选择『Basic host information』这一项,按 Enter 进入; 7. 在 『Host name』的地方输入你的主机名称,另外,在 『Primary name + domain』 的地方也要输入一次刚刚输入的名称喔!(就是 hostname.adsldns.org这一个!); 8. 按下 Accept 退出来之后,回到刚刚的画面; 9. 由于 Redhat 6.1 中的 sendmail 『不许直接修改 /etc/sendmail.cf 』这个档案,所以请到『Generate /etc/sendmail.cf』这个选项按下 enter!重新再产生一个,以符合你刚刚设定的参数; 10. 然后选择 Quit 退出,这时系统会自动侦测一些设定,等到出现: Activate the changes Preview what has to be done Don't quit 这三个选项时,请选择 Activate the changes 即可! 注意喔,这个时候系统会先将你的网络停止再重新开启,所以,如果你是在外部计算机作业的话,请先确认你的拨接系统可以自动拨接上网络喔! 11. 若有一些错误讯息的话,也没有关系,你可以看看,也可以直接按 enter 离开! 12. 设定完成! 很简单吧,这样就设定好你的邮件服务器了!不过,这时候还没有办法在 Windows 上面以 pop-3 及 smtp 协议收发信件,所以你接着要修改 /etc/inetd.conf 这个档案! /etc/inetd.conf 档案设定: 1. 以 vi 编辑这个档案: 2. 退出之后再重新开机! 这样子,邮件服务器在你重新开机激活后,就可以正常运作了! 限制: o 虽然设定上是很简单的,不过,这里有件事要说,就是,在 sendmail 当中,默认值是『无法让大写的ID收发信件的』,例如 VBird@hostname.adsldns.org 就没有办法使用 sendmail 来收发信件!如果要让你的 sendmail 可以支持大写的 ID ,则必须直接修改 /etc/sendmail.cf 这个档案,而,Redhat 是无法直接让你修改这个档案....所以,只好请您在设定 ID 的时候,以小写来设定吧! o 在收发信件的时间上,如果一封信无法寄出,则会等待四小时、一天,这两个时段,分别发一封警告信给你,到第五天还无法将此信投递的时候,系统就会将原信退还给你啦! ----------------------------------------------------------------------------------------------- Windows 设定 好了,现在开始要来设定用户的收信方法了,在此我仍然以 Outlook 来作介绍, Netscape 的方法是差不多的!你只要知道你的邮件服务器的名称就好了(这里假设你的邮件名称是 hostname.adsldns.org): 1. 开启 OutLook,点选『工具』里面的『帐号』; 2. 点选『新增』选择『邮件』来设定; 3. 输入显示名称:这个名称是别人在收信的时候,可以看到的寄件人称谓; 4. 接着下来比较重要了,请使用你的 ID@hostname.adsldns.org 登入你的邮件服务器; 5. 然后,当然邮件服务器收发都是同一个,请使用你的 DNS 申请的名称; 6. 输入帐号与密码,也可以选择『记忆密码』,然后按下一步,就完成了。 基本上,Windows 这边只要设定如此即可!然后你就可以用你的 Linux 来当邮件服务器啰!! ----------------------------------------------------------------------------------------------- 设定邮件别名转寄 你有没有发现,通常一个人在一个机器上只有一个 ID ,但是,如果你想要让你的很多别名都可以直接寄到你的帐号中的话,要如何是好?又,如果你想要让你的小组成员都可以收到同一个帐号的信,要如何设定呢? 1. 一个人拥有多个不同的虚拟信箱: 假如你的 ID 喜欢以 nice name 来取,例如 pig ,不过,当你进入工作中,总不好意思还用这一个 ID 吧,假如你的姓名是 王小明 (全中华民国最倒霉的名字!?)那你应该会想要使用 smwang@hostname.adsldns.org 来当你的信箱,那要不要在开一个帐号给你呢?其实不需要的,只要设定一个别名给 pig 这个帐号就可以了!也就是说,当外面的信件收件人写 smwang@hostname.adsldns.org 的时候, Linux 系统就会主动的将信传到 pig@hostname.adsldns.org 这个信箱中,也就是说,根本没有 smwang@hostname.adsldns.org 这个信箱,他只要用来将信件转到你 pig 帐号中的一个手续而已! 那要如何设定呢?很简单,直接以 userconf 来解决就可以了! o 执行 /bin/userconf; o 选择 User accounts ; o 选择 pig 这个帐号; o 在出现的框框中,将光标往下移动,直到出现如下图所示: o 在上面 Email alias (帐号别名)的地方输入你想要的别名(可以多重设定喔!) 好了!设定完成之后,只要选择 Accept ,不用进行任何其它的步骤, smwang 这个虚拟的信箱就启用了!方便吧!另外,你一个帐号可以多重设定很多的虚拟信箱喔! 2. 多人共享一个帐号: 相反的,假如你们一票同学都希望拥有同一个信箱,如此一来,当 Linux 系统收到一封信时,大家都可以收到了!这时,如果只有一个实体信箱的时候,因为信被 Outlook 收走时,服务器信箱里的信也就被删掉了!后面的人不就收不到了?要如何作呢?其实也是很简单,如果你有四个人 bird1, bird2, bird3, bird4 希望收到同一个信箱的信,例如 birdhome@hostname.adsldns.org ,那也很简单,只要在四个人的 Email alias 都设定一个别名为 birdhome ,那四个人就都可以收到 birdhome 这个信箱的信了! Linux 的运作过程是这样的,Linux 当收到 birdhome 这个信箱的信时,会去查每一个实体帐号的 email alias 设定,有设定这个 alias (别名)的人就寄一份资料给他,因此, Linux 总共会寄出四份资料,分别传送到 bird1, bird2, bird3, bird4 这四个人的信箱中,所以这四个人只要开启自己的信箱就可以收到同一封信了! 其实,上面两个方法仅要改变一个档案即可做到,就是修改 /etc/aliases 这个档案,这个档案有点像这样: 有没有看到最后一行,smwang: pig ,在虚拟帐号后面接实体帐号,而每个帐号名称中间以『,』符号分隔!因此,当你需要设定邮件别名的时候,除了 userconf 之外,也可以使用这个档案来修改! 但是请注意,修改完成之后,还必须执行 newaliases 来加载这个档案的设定进入 sendmail 中才行!也就是说你必须: · 修改 aliases 档案; · 执行 newaliases 来激活。 ----------------------------------------------------------------------------------------------- 使用 Linux 系统寄信 用 Linux 来寄信,最常使用的就是 mail 这个指令了,基本的使用情况是这样的: · 寄出一般文字信件: 可以输入 mail id@person.domain.name 来寄出信件。 · 寄出档案: 你也可以直接以 vi 先编辑好一个档案之后,再传送出去!例如你写好了一个档案,名称为 mail_raw 则寄出去可以写成这样: · 看信件: 直接以 mail 进入后,输入每一封信件的号码来看信的内容! 当然还有很多的功能可以使用的,就要让你自己来摸索啰! |
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |