引:对于很多习惯了UNIX和Windows的系统管理员来讲,如何保证Linux操作系统的安全可靠将面临许多新的挑战。
Linux作为是一个开放源代码的免费操作系统,以其高效隐定的优秀品质,越来越受到用户们的欢迎,并在全世界不断普及开来。相信在不久的将来Linux还会得到更大更快的发展。虽然,Linux和Unix很相似,但是它们之间还是有不少重要的差别。
对于很多习惯了UNIX和Windows的系统管理员来讲,如何保证Linux操作系统的安全可靠将面临许多新的挑战。本文在此将给大家介绍一些Linux管理安全的基本技巧,希望能对大家有所帮助。
首先我想从系统的安全配置,开始我们的话题。因为我个人认为一位管理员要能充分利用系统提供的安全机制、挖掘系统自身的潜力来对服务器进行高效安全的维护,才能称得上优秀。我并不是完全反对使用防火墙等工具,但是正如人一样,我们可以消毒、可以带口罩,却没有我们自身体魄强健、有抗体来得好。
Linux是完全开放源代码的免费操作系统,其可开发的潜力极大,有能力的管理员甚至可以通过自行改编内核来满足自己服务器优良工作的需要。当然,在此我们只讲一些基本,但实用的配置技巧。
一、ILO的安全设置
LILO是Linux Loader的缩写,它是LINUX的启动模块
我们可通过修改“/etc/lilo.conf”文件中的内容来对它进行配置。在文件中加上,如下两个参数:restricted,password。这两个参数可以使你的系统在启动lilo时就要求密码验证。
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=00 #把这行该为00,这样系统启动时将不在等待,而直接启动LINUX
message=/boot/message
linear
default=linux
restricted #加入这行
password= #加入这行并设置自己的密码
image=/boot/vmlinuz-2.4.2-2
label=linux
root=/dev/hda6
read-only
因为"/etc/lilo.conf"文件中包含明文密码,所以要把它设置为root权限读取。
# chmod 0600 /etc/lilo.conf
还要使用“chattr”命令使"/etc/lilo.conf"文件变为不可改变。
# chattr +i /etc/lilo.conf
这样可以对“/etc/lilo.conf”文件起到很好的保护作用。(对其它文件的保护也可以采用此方法)
最后要使lilo.conf文件生效要用
# /sbin/lilo -v
更新一下系统。
二、口令安全
口令可以说是系统的第一道防线,目前网络上大部分的系统入侵都是从猜测口令或者截获口令开始的,所以口令安全至关重要。首先要杜绝不设口令的帐号存在。这可以通过查看/etc/passwd文件来发现。例如,存在用户名为test的帐号,没有设置口令,则在/etc/passwd文件中就有如下一行:
test::100:9::/home/test:/bin/bash
其第二项为空,说明test这个帐号没有设置口令,这是非常危险的!应将该类帐号删除或者设置口令。
其次,在旧版本的linux中,在/etc/passwd文件中是包含有加密的密码的,这就给系统的安全性带来了很大的隐患,最简单的方法就是可以用暴力破解的方法来获得口令(如,用John等工具)。
可以使用命令/usr/sbin/pwconv或者/usr/sbin/grpconv来建立/etc/shadow或者/etc/gshadow文件,这样在/etc/passwd文件中不再包含加密的密码,而是放在/etc/shadow文件中,该文件只有超级用户root可读!
第三点是修改一些系统帐号的Shell变量,例如uucp,ftp和news等,还有一些仅仅需要FTP功能的帐号,一定不要给他们设置/bin/bash或者/bin/sh等Shell变量。可以在/etc/passwd中将它们的Shell变量置空,例如设为/bin/false或者/dev/null等,也可以使用usermod!-s /dev/nullusername命令来更改username的Shell为/dev/null。这样使用这些帐号将无法Telnet远程登录到系统中来!
第四点是修改缺省的密码长度:在你安装linux时默认的密码长度是5个字节。但这并不够,要把它设为8。修改最短密码长度需要编辑login.defs文件(vi/etc/login.defs),把下面这行
PASS_MIN_LEN 5
改为
PASS_MIN_LEN 8
login.defs文件是login程序的配置文件。
最后别忙了为root加上一个强壮的密码,8位以上,最好包含特殊字符。