职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 1024|回复: 4

操作系统安全防护技巧介绍之Linux篇

[复制链接]
joe 发表于 2007-3-17 22:18 | 显示全部楼层 |阅读模式
系统安全性对于用户来说至关重要,Linux用户也不例外。笔者就自己使用Linux的经历,总结了一些增强Linux安全防护的小窍门,在此介绍给大家。
    1.为LILO增加开机口令

    在/etc/lilo.conf文件中增加选项,从而使LILO启动时要求输入口令,以加强系统的安全性。具体设置如下:


boot=/dev/hdamap=/boot/mapinstall=/boot/boot.btime-out=60 #等待1分钟promptdefault=linuxpassword=#口令设置image=/boot/vmlinuz-2.2.14-12label=linux initrd=/boot/initrd-2.2.14-12.img root=/dev/hda6                   read-only

    此时需注意,由于在LILO中口令是以明码方式存放的,所以还需要将 lilo.conf的文件属性设置为只有root可以读写。


# chmod 600 /etc/lilo.conf

    当然,还需要进行如下设置,使lilo.conf的修改生效。


# /sbin/lilo -v

    2.设置口令最小长度和

    最短使用时间

    口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测攻击,可增加口令的最小长度,至少等于8。为此,需修改文件/etc/login.defs中参数PASS_MIN_LEN。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS。

    3.用户超时注销

    如果用户离开时忘记注销账户,则可能给系统安全带来隐患。可修改/etc/profile文件,保证账户在一段时间没有操作后,自动从系统注销。

    编辑文件/etc/profile,在“HISTFILESIZE=”行的下一行增加如下一行:


TMOUT=600


    则所有用户将在10分钟无操作后自动注销。

    4.禁止访问重要文件

    对于系统中的某些关键性文件如inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被普通用户查看。

    首先改变文件属性为600:


# chmod 600 /etc/inetd.conf

    保证文件的属主为root,然后还可以将其设置为不能改变:


# chattr +i /etc/inetd.conf

    这样,对该文件的任何改变都将被禁止。

    只有root重新设置复位标志后才能进行修改:


# chattr -i /etc/inetd.conf

    5.允许和禁止远程访问

    在Linux中可通过/etc/hosts.allow 和/etc/hosts.deny 这2个文件允许和禁止远程主机对本地服务的访问。通常的做法是:

    (1)编辑hosts.deny文件,加入下列行:


# Deny access to everyone.                   ALL: ALL@ALL

    则所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。

    (2)编辑hosts.allow 文件,可加入下列行:


#Just an example:                   ftp: 202.84.17.11 xinhuanet.com

    则将允许IP地址为202.84.17.11和主机名为xinhuanet.com的机器作为Client访问FTP服务。

    (3)设置完成后,可用tcpdchk检查设置是否正确。

    6.限制Shell命令记录大小

    默认情况下,bash shell会在文件$HOME/.bash_history中存放多达500条命令记录(根据具体的系统不同,默认记录条数不同)。系统中每个用户的主目录下都有一个这样的文件。在此笔者强烈建议限制该文件的大小。

    您可以编辑/etc/profile文件,修改其中的选项如下:HISTFILESIZE=30或HISTSIZE=30。

    7.注销时删除命令记录

    编辑/etc/skel/.bash_logout文件,增加如下行:


rm -f $HOME/.bash_history

    这样,系统中的所有用户在注销时都会删除其命令记录。

    如果只需要针对某个特定用户,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history 文件,增加相同的一行即可。

    8.禁止不必要的SUID程序

    SUID可以使普通用户以root权限执行某个程序,因此应严格控制系统中的此类程序。

    找出root所属的带s位的程序:


# find / -type f \\( -perm -04000 -o -perm -02000 \\) -print |less

    禁止其中不必要的程序:


# chmod a-s program_name

    9.检查开机时显示的信息

    Linux系统启动时,屏幕上会滚过一大串开机信息。如果开机时发现有问题,需要在系统启动后进行检查,可输入下列命令:


#dmesg >bootmessage

    该命令将把开机时显示的信息重定向输出到一个文件bootmessage中。

    10.磁盘空间的维护

    经常检查磁盘空间对维护Linux的文件系统非常必要。而Linux中对磁盘空间维护使用最多的命令就是df和du了。

    Df命令主要检查文件系统的使用情况,通常的用法是:


#df -k Filesystem 1k-blocks Used Available Use% Mounted on                   /dev/hda3 1967156 1797786 67688 96% /

    Du命令检查文件、目录和子目录占用磁盘空间的情况,通常带-s选项使用,只显示需检查目录占用磁盘空间的总计,而不会显示下面的子目录占用磁盘的情况。


% du -s /usr/X11R6/* 34490 /usr/X11R6/bin 1 /usr/X11R6/doc                   3354 /usr/X11R6/include


    Linux作为自由、开放的象征,越来越受到广大用户的关注,但真正使用的个人用户较少,主要是因为它的系统特性,及周边的软件开发商较少,让它只在服务器系统领域有所普及。它的安全防护,笔者稍做介绍:

    1.禁止访问重要文件

    Linux不像Windows,它不但公布源代码,其核心程序还可以根据用户需要任意修改,而对于系统中的某些关键性文件如inetd.conf和lilo.conf等,同样可以被(远程登录用户)修改,为了保护系统安全,可以事先修改其属性,以防止非法的入侵和修改。

    首先进入Linux的命令界面,输入指令:


# chmod 600 /etc/inetd.conf



    改变文件属性为600。

    再输入指令:


# chattr +i /etc/inetd.conf


    保证文件的属主为root 。

    这样,对该文件的任何改变都将被禁止。只有再通过指令:


# chattr -i /etc/inetd.conf

    root重新设置复位标志后才能进行修改。

    2.禁止远程访问

    在Linux中可通过/etc/hosts.allow 和/etc/hosts.deny 这2个文件允许和禁止远程主机对本地服务的访问。方法是:进入Linux的命令界面,调出hosts.deny文件,加入以下指令:


# Deny access to everyone.       ALL: ALL@ALL

    所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。

    在hosts.allow 文件内,加入允许访问的主机方法如下:

    调出hosts.allow文件,加入以下指令:


#Just an example:       http: 192.168.1.8 yanghao.com

    意思是允许IP地址为192.168.18和主机名为yanghao.com的机器作为客户机访问http服务。

    系统的安全防护方式,笔者就介绍到这里,不可能面面俱到。使用Windows XP及其他的“NT核心”系统的用户应该更注意安全问题,在使用XP时,最好将自带的防火墙打开(Microsoft在新发售的Windows XP中也将防火墙设置为默认打开)。任何系统的用户都应具备一定的安全知识,如:不轻易泄漏自己的网络和系统信息;不执行来历不明的程序等。安全的系统环境要靠自己打造。
哦豁 发表于 2007-7-11 18:48 | 显示全部楼层
谢 谢
hxy 发表于 2007-7-13 00:09 | 显示全部楼层
好漂亮的说!~~
fish88 发表于 2007-7-14 13:08 | 显示全部楼层
谢谢楼主,好久没看到这么好的贴了
哦豁 发表于 2007-7-15 13:02 | 显示全部楼层
厉害!强~~~~没的说了!
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-5-18 11:44 , Processed in 0.127288 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表