服务器 频道

服务器安全:IIS 6.0安全措施的实现

IIS 的安全要素

    IIS 的安全要素主要包括身份验证、访问控制、证书、加密、服务器网关加密、可选的加密服务提供程序以及审核等,下面分别给予说明。

    (1)身份验证

    Internet 信息服务提供与 Windows 完全集成的安全功能。例如,IIS 6.0支持以下 6 种身份验证方法。可以使用这些方法确认任何请求访问网站的用户的身份以及授予访问站点公共区域的权限,同时又可防止未经授权的用户访问专用文件和目录。

    • 匿名身份验证 允许任意用户进行访问,不询问用户名和密码。
    • 基本身份验证 提示用户输入用户名和密码,然后通过网络“非加密”发送这些信息。
    • 摘要式身份验证 与“基本身份验证”非常类似,所不同的是将密码作为“哈希”值发送。摘要式身份验证仅用于 Windows 域控制器的域。
    • 高级摘要式身份验证 与“摘要式身份验证”基本相同,所不同的是“高级摘要式身份验证”将客户端凭据作为 MD5 哈希存储在运行 Windows Server 2003 的域控制器计算机上的 Active Directory 目录服务中,从而提高了安全性。
    • 集成 Windows 身份验证 使用哈希技术来标识用户,而不通过网络实际发送密码。
    • 证书 是可以用来建立安全套接字层 (SSL) 连接的数字凭据。它们也可以用于验证。

     (2)访问控制

    通过将 NTFS 访问权限用作 Web 服务器的安全基础,我们可以定义授予 Windows 用户和组文件和目录访问的级别。例如,如果一个企业决定在我们的 Web 服务器上公布它的目录,我们需要为该企业创建一个 Windows 用户帐户,然后配置特定网站、目录或文件的权限。权限应该只允许服务器管理员和企业的所有人更新网站的内容。应该允许公共用户查看网站,但是不能更改网站的内容。要按此方式控制对目录和文件的访问,我们必须使用 NTFS 格式的驱动器,而不能使用 FAT32 格式的驱动器。

    WebDAV 是 HTTP 1.1 协议的扩展,促进了基于 HTTP 连接的文件和目录管理。通过使用 WebDAV“动作”或命令,可以将属性添加到文件和目录中以及从文件和目录读取属性。文件和目录可以远程编辑、创建、删除、移动或复制。可以通过 Web 服务器权限或 NTFS 权限配置附加的访问控制。

    (3)证书

    证书是允许服务器和客户彼此验证的数字标识文档。他们请求在服务器和客户端浏览器建立 SSL 连接,通过此连接可以发送加密信息。IIS 中基于证书的 SSL 特性由服务器证书、客户端证书和不同的数字密钥组成。可以使用 Microsoft 证书服务创建这些证书或者从可相互信任的第三方机构获得,该机构称为证书颁发机构 (CA)。

    服务器证书给用户提供了一种确认我们的网站身份的方法。服务器证书包含详细的标识信息,如与服务器内容相关的机构的名称,签发证书机构的名称和用于建立加密连接的“公钥”。用户可使用此类信息确定 Web 服务器内容的真实性以及安全 HTTP 连接的完整性。

    使用 SSL,我们的 Web 服务器还有通过检查客户端证书内容验证用户的选项。典型的客户端证书包含有关用户和签发证书及“公钥”的机构的详细信息。可以使用客户端证书验证,结合 SSL 加密技术,实现安全性较高的方法以检验用户的身份。

    (4)加密

    我们可以允许用户以一种安全的方法(使用加密)与我们的服务器交换个人信息,如信用卡号或电话号码。信息在发送前由加密对其进行“编码”,接收后由解密进行“解码”。IIS 中这种加密的基础是 SSL 3.0 协议,它提供了一种与用户建立加密通讯链接的安全方法。SSL 确认我们的网站的真实性同时可有选择地确认正在访问受限制网站用户的身份。

    证书包括用于建立 SSL 安全连接的“密钥”,“密钥”是在建立 SSL 连接时验证服务器和客户端的唯一值,“公钥”和“私钥”组成 SSL“密钥对”。Web 服务器使用此密钥对与用户 Web 浏览器协商建立安全的连接,确定保护通讯所需的加密级别。

    对于此类型的连接,Web 服务器和用户浏览器都应该具有一致的加密、解密能力。在交换过程中,将创建加密密钥或“会话”密钥。我们的服务器和 Web 浏览器都使用会话密钥加密、解密传输信息。会话密钥的加密程度或“强度”是使用“位”来测量的。最大的位号由会话密钥、加密和安全的最大级组成。尽管这些最大加密密钥强度提供了最大的安全性,他们还是需要更多的服务器资源去实现。通常 Web 服务器的会话密钥长度为 40 位,但是根据所需的安全等级也可以是 128 位。

    (5)服务器网关加密

    服务器网关加密 (SGC) 使用 128 位加密为金融机构提供了全球金融交易解决方案。SGC 是安全套接字层 (SSL) 的扩展,它允许拥有 IIS 出口版本的金融机构可使用强加密。

    SGC 不要求在客户浏览器上运行应用程序,并且可由 IIS 4.0 或更高版本的标准出口版本使用。为 SGC 配置的服务器可以增强 128 位和 40 位的加密会话,所以不要求多个 IIS 版本。虽然 SGC 功能已内建到 IIS 4.0 及以后版本中,但是使用 SGC 时还需要特殊的 SGC 证书。联系证书颁发机构以获取可用信息。

    (6)可选的加密服务提供程序

    通过使用可选的加密服务提供程序 (CSP),可以选择 Microsoft 或第三方加密提供程序来处理加密和证书管理。每个加密提供程序可以创建一个公钥和私钥来加密发送到 Web 服务器和从中发送的数据。私钥存储在硬件的服务器端、PCI 卡、智能卡或者注册表中,这是因为它用于 Microsoft 安装的两个默认提供程序:Microsoft DH SChannel 加密提供程序和 Microsoft RSA SChannel 加密提供程序。每个提供程序的 Microsoft 加密 API (CryptoAPI) 包含相同的方法和属性。因此,我们可以在提供程序之间切换,而无需重新编写代码。

    (7)审核

    可以使用安全审核技术监视大范围的用户和 Web 服务器的安全活动。推荐定期审核服务器配置,检测可能被未授权访问影响和篡改资源的区域。可以使用集成的 Windows 实用程序、IIS 内置的日志记录功能或 Active Server Pages (ASP) 应用程序创建审核日志。


0
相关文章