计算机常常是其他计算机配置的一部分。此配置称为网络。连接的计算机可通过网络交换信息。联网的计算机可以访问网络中其他计算机的数据和其他资源。计算机网络创建了一种强大且完善的计算环境。但是,网络同时也使计算机安全性变得更为复杂。
例如,在计算机网络中,独立的计算机都允许共享信息。未经授权的访问存在安全风险。由于许多用户都有权访问网络,因此更可能会出现未经授权的访问,尤其是由于用户错误进行的访问。口令使用不当也会导致未经授权的访问。
网络安全性通常基于限制或阻止来自远程系统的操作。下图介绍了可以对远程操作强制执行的安全限制。
验证是一种在特定用户访问远程系统时,限制这些用户的访问权限的方法。可以同时在系统级别和网络级别设置验证。授权是一种在授予用户访问远程系统的权限之后,限制此用户可执行的操作的方法。下表列出了可提供验证和授权的服务。
表 2–3 远程访问的验证和授权服务
服务 |
说明 |
更多信息 |
---|---|---|
IPsec |
IPsec 提供了基于主机和基于证书的验证以及网络通信流量加密。 | |
Kerberos |
Kerberos 使用加密功能对登录系统的用户进行验证和授权。 |
有关示例,请参见Kerberos 服务的工作方式。 |
LDAP 和 NIS+ |
LDAP 目录服务和 NIS+ 名称服务可以提供网络级别的验证和授权。 |
《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》 和 《System Administration Guide: Naming and Directory Services (NIS+)》 |
远程登录命令 |
使用远程登录命令,用户可以通过网络登录到远程系统并使用其资源。rlogin、rcp 和 ftp 是一些远程登录命令。如果是“受信任主机”,则会自动执行验证。否则,系统会要求进行自我验证。 | |
SASL |
简单身份验证和安全层 (Simple Authentication and Security Layer, SASL) 是一种为网络协议提供验证和可选安全性服务的框架。可以使用插件来选择相应的验证协议。 | |
安全 RPC |
安全 RPC 通过对远程计算机发出请求的用户进行验证,可提高网络环境的安全性。可以使用 UNIX、DES 或 Kerberos 验证系统来实现安全 RPC。 | |
|
安全 RPC 还可用于在 NFS 环境中提供额外的安全性。具有安全 RPC 的 NFS 环境称为安全 NFS。安全 NFS 针对公钥使用 Diffie-Hellman 验证。 | |
Solaris 安全 Shell |
Solaris 安全 Shell 可以对不安全网络上的网络通信流量进行加密。Solaris 安全 Shell 通过单独使用口令、公钥或同时使用这两者来提供验证。Solaris 安全 Shell 针对公钥使用 RSA 和 DSA 验证。 |
安全 RPC 的可能替代项是 Solaris 特权端口机制。为特权端口指定的端口号小于 1024。客户机系统验证客户机的凭证之后,此客户机便会使用特权端口与服务器建立连接。然后,服务器通过检查连接的端口号来检验客户机凭证。
未运行 Solaris 软件的客户机可能无法使用特权端口进行通信。如果客户机无法通过此端口进行通信,则会显示类似以下内容的错误消息:
“Weak Authentication NFS request from unprivileged port” |
可以设置防火墙系统来防止外部对网络中的资源进行访问。防火墙系统是一台安全主机,可充当内部网络与外部网络之间的屏障。内部网络将所有其他网络均视为不可信对象。 应该考虑将此设置作为内部网络和任何与其进行通信的外部网络(如 Internet)之间的强制性设置。
防火墙可充当网关和屏障,并可充当在网络之间传递数据的网关,还可充当阻止与网络来回自由传递数据的屏障。防火墙要求内部网络中的用户登录到防火墙系统之后才能访问远程网络中的主机。同样,外部网络中的用户必须先登录到防火墙系统,然后才会被授予访问内部网络中主机的权限。
防火墙还可用于某些内部网络之间。例如,可以设置防火墙或安全网关计算机来限制包的传送。如果网关计算机不是包的源地址或目标地址,则网关可以禁止两个网络之间的包交换。防火墙还应设置为仅转发特定协议的包。例如,可以允许包传送邮件,但不允许传送 telnet 或 rlogin 命令。ASET 以高安全级别运行时,会禁用 Internet 协议 (Internet Protocol, IP) 包的转发。
此外,从内部网络发送的所有电子邮件均会首先发送到防火墙系统。然后,防火墙将邮件传送给外部网络中的主机。防火墙系统还会接收所有传入的电子邮件,并将邮件分发给内部网络中的主机。
防火墙可阻止未经授权的用户访问网络中的主机。应该严格维护对防火墙强制执行的安全性,但对网络中其他主机的安全性限制可以较为宽松。但是,突破防火墙的入侵者可以获取访问内部网络中所有其他主机的权限。
防火墙系统不应该包含任何受信任主机。受信任主机是指不要求用户提供口令即可从其中进行登录的主机。防火墙系统不应该共享其任何文件系统,也不应该挂载其他服务器的任何文件系统。
可以使用以下技术来通过防火墙加强系统的安全性:
通过 ASET 对防火墙系统强制执行高安全性,如第 7 章,使用自动安全性增强工具(任务)中所述。
通过 Solaris 安全工具包(非正式名称为 JASS 工具包)使用防火墙来加强 Solaris 系统的安全性。此工具包可以从 Sun 的 Web 站点 http://wwws.sun.com/security/jass 下载。
通过 IPsec 和 Solaris IP 过滤器提供防火墙保护。有关保护网络通信流量的更多信息,请参见《系统管理指南:IP 服务》中的第 IV 部分, “IP 安全性”。
大多数局域网可以通过称为包的块在计算机之间传输数据。通过称为包粉碎的过程,网络之外的未经授权用户可能会破坏或损坏数据。
包粉碎涉及在包到达其目标之前捕获这些包。然后,入侵者会向内容中加入任意数据,并将这些包发送回其原始路线。在局域网中,不可能粉碎包,因为包会同时到达所有系统(包括服务器)。但是,可以在网关上粉碎包,因此请确保网络中的所有网关都受到保护。
大多数危险的攻击都会影响数据的完整性。这类攻击包括更改包的内容或者模拟用户。涉及窃听的攻击不会破坏数据的完整性。窃听者会记录会话内容以便稍后重放,但不会模拟用户。尽管窃听攻击不会攻击数据的完整性,但是会影响保密性。可以对通过网络的数据进行加密来保护敏感信息的保密性。
要对不安全网络上的远程操作进行加密,请参见第 18 章,使用 Solaris 安全 Shell(任务)。
要对网络中的数据进行加密和验证,请参见第 20 章,Kerberos 服务介绍。
要对 IP 数据报进行加密,请参见《系统管理指南:IP 服务》中的第 19 章 “IP 安全体系结构(概述)”。