12. 常见问题

问: 将对驱动的支持直接编译进内核是否比作为模块更安全?
问: 为什么从远程机器以 root 身份登录通常会失败?
问: 如何启用 ApacheSSL 扩展?
问: 怎样在保持安全性的同时维护用户账户?
问: 如何通过 Apache 来使用密码保护指定的 HTML 文档?
问:

将对驱动的支持直接编译进内核是否比作为模块更安全?

答:

某些人认为禁用加载设备驱动模块的功能比较好,因为入侵者可能会加载某个特洛伊木马模块或是可能影响系统安全性的模块。

不过,为了加载模块,您必需是 root。模块目标文件也仅对 root 可写。这意味着入侵者需要 root 访问权限来插入某个模块。如果该入侵者获得了 root 访问权限,那么除了他是否会加载某个模块之外,您还需要担心其他更为严重的事情。

模块是为了动态加载对特殊的不常用的设备的支持而设的。例如在服务器计算机上,或是防火墙上,这不太可能发生。因此,对于作为服务器的机器,将支持直接编译进内核才比较有意义。模块相比直接编译进内核的支持也要慢一些。

问:

为什么从远程机器以 root 身份登录通常会失败?

答:

参见第 4.2 节 “Root 账户安全性”。这是故意的,是为了避免远程用户企图通过 telnetroot 身份连接到您的计算机。而这是一个非常严重的安全漏洞,因为随后,root 用户的密码就会以明码形式在网络上传送。别忘了:入侵者有的是时间运行自动程序来找出您的密码。而且,这样一来可以明确记录下是谁登录,而并非仅仅是 root 用户。

问:

如何启用 ApacheSSL 扩展?

答:

只要安装 mod_ssl 软件包,并参考 mod_ssl 主页上的文档。

[注意]注意

您也应该考虑 mod_sxnet 模块,它是 mod_ssl 的一个插件,以允许激活“Thawte 安全外网(Thawte Secure Extranet)”。mod_ssl 对通讯加密,然而 mod_ssl-sxnet 更加深入。它让您能够使用个人证书安全地认证网页的某个用户。详情请参见 Thawte,或者从您的 Mandriva Linux 发行版安装 mod_sxnet 模块,并阅读其随附的文档。

您也可以试试 ZEDZ 网。它含有许多预编译的软件包,并且它位于美国以外。

问:

怎样在保持安全性的同时维护用户账户?

答:

Mandriva Linux 发行版含有大量的工具来改变用户账户的属性。

  • pwconvunpwconv 程序可用来将密码转换为加密的(shadowed)或是未加密的(non-shadowed)。

  • pwckgrpck 程序可用来对 /etc/passwd/etc/group 文件验证其组织是否合适。

  • useraddusermod、和 userdel 程序可用来添加,删除以及修改用户账户。对用户组,请使用相应的 groupaddgroupmod、和 groupdel 程序。

  • 可以使用 gpasswd 建立用户组的密码。

所有这些程序都“可自动探测加密密码(shadow-aware)” – 也就是说,如果您启用了加密密码(shadow),它们就会到 /etc/shadow 中查找密码信息,否则就不。

问:

如何通过 Apache 来使用密码保护指定的 HTML 文档?

答:

我打赌您不知道 Apache 周报,是吧?

您能在 Apache 周报找到有关用户认证的信息,以及在 Apache 找到其他的 Web 服务器安全技巧。