FreeBSD handbook中文版 10 安全(2)

2008-02-23 08:02:01来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


到控制台以外的密码,即使是使用su 命令。例如,确信你的pty’s 作为不安全的因素已经被
第3 页FreeBSD 使用手册
记录在/etc/ttys 文件中,以至直接通过telnet 或rlogin 登陆root 会不被接受。如果使用(如sshd)
其它的登陆服务,确认直接登陆root 根本不行。考虑到每一种访问方法--(如FTP 服务)通
过cracks 经常失败。直接登陆root 应当只有通过系统控制台被允许。
当然,作为一个系统管理员,你应当获得root 权限,所以我们公开几个漏洞。但我们
确信这些漏洞需要额外的密码确认才能操作。一种成为root 访问的是增加适当用户的帐户
到wheel 组(在/etc/group 中)。Wheel 组中的用户可以使用su 命令来访问root。在它们的密
码登陆口,通过把它们放置在wheel 组中,你就永远不会给用户成员访问本地wheel 的权限。
用户帐户应当被放置在staff 组中,然后通过/etc/group 文件加入到wheel 组。事实上,那些
需要访问root 的用户成员将会被放置在wheel 组中。当然也会有可能,用一个如kerberos
的认证方法。在root 帐户中使用kerberos 的.k5login 文件,可以不需要把任何人放置在wheel
组中就允许ksu 访问root.如果入侵者已经获得了密码文件,或者已侵入了一个用户帐户,这
可能是一个比较好的解决方法,因为wheel 机制仍然可能会使入侵者break root。虽然wheel
机制要什么都没有要好得多,但它也不是最安全的选择。
确保超级用户帐户安全的间接方法是通过使用一个有选择性的登陆访问方法确保你的
用户帐户的安全。这样做,入侵者可能会偷窃到密码文件,但不会侵入任何用户帐户。用户
成员通过使用一对私有或公共密匙(如kerberos 或ssh)的安全机制来进入它们的帐户。当
你使用kerberos 时,你必须确保使用kerberos 的服务器或工作站的安全。当你使用一对ssh
的公共/私有密匙系统,你必须确保你所登陆的那台机器的安全,但当你用ssh-keygen 创建
它时,你可以添加一个额外的保护层到你的钥匙对中。你可以强制所有的用户成员使用加密
的方法连接它们的活动,这样就可以关闭可能会被入侵者使用的一个重要漏洞:将一个毫无
关系,很不安全的机器与网络隔离。
更多间接的安全机制能够被实现。你可以从一个带有限制性的服务器到一个毫无限制性
的服务器进行登陆。例如,如果你的主邮箱运行在所有种类的服务器上,那你的工作站就无
法运行任何东西。为了确保你工作站的安全,尽可能少运行服务器,直到根本就没有服务器
运行,然后运行一个受密码保护的屏保。当然,一个入侵者强行访问你的工作站,它就会把
你所设置的所有安全特性都破坏掉。有一个问题必须明确,你必须考虑到这样一个事实,绝
大多数入侵是从那些没有物理访问工作站或服务器权限的人那里,通过一个网络来侵入的。
使用象kerberos 这样的技术,也会让你无法使用系统,或者改变用户帐户的密码,从而影响
到拥有一个帐户的所有用户成员。如果一个用户成员的帐户已经失去安全,应当改变它在所
有机器上的密码。对于不连续的密码,在n 台机器上改变一个密码可能是很乱的。你可能要
第4 页FreeBSD 使用手册
用kerberos 重建密码的限制:一张kerberos 的许可证可能一段时间后会过期,但kerberos 系
统可能要求用户在一段时间以后选择一个新密码(一般是一个月)。
10.3.2 确保以root 权限运行的服务器和suid/sgid 二进制程序的安全
谨慎的系统管理员只运行他需要的服务器,不多也不少。要清醒地认识到第三方的服
务器经常有很多的错误。例如,运行一个老版本的imapd 或popper,就象是给出了一个通用
的root 帐号来访问外部世界。运行每一个服务器,你都要仔细地检查。许多服务器不一定
需要用root 来运行。例如,ntalk, comsat, 和finger 守护程序可能运行在一个特殊的用
户sandboxes 上。一个sandbox 是不完全的,除非你遇到了许多问题,但安全的层级模式
仍然支持:如果能够通过运行在一个sandbox 上的一个服务器侵入,他们仍然必须要攻破
sandbox。攻击者必须通过很多的安全层,这样他侵入的可能性就很小了。过去已经找到了
很多root 的安全漏洞,包括基本的系统服务器。如果你运行着用户通过sshd 来登陆而从
不用telnetd 或rshd 或rlogind 来登陆的服务器,你最好把这些服务器关掉。
现在,FreeBSD 默认在sandbox 中运行ntalkd, comsat,和finger。还有一个叫做named
的程序。/etc/defaults/rc.conf中包含了运行named 的选项,但被注意掉了。无论你是在
安装一个新的系统,还是升级一个已存在的系统,被这些sandboxes 使用的特殊用户帐号
可能没有被安装。谨慎的系统管理员无论何时都要认真研究和执行sandboxes。
有许多其他的服务器通常不能运行在sandboxes 中:sendmail, popper, imapd, ftpd,
和其他一些。你可以选一些,但安装它们可能需要你做很多工作。你可能必须以root 来运
行这些服务器,然后依靠其他的机制来检测可能通过他们进行的侵入活动。
其他比较大的潜在的root 漏洞是安装在系统中的suid-root 和sgid 程序。这些程序,
象rlogin,都放在/bin, /sbin, /usr/bin,或/usr/sbin 中。当然,世上没有100%的安全,
系统默认的suid 和sgid 程序可能认为是比较安全的。
另外,root 漏洞有时候能在这些程序中找到。在1998 年在xterm 的Xlib 中的一个root
漏洞被发现。谨慎的系统管理员需要限制suid 的程序,只有指定的人可以运行,指定人所
在的特殊组可以访问,其他人都不能使用。一台没有显示器的服务器通常不需要一个xterm
程序。
Sgid 程序可能也会有危险。如果一个入侵者能够攻破sgid-kmem 程序,入侵者就可以
第5 页FreeBSD 使用手册
读到/dev/kmem,因而可以读到crypted 密码文件,从而危及到受密码保护的帐户的安全。
另外,一个侵入组kmem 的入侵者可以通过pty’s 来监测到击键的情况,包括通过安全方
法登陆的用户的情况。一个侵入tty 组的入侵者可以写入几乎任何用户的tty。如果用户正
在运行一个终端程序或带有键盘模拟特性的模拟器,入侵者可以偷偷地发送一个数据流来
使用户的终端显示一个命令,然后就以那个用户的身份来运行。
10.3.3 确保用户帐户的安全

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD handbook中文版 12 存储

下一篇:FreeBSD handbook中文版 7 FreeBSD 的启动过程