Linux 版 (精华区)
发信人: howdoit (教练让我上场!!!), 信区: Linux
标 题: ILinux系统之IMAP:实用导引
发信站: 哈工大紫丁香 (Tue May 18 08:44:13 1999), 转信
《Linux公报》……让Linux更富魅力!
Linux系统之IMAP: 实用导引
英文原作 David Jao 中文译文 "o k"
提要:互联网邮件访问协议, 版本4.1(IMAP4rev1), 允许
用户通过互联网络,访问和维护远程机器中邮件匣的梯层
状
构造。IMAP的这种"client-server"设计思想,使它也能从
可移植性
和网络透明性中受益,正如图形界面程序从X11视窗系统中
得到
的那些同样。在本文中,将要讲述如何设定在LINUX系统上
的
IMAP的客户端和服务器端程序,以用于管理邮件。并将进
一步
阐述IMAP的优劣之处,讨论何时使用IMAP才有实际意义。
1. IMAP真有必要吗?
现在你是怎么在看邮件呢?一般而言,大都会用一个诸如
pine或Netscape的软件。每一个email帐号,都只有一个收
件匣。几个月积累下来的邮件就那样放在一个收件匣中无疑
是不明智的,出于管理和分类的方便它们会被分到几个匣中。
在未使用IMAP时,这些邮件匣是被存放在本地硬盘(或者远程
主机上你自己的目录下)。这样会带来如下一些问题:
使用字符界面邮件软件时,为了看邮件,你必须login到相应
邮件匣的帐号中。你持有帐号时这本来不是什么问题,但有了多
个
帐号时用这个方式就可能会是一种痛苦体验,比如想从一个帐号
中的信件匣中移动一堆邮件到另外一个帐号中的某个信件匣中
时。
使用图形界面的邮件软件时,通过低带宽的网络连接去管理邮件
常常很困难甚至根本不可能。这个假设的可能性最大,因为许多
人
喜欢有图形界面的邮件软件,网络连接速度也异常可怜。
当你根据特定邮件程序定制了邮件匣后,再想切换用其它软件将
非常困难。很多用户越来越意识到,如果最后依然可以根据当前
的情形来取舍更改邮件程序的设定将是多么的有意义。
IMAP一劳永逸地解决了这些问题,其高明之处就是所有的邮件匣
是存放在一台中央机器中,然后通过被广泛支持的协议来进行访
问。使用了IMAP,你可以:
通过任何机器,在任何地方,来与你的邮件匣打交道,只要IMAP
的
用户程序是安装着的。
通过一个用户端程序,管理多个帐号的多个邮件匣。
希望时就可以在各种邮件程序(Netscape, pine, Eudora)间自
由
切换,并能自动利用所有邮件匣。
X11视窗协议这种构造带来了帮助。MS Windows,图形程序只能被
固定地显示在运行机器自己的监视器上。形成对比的是,在X系统
下,程序可以在一台机器运行,然后通过延伸的协议将画面显示在
另外一台机器上。在今天这样一个高度互联的网络世界中,这种
网络透明是一个非常宝贵的优点。IMAP提供了同样的柔韧性:你的
所有邮件匣(换言之,你关心的那些所有数据),被存放在中央服
务器中,因而它们不再被一台机器的一个程序所隅, 而可以透过网
络,为所有相兼容的程序所利用。
2. IMAP 服务器的安装
现在急着想用IMAP了,是不是呀?
第一步是安装一个IMAP服务器。如果你的ISP已经有一个现成的在运
行,
那么就只是怎么去利用它的问题了。此时的优点就是不用顾虑你自己
的
机器在哪儿,你可以随时随地去访问你的有件。缺点当然就是此前你
必须
拨号以连通你的ISP。很多ISP不提供IMAP服务,所以可能你需要自己
来
安装一个的啦。
长话短说,这儿就是一个不完美却简单易行的指导,用来安装 华盛顿
大学
的IMAP服务器。
首先是得到和展开最新版的软件包(此文写作时为版本4.4):
[root@localhost ~]# lynx ftp://ftp.cac.washington.edu/imap/imap-4.4.tar.Z
[root@localhost ~]# tar xzvf imap-4.4.tar.Z
[root@localhost ~]# cd imap-4.4
用以下命令之一来进行编译:
"make lnx", 如果是通常的系统;
"make sl5", 用libc5和shadow passwords的系统;
"make slx". 基于glibc,并采用shadow passwords的系统。
[root@localhost imap-4.4]# make lnx
安装编译好的程序:
[root@localhost imap-4.4]# install -s -m 755 -o root -g mail imapd/imapd /u
sr/sbin
添加以下内容到 /etc/inetd.conf (如果已经有了,只将注释符“#”
去掉即可):
imap stream tcp nowait root /usr/sbin/tcpd /usr/sbin/imapd
然后需要修改hosts.allow和hosts.deny以限制访问IMAP的domain。
这一步是很有
重要的,因为华盛顿大学的IMAP服务器程序曾经有一些严重的安全漏
洞 。
在/etc/hosts.deny中添加如下一行:
imapd: ALL
在/etc/hosts.allow 中添加允许被来访问的机器和domain:
imapd: your.local.host.com
imapd: .yourisp.com
imapd: .yourschool.edu
最后将inetd重新启动一下,你的IMAP服务器就要工作了。
[root@localhost ~]# killall -HUP inetd
2.1. 特定版本的安装指南
如果你用的Linux刚好有软件包管理器,希望时也可以直接安装编译好
的
服务器程序。
对于RedHat 5.2:
lynx ftp://ftp.redhat.com/pub/redhat/redhat-5.2/i386/RedHat/RPMS/imap-4.4-2
.i386.rpmrpm -Uvh imap-4.4-2.i386.rpm
对于Debian 2.0:
lynx ftp://ftp.debian.org/debian/dists/stable/main/binary-i386/mail/imap_4.
2-1.debdpkg -i imap_4.2-1.deb
软件包装好后,前面提到的 /etc/inetd.conf, /etc/hosts.deny, 和
/etc/hosts.allow
的修改等步骤也要同样进行。
3. IMAP 用户端程序的设定
IMAP服务器程序设定完成后,接下来就是用户端程序的设定。一般步
骤是:
在你的服务器系统中找一个合适的目录以容纳邮件。需要读和写
的权限。
如果这个目录不存在现在要产生出来。我个人是在用
$HOME/Mail.
告诉IMAP用户端程序服务器名,登录用户名,及上面提到的邮件
匣所在目录。
现在就可以产生或删除服务器上的邮件匣,移动匣中的邮件,就
象它们在
本地硬盘上,你可以用和以前操作本地硬盘上邮件匣一样的技
术,感觉上没
有差别。
下面是三个我真正在用的邮件程序的例子:
3.1. Pine 4.05
Pine可以在 http://www.washington.edu/pine/. 得到. 它在UNIX世
界中非常风行。
4.0x 加入了联机IMAP邮件匣访问功能。要设定Pine时,揿S进入
Setup,L进入
邮件匣列表(collection list), A用来增加一个邮件匣
(collection)。
要输入IMAP服务器名,登录用户名,及上面提到的邮件匣所在目录。
很简单是不是?Pine支持多个IMAP邮件匣。你可以增加任意多个,并
能够在同
一个地方进行管理。
Screenshot of pine configuration
3.2. Netscape Communicator 4.07
Netscape Communicator 是集成式网页浏览器和邮件新闻组阅览器,
被相当广泛
地在应用。版本4.07适合用于少量邮件的处理, 但如果一个邮件匣中
超过1000个
邮件时,它就会崩溃(要不要试试看)。Netscape Communicator 可
以从
http://home.netscape.com/ 得到。
设定时,选择"Edit" ->"Preferences " ->"Mail & News",点击
"Mail Server"
选项,输入用户名和IMAP服务器名。显然,要将服务器的类型设为
"IMAP4" 。
点击"More Options" ,填入邮件匣所在的目录名。最后要确认"Move
Deleted
Messages to Trash" 不能被选中使用。因为IMAP自己能够标志那些被
删除的信息。
Netscape 4.0x 不支持多个IMAP邮件匣。不能自动复制送信件到远程
服务器上相应
的邮件匣中。Netscape 4.5支持这些功能,但我发现其IMAP功能尚不
能稳定工作。
Screenshot of Netscape configuration
3.3. TkRat 1.2
TkRat 是现在我喜欢的图形界面的邮件处理软件。它也是我所知道的
唯一一个 源代码公开 IMAP 用户端软件(它的许可是那种BSD样式
的)。 它可以从 http://www.dtek.chalmers.se/~maf/ratatosk/得
到。
在TkRat中,从Admin菜单中选择"New/Edit Folder",然后从Import菜
单中选择
"IMAP Folders", 输入IMAP服务器名,登录用户名,和一个能匹配到
邮件匣的通配符。
注意TkRat希望是通配符而不是目录名。
Screenshot of TkRat configuration
4. 重要使用说明
下面是关于IMAP的一些重要的,但不怎么显而易见的事情。
4.1. 目录结构
目前,UW IMAP 服务器程序的一个制限是同一个邮件匣中,子目录和
信件不能混杂。
就是邮件匣中要么是子目录,要么是邮件,但不能二者都有。如果一
个邮件匣中全是
目录,那么它的名字应该以"/"收尾。
举例如下:
Courses/ 中只包含子目录。
Courses/Calculus 是Courses/的子目录,它只包含邮件。
Courses/Languages/是Courses/的子目录,它包含其它子目录。
4.2. The Inbox
邮件匣名INBOX, Inbox, 或者其它只是大小写不同的名字是保留字,
你不能用来
做自己邮件匣的名字。
5. 安全配虑
运行IMAP增加了一个守护进程,因而系统增加了潜在的安全漏洞。如
果没有必要
的话,你可能最好不用去安装它。
一个问题点是用于登录和验证用的密码的一般文本化。象很多其它服
务那样,IMAP
的往来通讯是在网上以普通文本方式传递的。很多人并不以为传递普
通文本方式的
密码是一个大问题。他们会不犹豫地使用telnet, ftp, POP3,等等。
但如果你不喜
欢这样不加防护地传递密码,你可以有这样一些选择:
用 Netscape Messaging Server, 它支持SSL下的IMAP。遗憾的
是还没有Linux版本,
并且需要$1295美元。
编译带Kerberos验证支持的 Cyrus IMAP 服务器 。
通过 Secure Shell 来进行安全管道下的IMAP的来往通讯.
在你机器上安装 imp (a web-to-IMAP gateway) 通过SSL web服
务器来访问它。
不幸的是,所有这些技术都超出了本文的范围。一个事实是,现在互
联网上传递的
数据,大多都是未加密的平常文本的方式;如果真的那么容易隐藏它
们,人们老早
就会那么做了。
6. 结语
越来越少的人能够用一个单一的邮件程序,总是处理好每天的大宗的
邮件。更多的
人处理这种邮件移动问题,需要Telnet,远程X的显示,和分布文件系
统。只有IMAP
真正提供了一种综合方法,在应用程序级别上致力解决了这个问题。
通过不减少机能
的网络透明性,IMAP大大改善了我们读取邮件的方式。我断定不久后
用户的需要将
使对IMAP的支持成为邮件程序的必要功能之一。
简而言之,如果你对当前看邮件的方式很满意,就没有必要去惊动
IMAP。如果你很
愿意增加管理邮件的灵活性,最终你会决定采纳IMAP的。
7. 其它参考资料
IMAP4rev1 仕样(RFC)
一篇比较IMAP和POP的论文
支持IMAP的产品清单
版权所有 (C) 1998 NJLUG
出版于第35期《Linux公报》1998年12月 中文版第二期
--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: bin@mtlab.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.658毫秒