深入分析Linux防火墙
2006-07-04 12:38:10 来源:WEB开发网最后是最好不设匿名帐户或来宾帐户(anonymouse & guest)如果一定要设,请在/etc/passwd中将其shell设为/bin/failure,使其不能访问任何shell。(注意:Linux 中是设为/bin/false)。打开chroot(如chroot -s),使其访问的文件限定在一定目录下。一定要保证在FTP服务器上唯一允许匿名用户进行写入操作的部分是/incoming目录。列出成功登录的记录清单如果想查看都有哪些人最近成功地登录进入了系统,可以使用last命令。如果想列出比缺省数目更多的记录,可以使用格式“last -nnumber”告诉last命令需要显示多少登录记录。如果这个命令执行失败,说明登录操作还没有被记录下来。为了确保它们能够被记录下来,请以根用户身份执行“touch/sar/log/wtmp”命令来建立日志记录文件。列出不成功登录的记录清单如果想查看都有哪些人最近没有成功地登录进入系统,可以使用lastb命令。和last命令相类似,如果你想列出比缺省数目更多的不成功尝试记录的话,可以使用“lastb -nnumber”格式。如果这个命令执行失败,说明不成功登录操作还没有被记录下来。为了确保它们能够被记录下来,请以根用户身份执行 “touch/var/log/btmp”命令来建立日志记录文件。
如果安全出现了漏洞,或者你认为已经出现了漏洞的话,就可以抓住这个机会从系统登录记录或者其他地方查找蛛丝马迹。系统会记录下每一次成功的登录操作和不成功的登录尝试操作。特别是那个“列出不成功的尝试登录记录清单”,它能够让你很快地查找出是否有人在千方百计地获取根用户权限或者猜试某个用户的口令字。
如果你使用的是shadow隐藏口令字软件,请检查/etc/passwd文件,看看其中是否禁用了 shadow隐藏口令字功能——如果是这样,口令字将会被保存在/etc/passwd文件里。Linux系统中的/etc/passwd文件是整个系统中最重要的文件,它包含了每个用户的信息(加密后的口令也可能存与/etc/shadow文件中)。它每一行分为7个部分,依次为用户登录名,加密过的口令,用户号,用户组号,用户全名,用户主目录和用户所用的Shell程序,其中用户号(UID)和用户组号(GID)用于Unix系统唯一地标识用户和同组用户及用户的访问权限。这个文件是用DES不可逆算法加密的,只能用John之类的软件穷举,因此,此文件成为入侵者的首要目标。通常黑客用FTP匿名登录后将passwd Get回去,就用John开始跑了。所以一定要把此文件设为不可读不可写。另注意,opasswd或passwd.old是passwd的备份,它们可能存在,如果存在,一定也要设为不可读不可写修改。进行以上设置必须root用户的权限,所以如果情况真的如上面所说的这样,你就应该知道在这台机器上黑客已经获得了root的操作权限。
检查是否有不熟悉的用户帐户拥有特殊的优先权:一个拥有高级工具和丰富经验的黑客能够替换某些重要的系统功能。用一台独立的计算机或者一台你相信没有遭到攻击的机器把诸如ls之类的命令备份到一张软盘上去,当然最好是将安装光盘再刻录一张,然后检查程序ls、find、ps和所有网络守护进程的系统版本中的日期与它们生成时的日期数据是否一致。
最后你应该经常到下面的地方去查看是否有提高安全性方面的建议和那些修补最新发现的系统漏洞的网站:如Root Shell (http://www.rootshell.com)、Computer Emergency Response Team(计算机紧急情况快速反应组——http://www.cert.com)和你机器上安装的Linux版本的软件服务商网页,并最好订阅一些最新系统漏洞的电子杂志。
更多精彩
赞助商链接