首页 -> 安全研究

安全研究

绿盟月刊
绿盟安全月刊->第2期->安全文摘
期刊号: 类型: 关键词:
数据加密服务

作者:backend (backend@nsfocus.com)
出处:绿色兵团
主页:http://www.nsfocus.com
日期:1999-10-15

加密网络服务
事实上,所有的网络通信数据都可能被攻击者截取并解密。如果他们入侵了网络中的一台机器,并安装口令窃听器(sniffer),那么整个网络可能会在几小时内被完全控制。许多ISP或网络供应商常常将客户机器通过以太网HUB连接,这将导致该网络上所有机器都可以截取到网络中的所有通信,如收发email、telnet会话等,这就是需要加密网络通信数据的主要原因。

在加密网络数据方面,不同的网络结构层次上有各种各样的实现机制。有些仅加密内容数据(如PGP加密email);有些加密会话(SSL);还有些加密数据包中的有效数据(IPSec和某些VPN)。最好的解决方案应该是IPSec,因为他不需对应用程序作任何改动,而且能够 为计算机连接提供很高的安全性。但目前IPSec尚未被广泛采用,其中的一个原因是微软在这方面的支持有很大障碍。另一个原因是美国安全法规限制它只能在北美地区应用。因此目前应用得最多的是由Netscape公司提出的SSL (Secure Sockets Layer 安全套接字层)。SSL在会话层上加密数据,现在大多数WWW浏览器、email/news阅读器和一些ftp、telnet客户软件都支持SSL。LINUX服务器的大多数服务也都支持SSL加密。然而SSL要求客户端必须也支持SSL,因此它更多地被应用于组织/公司内部网络。

SSL主要网站:http://www.openssl.org/。

SSL

HTTP - SSL
最常用的WWW服务器——Apache提供了很好的SSL支持。北美地区以外的用户可到 http://www.Apache-ssl.org/ 免费下载。许多商业WWW服务器也支持SSL,如 Ret Hat Secure Server、Stronghold 等。

Telnet - SSL
SSLtelnet和MZtelnet具有比普通Telnet更高的安全性,但是其易用性不如SSH,而且SSH是完全免费的。服务器和客户端软件包可在以下网址找到:
ftp://ftp.uni-mainz.de/pub/internet/security/ssl/ (tar) ftp://ftp.replay.com/pub/replay/linux/redhat/ (RPM)

FTP - SSL
对于很常见FTPD服务器,如WU-FTPD,可安装支持SSL的补丁程序。它特别适合需要大量使用FTP访问的用户。

下载网址: ftp://ftp.uni-mainz.de/pub/internet/security/ssl/ (tar) ftp://ftp.replay.com/pub/replay/linux/redhat/ (RPM)

虚拟专用网(VPN)解决方案

IPSec
IPSec工具在“IP安全工具——IPSec”一文中有详细介绍。由于它支持目前大多数标准,特别是支持IPv6,很可能成为未来VNP技术的标准。

PPTP (Point to Point Tunneling Protocol)
PPTP是由M$拥有版权的VPN解决方案。虽然它已被发现存在几个安全漏洞,但如果你需要在LINUX中提供PPTP,其具体实现过程请访问以下网址: http://www.moretonbay.com/vpn/pptp.html
CIPE (Crypto IP Encapsulation)
免费的CIPE采取了IP层加密机制。通常用于路由器间通信,在不安全网络(如Internet)间提供“安全的网桥”。

官方网址: http://sites.inka.de/~W1011/devel/cipe.htl

ECLiPt Secure Tunnel (Beta)
LINUX VPN的解决方案。虽然仍在测试当中,不应出现在关键应用中,但它已开始显示出很好的效果。

官方网址:
http://eclipt.uni-klu.ac.at/projects/est/
Stunnel Stunnel是基于SSL的网络服务安全解决方案。服务器端为UNIX平台,客户端为UNIX或WINDOWS平台。

网址: http://mike.daewoo.com.pl/computer/stunnel/

