荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: tian.bbs@bbs.tju.edu.cn.no.spam ( Simple ), 信区: Linux
标  题: Re: 确保linux安全的10招                    hanghai.
发信站: 天大求实BBS站 (Mon Oct  6 22:55:20 2003)
转信站: SZU!news.ccie.net.cn!news.happynet.org!UTJ

好东西,呵呵
【 在 tian ( Simple ) 的大作中提到: 】
发信人: hanghai.bbs@bjsing.net (新型土拔鼠), 信区: Linux
标  题: 确保linux安全的10招
发信站: DQPI (Fri Nov  8 19:18:19 2002)
转信站: UTJ!news.tiaozhan.com!news.bjsing.net!DQPI

确保Linux安全的十招
来源:计算机世界

Linux不论在功能上、价格上或性能上都有很多优点,然而,作为开放式操作系统,它不
可避免地存在一些安全隐患。关于如何解决这些隐患,为应用提供一个安全的操作平台
,本文会告诉你一些最基本、最常用,同时也是最有效的招数。
Linux是一种类Unix的操作系统。从理论上讲,Unix本身的设计并没有什么重大的安全缺
陷。多年来,绝大多数在Unix操作系统上发现的安全问题主要存在于个别程序中,所以
大部分Unix厂商都声称有能力解决这些问题,提供安全的Unix操作系统。但Linux有些不
同,因为它不属于某一家厂商,没有厂商宣称对它提供安全保证,因此用户只有自己解
决安全问题。
Linux是一个开放式系统,可以在网络上找到许多现成的程序和工具,这既方便了用户,
也方便了黑客,因为他们也能很容易地找到程序和工具来潜入Linux系统,或者盗取Linu
x系统上的重要信息。不过,只要我们仔细地设定Linux的各种系统功能,并且加上必要
的安全措施,就能让黑客们无机可乘。
一般来说,对Linux系统的安全设定包括取消不必要的服务、限制远程访问、隐藏重要资
料、修补安全漏洞、采用安全工具以及经常性的安全检查等。本文教你十种提高Linux系
统安全性的招数。虽然招数不大,但招招奏效,你不妨一试。

第1招:取消不必要的服务
早期的Unix版本中,每一个不同的网络服务都有一个服务程序在后台运行,后来的版本
用统一的/etc/inetd服务器程序担此重任。Inetd是Internetdaemon的缩写,它同时监视
多个网络端口,一旦接收到外界传来的连接信息,就执行相应的TCP或UDP网络服务。
由于受inetd的统一指挥,因此Linux中的大部分TCP或UDP服务都是在/etc/inetd.conf文
件中设定。所以取消不必要服务的第一步就是检查/etc/inetd.conf档,在不要的服务前
加上“#”号。
一般来说,除了http、smtp、telnet和ftp之外,其它服务都应该取消,诸如简单文件传
输协议tftp、网络邮件存储及接收所用的imap/ipop传输协议、寻找和搜索资料用的goph
er以及用于时间同步的daytime和time等。
还有一些报告系统状态的服务,如finger、efinger、systat和netstat等,虽然对系统
查错和寻找用户非常有用,但也给黑客提供了方便之门。例如,黑客可以利用finger服
务查找用户的电话、使用目录以及其它重要信息。因此,很多Linux系统将这些服务全部
取消或部分取消,以增强系统的安全性。
Inetd除了利用/etc/inetd.conf设置系统服务项之外,还利用/etc/services档查找各项
服务所使用的埠。因此,用户必须仔细检查该文件中各埠的设定,以免有安全上的漏洞

在Linux中有两种不同的服务型态:一种是仅在有需要时才执行的服务,如finger服务;
另一种是一直在执行的永不停顿的服务。这类服务在系统激活时就开始执行,因此不能
靠修改inetd来停止其服务,而只能从修改/etc/rc.d/rc[n].d/檔或用Runleveledit
or去修改它。提供档服务的NFS服务器和提供NNTP新闻服务的news都属于这类服务,如果
没有必要,最好取消这些服务。

