作为存储协议的互联网小型计算机接口(iSCSI)以其管理的简单性着称。如果一个管理员知道TCP/IP协议以及有自尊心的管理员所不知道的内容,那么他们就拥有了成功管理iSCSI连接所需的知识。
iSCSI还得益于其硬件选择。在大多数情况下,周围同样的以太电缆和网络设备可以用来顺利传送iSCSI流量。
由于所有这些都适用于它,把服务器连接到存储系统的iSCSI协议似乎是跨IT环境的首要选择。但是它确实有一个缺点,这一点在匆忙加速部署新服务器时经常被忽视。
这个缺点是iSCSI保护这些连接的选项。不像连接从不离开服务器机架的直接附加式存储,也不像光纤通道的完全独立和单次使用的连接基础架构,iSCSI的在已有网络上使用它的价值掩盖了很多安全问题,这些问题并不能显而易见地解决。
但是保护iSCSI网络连接的解决方案确实存在。特别有趣的是,这些解决方案可以在各自之上进行分层来创造安全数据所需的任何深度。当管理员考虑把iSCSI暴露在他们的环境中时,他们应该仔细考虑这一点。
第一层:分离的访问控制列表(ACL)网络。iSCSI针对千里眼的第一层防护不会在iSCSI协议自身的内部发生。相反,创建来支持iSCSI的架构应该以这样的方式,即把iSCSI流量与其它传统网络分开。
出于安全需要以及为了确保保障性能,隔离可以是物理性的,即通过建立通过分离的网络设备的路径来实现。它也可以是逻辑的,即通过使用网络层的VLAN和访问控制列表(ACL)来实现。配置第三层(基于IP)网络设备上的ACL可以确保适当的流量路由。它也具有屏蔽不该在全球范围被访问的iSCSI LUN的效果。iSCSI通过默认的TCP端口3260运行,它引入了这样一个概念:第四层(基于端口)的访问控制列表也可以提供额外的安全性。
第二层:挑战握手认证协议(CHAP)验证。虽然ACL也许能确保iSCSI流量准确地转到正确的主机,但是它并没有为存储器验证服务器。这个过程通过这个协议的挑战握手认证协议支持来处理,它使用了两个可能的配置之一。第一个是单向的CHAP身份验证,存储器上的iSCSI目标验证服务器的启动程序。存储器上设置了单向CHAP身份验证的秘密,本质上它是iSCSI密码。任何正在进入的服务器启动程序必须知道这个密码才能发起会话。
第二个稍微好一点的选择是双向CHAP身份验证,在这种情况下iSCSI目标和启动程序彼此进行身份验证。在这个配置中使用了分离的秘密,连接的各方都有一个。每一方都必须知道另一方的秘密才能启动连接。
第三层:远程身份验证拨入用户服务(RADIUS)验证。RADIUS,或者称为远程身份验证拨入用户服务,长久以来与电话和调制解调器联系在一起。这个服务也已经演变成验证其它协议的一个标准。iSCSI的启动程序和目标不是彼此验证,而是通过RADIUS服务器来验证。
通过第三方服务的集中式验证改善了安全性管理。使用CHAP验证配置密码需要跨越多台服务器以及存储器连接来输入它们的字符串。密码数据的分布引入了犯错误的机会。仅仅记录许多密码会暴露漏洞。RADIUS服务器的集中式验证降低了投入,这就减少了这些管理风险。
第四层:互联网协议安全验证。不幸的是,CHAP验证自身并不是一个非常强大的保护连接安全的机制。据报道,CHAP会受到离线字典攻击,一个持久的攻击者可以通过强力手段最终猜到密码。正是由于这个原因,在创建CHAP密码时推荐使用随机的字母和数字串。实际上RADIUS自身也仅仅是一个管理CHAP密码的服务,这暗示着它的实施并不会增加太多超过秘密总合的安全性。
这些因素表明真正的安全连接身份验证需要一个不同的方法,一个不会受制于CHAP漏洞的方法。IPSec可以满足这些更强的身份验证需求。IPSec工作在IP数据包层,赋予了它TCP/IP协议栈的全部功能。IPSec身份验证可以通过使用预共享密钥(类似于CHAP)而存在,但是它也支持类似于Kerberos和基于证书的身份验证的更强大的框架。
IPSec的最大的局限性在于存储设备的支持上。尽管CHAP身份验证与iSCSI连接更加密切相关,但是IPSec的功能可能不是存储器操作系统的功能集的一部分。请查阅制造商的文档来获取关于存储器硬件的支持的相关信息。
第五层:互联网协议安全加密。这一点的所有安全层都集中它们的精力来确保两个设备可以进行通信。这就是身份验证过程。这一点对保护存储器数据没有给予任何关注,因为它是通过网络流动。解决这个问题需要加密技术,这是IPSec支持的另一项活动。IPSec加密代表了这五层的最后部分,因为只有在服务器启动程序已经被存储设备的目标验证后它才发生。产生的流量在源端进行加密,然后传送成功之后进行解密。
虽然加密流量确实提供了最高级别的安全性,但是这样做也带来了性能上的成本。加密和解密活动仅仅是需要更多的处理过程,这本身就会影响整体传输速度。因此,目前的最佳做法建议通过IPSec加密流量仅限于不信任的网络,或者用在需要极度安全的情况。
iSCSI确实是一个把服务器路由到存储器的很好的协议。对于那些熟悉TCP/IP的基本面的人来讲,iSCSI易于使用、互连简单以及需要一个较短的学习曲线,它为IT提供了一个一流的服务。然而,要谨防其经常被遗忘的缺点:由于缺乏正确的安全层,iSCSI可能会使存储器流量以容易利用的方式暴露在外。