Encrypting Data
Encrypting Data 包含了几个数据加密程序。有些是可执行文件,有些是驱动程序。它适用于加密数据及传输,但需要通信两端都安装有正确(兼容版本)的软件,和需要交换公共密钥。这对于某些人来说是很困难的,毕竟,要相信某个人的公共密钥,最安全的方法是直接从他(或你信任的人)手中得到它。基于驱动程序的加密系统如CFS的实现机制就比较简单了,只需要用户提供一个口令或密钥就得访问所需的文件。

PGP (Pretty Good Privacy)
是公共密钥加密的先驱。目前在UNIX、WINDOWS和Macintosh中使用得最为广泛。但由于它已商业化了,因而不可避免地对用户造成某些影响。我个人认为,与加密和安全有关的所有软件都必须是公开源代码的,否则如何才能让我确信它是安全的呢?PGP被NAI公司收购后,我已无法百份百地相信它在文件安全存储与传输方面是否仍然安全。

PGP的下载网址:
ftp://ftp.replay.com/
http://www.pgp.com/
http://www.pgpi.org/

GnuPG (GNU Privacy Guard)
它是PGP的GNU版本(公开源代码)。下载网址:
http://www.gnupg.org/

HardEncrypt
包括基于时间的密钥生成器和一套应用工具程序。基于时间的加密理论上是不可破解的。加密算法根据一组随机数加密私有数据,解密时需要时间密钥,你必须首先将时间密钥传送给接收方。因此这种加密结构在一次数据传输过程中只传送了一次敏感数据。

下载网址:
http://www.csuglab.cornell.edu/Info/People/jcr13/HardenedCriminal/main.html

硬盘加密软件
CFS (Cryptographic File System)
CFS可使数据以加密的格式保存在硬盘中,而且还可以使用文件加密程序(如PGP)加密其中的文件和目录。

网址: http://www.cryptography.org/
ftp://ftp.replay.com/pub/relay/linux/redhat/ (RPM)
htp://www.debian.org/Packages/unstable/non-us/cfs.html (debian)

TCFS
TCFS是核心层的数据加密工具。它与CFS相似,还有几个优点:在核心层实现,因而速度更快;与NFS紧密集成,提供本地和网络数据安全;解密过程由客户端完成,口令不用通过网络传送。但目前其仍未被加入到2.2内核。

下载网址: http://tcfs.dia.unisa.it/

PPDD
PPDD允许用户建立加密的磁盘分区。该分区可以是一个实际分区,或loopback设备(一个文件,但被安装为一个文件系统)。

下载网址: http://linux01.gwdg.de/~alatham/
Encrypted Home Directory
作方式与CFS相似,但它提供的是一个加密目录。其实现机制是在/crypt/目录下以用户UID建立一个文件,并将其安装为一个loopback设备供用户访问。加密和解密在同一台机器上完成。该软件仍在开发中,使用前请备份好重要数据。

下载网址:
http://members.home.net/id-est/

随机数源
要使加密更为有效,特别是象IPSec在许多机器上的广泛应用,好的随机数将直接影响到加密数据的安全性。在LINUX系统中有两个随机数生成器 /dev/random 和 /dev/urandom,但其效果并不总是十分理想。更好的办法是根据“随机事件”生成随机数,如键盘和鼠标输入值、中断、磁盘读取等等。然而,许多服务器没有键盘和鼠标,许多“黑盒”产品也不带有硬盘,因此很难找到好的随机数源。而如网络状态等也不能很好地保证随机数的“随机性”。电器噪声和声音频率也许是很好的随机数源,但大多数人恐怕并不愿意在计算机中增加这种设备,而且也可能出现设备失灵和外部操纵(影响)等问题。对于我们大多数人而言,随机数源好象没有多大关系。但对于要处理大量连接的网关服务器(如IPSec),却是必须要考虑的问题。为了提供一个可能的解决方案,PIII处理器中内置了一个与CPU温度相关的随机数生成器。相信在不久的将来,会出现更多更好的解决方案。

版权所有,未经许可,不得转载