第2招:限制系统的出入
在进入Linux系统之前,所有用户都需要登录,也就是说,用户需要输入用户帐号和密码
,只有它们通过系统验证之后,用户才能进入系统。
与其它Unix操作系统一样,Linux一般将密码加密之后,存放在/etc/passwd檔中。Linux
系统上的所有用户都可以读到/etc/passwd檔,虽然文件中保存的密码已经经过加密,但
仍然不太安全。因为一般的用户可以利用现成的密码破译工具,以穷举法猜测出密码。
比较安全的方法是设定影子档/etc/shadow,只允许有特殊权限的用户阅读该文件。
在Linux系统中,如果要采用影子档,必须将所有的公用程序重新编译,才能支持影子档
。这种方法比较麻烦,比较简便的方法是采用插入式验证模块(PAM)。很多Linux系统
都带有Linux的工具程序PAM,它是一种身份验证机制,可以用来动态地改变身份验证的
方法和要求,而不要求重新编译其它公用程序。这是因为PAM采用封闭包的方式,将所有
与身份验证有关的逻辑全部隐藏在模块内,因此它是采用影子档案的最佳帮手。
此外,PAM还有很多安全功能:它可以将传统的DES加密方法改写为其它功能更强的加密
方法,以确保用户密码不会轻易地遭人破译;它可以设定每个用户使用计算机资源的上
限;它甚至可以设定用户的上机时间和地点。
Linux系统管理人员只需花费几小时去安装和设定PAM,就能大大提高Linux系统的安全性
,把很多攻击阻挡在系统之外。

第3招:保持最新的系统核心
由于Linux流通渠道很多,而且经常有更新的程序和系统补丁出现,因此,为了加强系统
安全,一定要经常更新系统内核。
Kernel是Linux操作系统的核心,它常驻内存,用于加载操作系统的其它部分,并实现操
作系统的基本功能。由于Kernel控制计算机和网络的各种功能,因此,它的安全性对整
个系统安全至关重要。
早期的Kernel版本存在许多众所周知的安全漏洞,而且也不太稳定,只有2.0.x以上的版
本才比较稳定和安全,新版本的运行效率也有很大改观。在设定Kernel的功能时,只选
择必要的功能,千万不要所有功能照单全收,否则会使Kernel变得很大,既占用系统资
源,也给黑客留下可乘之机。
在Internet上常常有最新的安全修补程序,Linux系统管理员应该消息灵通,经常光顾安
全新闻组,查阅新的修补程序。

第4招:检查登录密码
设定登录密码是一项非常重要的安全措施,如果用户的密码设定不合适,就很容易被破
译,尤其是拥有超级用户使用权限的用户,如果没有良好的密码,将给系统造成很大的
安全漏洞。
在多用户系统中,如果强迫每个用户选择不易猜出的密码,将大大提高系统的安全性。
但如果passwd程序无法强迫每个上机用户使用恰当的密码,要确保密码的安全度,就只
能依靠密码破解程序了。
实际上,密码破解程序是黑客工具箱中的一种工具,它将常用的密码或者是英文字典中
所有可能用来作密码的字都用程序加密成密码字,然后将其与Linux系统的/etc/passwd
密码文件或/etc/shadow影子文件相比较,如果发现有吻合的密码,就可以求得明码了。

在网络上可以找到很多密码破解程序,比较有名的程序是crack。用户可以自己先执行密
码破解程序,找出容易被黑客破解的密码,先行改正总比被黑客破解要有利。

第5招:设定用户帐号的安全等级
除密码之外,用户帐号也有安全等级,这是因为在Linux上每个帐号可以被赋予不同的权
限,因此在建立一个新用户ID时,系统管理员应该根据需要赋予该帐号不同的权限,并
且归并到不同的用户组中。
在Linux系统上的tcpd中,可以设定允许上机和不允许上机人员的名单。其中,允许上机
人员名单在/etc/hosts.allow中设置,不允许上机人员名单在/etc/hosts.deny中设置。
设置完成之后,需要重新激活inetd程序才会生效。此外,Linux将自动把允许进入或不
允许进入的结果记录到/rar/log/secure文件中,系统管理员可以据此查出可疑的进入记
录。
每个帐号ID应该有专人负责。在企业中,如果负责某个ID的职员离职,管理员应立即从
系统中删除该帐号。很多入侵事件都是借用了那些很久不用的帐号。
在用户帐号之中,黑客最喜欢具有root权限的帐号,这种超级用户有权修改或删除各种
系统设置,可以在系统中畅行无阻。因此,在给任何帐号赋予root权限之前,都必须仔
细考虑。
Linux系统中的/etc/securetty文件包含了一组能够以root帐号登录的终端机名称。例如
,在RedHatLinux系统中,该文件的初始值仅允许本地虚拟控制台(rtys)以root权限登
录,而不允许远程用户以root权限登录。最好不要修改该档,如果一定要从远程登录为r
oot权限,最好是先以普通帐号登录,然后利用su命令升级为超级用户。

