Linux下安全配置系统要点几则!

上一篇 / 下一篇  2008-08-24 15:23:20 / 个人分类:Linux

 一、磁盘分区

  ◆1、如果是新安装系统,对磁盘分区应考虑安全性:

  (1)根目录(/)、用户目录(/home)、临时目录(/tmp)和/var目录应分开到不同的磁盘分区;

  (2)以上各目录所在分区的磁盘空间大小应充分考虑,避免因某些原因造成分区空间用完而导致系统崩溃;

  ◆2、对于/tmp和/var目录所在分区,大多数情况下不需要有suid属性的程序,所以应为这些分区添加nosuid属性;

  方法一:修改/etc/fstab文件,添加nosuid属性字。例如:

  /dev/hda2 /tmp ext2 exec,dev,nosuid,rw 0 0

  方法二:如果对/etc/fstab文件操作不熟,建议通过linuxconf程序来修改。

  * 运行linuxconf程序;

  * 选择"File systems"下的"Access local drive";

  * 选择需要修改属性的磁盘分区;

  * 选择"No setuid programs allowed"选项;

  * 根据需要选择其它可选项;

  * 正常退出。(一般会提示重新mount该分区)

  二、安装

  1、对于非测试主机,不应安装过多的软件包。这样可以降低因软件包而导致出现安全漏洞的可能性。

  2、对于非测试主机,在选择主机启动服务时不选择非必需的服务。例如routed、ypbind等。

  三、安全配置与增强

  内核升级。

  GNU libc共享库升级。(警告:如果没有经验,不可轻易尝试。可暂缓。)

  关闭危险的网络服务。echo、chargen、shell、login、finger、NFS、RPC等

  关闭非必需的网络服务。talk、ntalk、pop-2等

  常见网络服务安全配置与升级

  确保网络服务所使用版本为当前最新和最安全的版本。

  取消匿名FTP访问

  去除非必需的suid程序

  使用tcpwrapper

  使用ipchains防火墙

  日志系统syslogd

  四、建议替换的常见网络服务应用程序

  WuFTPD

  WuFTD从1994年就开始就不断地出现安全漏洞,黑客很容易就可以获得远程root访问(Remote Root Access)的权限,而且很多安全漏洞甚至不需要在FTP服务器上有一个有效的帐号。最近,WuFTP也是频频出现安全漏洞。

  它的最好的替代程序是ProFTPD。ProFTPD很容易配置,在多数情况下速度也比较快,而且它的源代码也比较干净(缓冲溢出的错误比较少)。有许多重要的站点使用ProFTPD。sourceforge.net就是一个很好的例子(这个站点共有3,000个开放源代码的项目,其负荷并不小啊!)。一些Linux的发行商在它们的主FTP站点上使用的也是ProFTPD,只有两个主要Linux的发行商(SuSE和Caldera)使用WuFTPD。

  ProFTPD的另一个优点就是既可以从inetd运行又可以作为单独的daemon运行。这样就可以很容易解决inetd带来的一些问题,如:拒绝服务的攻击(denial of service attack),等等。系统越简单,就越容易保证系统的安全。WuFTPD要么重新审核一遍全部的源代码(非常困难),要么完全重写一遍代码,否则WuFTPD必然要被ProFTPD代替。

  Telnet

  Telnet是非常非常不安全的,它用明文来传送密码。它的安全的替代程序是OpenSSH。

  OpenSSH在Linux上已经非常成熟和稳定了,而且在Windows平台上也有很多免费的客户端软件。Linux的发行商应该采用OpenBSD的策略:安装OpenSSH并把它设置为默认的,安装Telnet但是不把它设置成默认的。对于不在美国的Linux发行商,很容易就可以在Linux的发行版中加上OpenSSH。美国的Linux发行商就要想一些别的办法了。

  Telnet是无可救药的程序。要保证系统的安全必须用OpenSSH这样的软件来替代它。

  Sendmail

  最近这些年,Sendmail的安全性已经提高很多了(以前它通常是黑客重点攻击的程序)。然而,Sendmail还是有一个很严重的问题。一旦出现了安全漏洞(例如:最近出现的Linux内核错误),Sendmail就是被黑客重点攻击的程序,因为Sendmail是以root权限运行而且代码很庞大容易出问题。

  几乎所有的Linux发行商都把Sendmail作为默认的配置,只有少数几个把Postfix或Qmail作为可选的软件包。但是,很少有Linux的发行商在自己的邮件服务器上使用Sendmail。SuSE和Red Hat都使用基于Qmail的系统。

  Sendmail并不一定会被别的程序完全替代。但是它的两个替代程序Qmail和Postfix都比它安全、速度快,而且特别是Postfix比它容易配置和维护。

  su

  su是用来改变当前用户的ID,转换成别的用户。你可以以普通用户登录,当需要以root身份做一些事的时候,只要执行“su”命令,然后输入root的密码。su本身是没有问题的,但是它会让人养成不好的习惯。如果一个系统有多个管理员,必须都给他们root的口令。

  su的一个替代程序是sudo。Red Hat 6.2中包含这个软件。sudo允许你设置哪个用户哪个组可以以root身份执行哪些程序。你还可以根据用户登录的位置对他们加以限制(如果有人“破”了一个用户的口令,并用这个帐号从远程计算机登录,你可以限制他使用sudo)。Debian也有一个类似的程序叫super,与sudo比较各有优缺点。

  让用户养成良好的习惯。使用root帐号并让多个人知道root的密码并不是一个好的习惯。

  named

  大部分Linux的发行商都解决了这个问题。named以前是以root运行的,因此当named出现新的漏洞的时候,很容易就可以入侵一些很重要的计算机并获得root权限。现在只要用命令行的一些参数就能让named以非root的用户运行。而且,现在绝大多数Linux的发行商都让named以普通用户的权限运行。命令格式通常为:

  named -u ; -g ;

  安全守则

  1. 废除系统所有默认的帐号和密码。

  2. 在用户合法性得到验证前不要显示公司题头、在线帮助以及其它信息。

  3. 废除“黑客”可以攻击系统的网络服务。

  4. 使用6到8位的字母数字式密码。

  5. 限制用户尝试登录到系统的次数。

  6. 记录违反安全性的情况并对安全记录进行复查。

  7. 对于重要信息,上网传输前要先进行加密。

  8. 重视专家提出的建议,安装他们推荐的系统“补丁”。

  9. 限制不需密码即可访问的主机文件。

  10.修改网络配置文件,以便将来自外部的TCP连接限制到最少数量的端口。不允许诸如tftp,sunrpc,printer,rlogin或rexec之类的协议。

  11.用upas代替sendmail。sendmail有太多已知漏洞,很难修补完全。

  12.去掉对操作并非至关重要又极少使用的程序。

  13.使用chmod将所有系统目录变更为711模式。这样,攻击者们将无法看到它们当中有什么东西,而用户仍可执行。

  14.只要可能,就将磁盘安装为只读模式。其实,仅有少数目录需读写状态。

  15.将系统软件升级为最新版本。老版本可能已被研究并被成功攻击,最新版本一般包括了这些问题的补救。


TAG: Linux

 

评分:0

我来说两句

Open Toolbar