首页 > IT培训-网络工程师、平面、三维设计 > RedHat Linux Server 基础安全设置

RedHat Linux Server 基础安全设置

2009年4月30日 发表评论 阅读评论

Linux是一个十分稳定的操作系统,目前用户已逾千万。但是,Linux是否安全呢?这对Linux的新用户来说是十分关心的问题。Linux下安全是大多数同学不太重视,如果从事企业内部服务器的管理基础安全是最重要的。Linux系统因其开源的特点,使其具有服务器应用的天然特性,但是也正是因为这些特性,在管理不当的情况下,也会造成很严重的安全性问题,下面就系统管理方面的安全基础问题给大家共同学习下:
1. 引导程序安全要小心
    Linux系统的root密码是很容易破解的,当然前提是你没有设置引导程序密码,如GRUB或LILO,为了防止通过引导程序破译root密码,强烈建议设置GRUB或LILO的引导密码,可以编辑其配置文件/etc/grub.conf或/etc/lilo.conf,设置password参数。操作过程如下:

设置:

boot=/dev/hdd                                                  设置GRUB的安装位置
default=0                                                          设置默认菜单
timeout=30                                                       设置超时时间
splashimage=(hd0,0)/grub/1.jpg                      设定开机画面
password=abc                                                  设置GRUB的口令(此处设置)
title  3++ Network RedHat Linux Server           设置标题
root   (hd1,1)                                                    设置内核存放的分区
kernel  /Vmlinuz-2.4.20-8  ro  root=/LABEL=/   设置内核文件
initd   /initrd-2.4.20-8.img                                 设置内核映像文件
lock                                                                   锁定操作系统

Linux 密码破解如下:
1. 开机在Grub 界面下,输入e ,选中   kernel  /Vmlinuz-2.4.20-8 To  root=/LABEL=/  single(此处有用空格)
2. 再输入 e, 在行尾添加 single ,  再输入 B , 单用户引导Linux , 显示sh -2.05 #   输入passwd  root 改密码,再reboot

2. 取消不安全权限设置
大家常见的linux下文件权限是r w x,其实还有一种权限叫s,如果给某个文件赋予的s权限,那么这个文件在执行的时候就会拥有相应宿主用户或宿主组用户的权限,例如:
#chmod u+s testfile
#ls -la testfile
rwsr—– root root 10 testfile
这样,当这个文件被其它用户执行的时候,此用户就具有了此文件宿主用户root的对testfile的执行权限。类似,当文件的宿主组具有s权限后,执行此文件的用户就具有了此文件宿主组用户对此文件的权限,这是相当危险的。
大家可以试想下,如果命令chmod的文件被赋予了s权限,那么其它用户还有什么事情是不能做的呢?那它就可以更改任何文件的权限了,当然,s权限需要和x权限结合使用,没有x权限的s权限是没有任何意义的。
3. 让用户及时自动注销
当某个用户使用服务器后忘记注销,也是很危险的事情,此时,管理员可以设置/etc/profile文件的timeout参数,当用户一段时间不做任何操作时,系统自动注销此用户。
4. 设置口令复杂度
一个强壮的有效的口令应当至少有8个字符长,不要取用个人信息(如生日,名字,用户名,计算机的型号等也尽量不要在密码中连接电话号码和2002、2000、888等数字),普通的英语单词也不好(因为可用字典攻击法),口令中最好有一些非字母(如数字,标点符号,控制字符等),注意尽量不要写在纸上或计算机中的文件中,选择口令的一个好方法是将不相关的字母和数字或控制字符相连,并组成不少于8位的长度。为了强迫用户指定足够强壮的密码,需修改文件/etc/login.defs中参数PASS_MIN_LEN(口令最小长度)。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS(口令使用时间)。也可以使用chage命令来改变,同时设置系统用户口令复杂度,例如口令最长,最短,过期时间等。(vi /etc/login.defs如图)

5. 用PS查看计算机的进程
    黑客常用的一个 诡计就是把ps命令替换掉,而这个替换上的ps将不会显示那些正在你的机器上运行的非法程序。为了测试个,应该检查你的ps文件的大小,它通常位于 /bin/ps。在我们的Linux机器里它大概有60kB。我最近遇到一个被root kit替换的ps程序,这个东西只有大约12kB的大小。另一个明显的骗局是把root的命令历史记录文件链接到/dev/null。这个命令历史记录文件是用来跟踪和记录一个用户在登录上一台Linux机器后所用过的命令的。黑客们把你的历史纪录文件重定向到/dev/null的目的在于使你不能看到他们曾经输入过的命令。 你可以通过在shell提示符下敲入history来访问你的历史记录文件。假如你发现自己 正在使用history命令,而它并没有出现在之前使用过的命令列表里,你要看一看你的~/.bash_history 文件。假如这个文件是空的,就执行一个

ls -l ~/.bash_history

命令。在你执行了上述的命令后你将看到类似以下的输出:

-rw——- 1 jd jd 13829 Oct 10 17:06 /home/jd/.bash_history

又或者,你可能会看到类似以下的输出:

lrwxrwxrwx 1 jd jd 9 Oct 10 19:40 /home/jd/.bash_history -> /dev/null

    假如你看到的是第二种,就表明这个 .bash_history 文件已经被重定向到/dev/null。这是一个致命的信息,现在就立即把你的机器从Internet上断掉,尽可能备份你的数据,并且开始重新安装系统。

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.