第6招:消除黑客犯罪的温床
在Unix系统中,有一系列r字头的公用程序,它们是黑客用以入侵的武器,非常危险,因
此绝对不要将root帐号开放给这些公用程序。由于这些公用程序都是用.rhosts檔或者ho
sts.equiv档核准进入的,因此一定要确保root帐号不包括在这些档之内。
由于r字头指令是黑客们的温床,因此很多安全工具都是针对这一安全漏洞而设计的。例
如,PAM工具就可以用来将r字头公用程序的功力废掉,它在/etc/pam.d/rlogin文件中加
上登录必须先核准的指令,使整个系统的用户都不能使用自己home目录下的.rhosts文件


第7招:增强安全防护工具
SSH是安全套接层的简称,它是可以安全地用来取代rlogin、rsh和rcp等公用程序的一套
程序组。SSH采用公开密钥技术对网络上两台主机之间的通信信息加密,并且用其密钥充
当身份验证的工具。
由于SSH将网络上的信息加密,因此它可以用来安全地登录到远程主机上,并且在两台主
机之间安全地传送信息。实际上,SSH不仅可以保障Linux主机之间的安全通信,Windows
用户也可以通过SSH安全地连接到Linux服务器上。

第8招:限制超级用户的权力
我们在前面提到,root是Linux保护的重点,由于它权力无限,因此最好不要轻易将超级
用户授权出去。但是,有些程序的安装和维护工作必须要求有超级用户的权限,在这种
情况下,可以利用其它工具让这类用户有部分超级用户的权限。Sudo就是这样的工具。
Sudo程序允许一般用户经过组态设定后,以用户自己的密码再登录一次,取得超级用户
的权限,但只能执行有限的几个指令。例如,应用sudo后,可以让管理磁带备份的管理
人员每天按时登录到系统中,取得超级用户权限去执行文文件备份工作,但却没有特权
去作其它只有超级用户才能作的工作。
Sudo不但限制了用户的权限,而且还将每次使用sudo所执行的指令记录下来,不管该指
令的执行是成功还是失败。在大型企业中,有时候有许多人同时管理Linux系统的各个不
同部分,每个管理人员都有用sudo授权给某些用户超级用户权限的能力,从sudo的日志
中,可以追踪到谁做了什么以及改动了系统的哪些部分。
值得注意的是,sudo并不能限制所有的用户行为,尤其是当某些简单的指令没有设置限
定时,就有可能被黑客滥用。例如,一般用来显示文件内容的/etc/cat指令,如果有了
超级用户的权限,黑客就可以用它修改或删除一些重要的档。

第9招:追踪黑客的踪迹
当你仔细设定了各种与Linux相关的组态,并且安装了必要的安全防护工具之后,Linux
操作系统的安全性的确大为提高,但是却并不能保证防止那些艺高人胆大的网络黑客的
入侵。
在平时,网络管理人员要经常提高警惕,随时注意各种可疑状况,并且按时检查各种系
统日志文件,包括一般信息日志、网络连接日志、文件传输日志以及用户登录日志等。
在检查这些日志时,要注意是否有不合常理的时间记载。例如:
?正常用户在半夜三更登录;
?不正常的日志记录,比如日志只记录了一半就切断了,或者整个日志文件被删除了;
?用户从陌生的网址进入系统;
?因密码错误或用户帐号错误被摈弃在外的日志记录,尤其是那些一再连续尝试进入失败
,但却有一定模式的试错法;
?非法使用或不正当使用超级用户权限su的指令;
?重新开机或重新激活各项服务的记录。

第10招:共同防御,确保安全
从计算机安全的角度看,世界上没有绝对密不透风、百分之百安全的计算机系统,Linux
系统也不例外。采用以上的安全守则,虽然可以使Linux系统的安全性大大提高,使顺手
牵羊型的黑客和计算机玩家不能轻易闯入,但却不一定能阻挡那些身怀绝技的武林高手
,因此,企业用户还需要借助防火墙等其它安全工具,共同防御黑客入侵,才能确保系
统万无一失。


__________________


--
━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━
                每一刻都存在 不一样的精彩
━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━
※ 来源:·北极星BBS站 bjsing.net·[FROM: 61.167.119.10]


--
  │      ┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐         ∮
  ││    │▌▌│▌▌▌│▌▌│▌▌▌│▌▌    Life
  │││  ││││││││││││││∮││    is full
  │││  └┴┴┴┴┴┴┴┴┴┴┴┴∮┴┴┘    of memories ...
  ┼┼┼────────∮────────────ぉぉぉぉぉぉぉい
  ┼┼┼──────────────────────────────────

※ 来源:.天大求实 BBS bbs.tju.edu.cn.[FROM: bbs.tju.edu.cn]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店