当前位置:Linux教程 - Linux - 电子邮件系统的安全问题

电子邮件系统的安全问题

由于企业级电子邮件系统一般建立在Intranet内部,与Internet之间有防火墙保护,所以受到外界恶意攻击的可能性较小。另外,由于采用Qmail的虚拟域和虚拟用户及MailDir邮件存储方式,使邮件系统用户与UNIX系统用户分离,这些都大大地提高了系统的安全性。

  这里我们重点考虑用户邮件和用户认证口令的传输安全。由于TCP/IP协议是一种包交换网络,各个数据包在网络上都是透明传输的,并且可能经过不同的网络,并由那些网络上的路由器转发,才能到达目的计算机。而TCP/IP协议本身没有考虑安全传输,很多应用程序,如:Telnet、FTP等,甚至使用明文来传输非常敏感的口令数据。一般的邮件系统也存在这个问题,如用户使用POP3协议的客户端软件(如常用的FoxMail)下载邮件时,口令就是用明文来传输的,用户通过浏览器和IMAP协议下载邮件,也同样存在这个问题。

  为加强数据的传输安全,特别是敏感的口令数据的传输安全,可采用公开密钥算法对传输数据进行加密。对HTTP和IMAP协议的传输,可使用SSL(安全Soket层),不但能通过公开密钥算法保证传输的安全,还可以通过获得认证证书CA,保证客户连接的服务器没有假冒。

  可以用来实现SSL的自由软件是OpenSSL,可在http://www.openssl.org/下载。

  Apache可以通过加载mod_ssl模块来支持SSL;Courier-IMAP也支持SSL;除OpenSSL外,还需要下载 stunnel(地址是http://mike.daewoo.com.pl/computer/stunnel/)。

  Apache上安装新模块需要重新进行编译安装(想省事的话,可在网上找一找有无现成的RPM包)。具体的配置方法可查看安装说明。

  目前,Qmail的POP3协议还不支持SSL,仍然存在被恶意窃听甚至盗用密码的危险(这种危险普遍存在于目前被广泛使用的各种免费E-mail服务中)!所以在使用电子邮件传输各种敏感的需要保密的数据时一定要慎重,企业的重要数据、保密的文件等尽量不要用Internet上的免费E-mail邮箱传送!

笔者文中谈到的电子邮件系统主要是针对大中型企业而设计的,作为企业Intranet的一个重要组成部分,对安全性、稳定性和可管理性都有更高的要求。其用户数量可从数千至数万,当用户数量超过10万时,单台服务器的性能就不能满足要求了,必须要由多台服务器同时服务,存储空间也必须由服务器集群来提供,通过光纤通道或者网络文件系统NFS来共享存储空间,对一些资源紧张的服务还需使用多服务器进行负载均衡。这些内容超出了本文的范围,有兴趣的朋友可参考其他文章,如《建立大容量基于Web的E-mail系统》
  

  本文所推荐的软件都是相当成熟的开放源代码的软件,这些软件的源代码可以被公众使用,并且这些软件的使用、修改和分发不受许可证的限制。要特别指明的是,开放源代码软件通常是有版权的,它们大都使用GPL许可进行保护,因此基于这些软件进行的任何改动,还应该遵循其许可要求,将改动的源代码对外公开。由于笔者接触自由软件时间不长,本文的错误、疏漏在所难免,在此希望与自由软件的爱好者与使用者进行交流。