下沙论坛

 找回密码
 注册论坛(EC通行证)

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 2068|回复: 0
打印 上一主题 下一主题

Linux安全防护十招

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2005-4-22 14:47:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
! u  F9 l4 O  n
系统安全性对于用户来说至关重要,Linux用户也不例外。笔者就自己使用Linux的经历,总结了一些增强Linux安全防护的小窍门,在此介绍给大家。 / V% s# f! f1 c3 V/ i3 C
1.为LILO增加开机口令 9 }! V) r1 p& y1 e
在/etc/lilo.conf文件中增加选项,从而使LILO启动时要求输入口令,以加强系统的安全性。具体设置如下: ) p1 L* Q9 M. s& c7 ]/ g# y; }
boot=/dev/hda # G# V, }% c4 f' _: Q
map=/boot/map
# T0 I2 N6 y; n+ M7 minstall=/boot/boot.b 8 Q% T' R7 |7 O+ I5 @. I  y
time-out=60 #等待1分钟 ! u* c* t& s5 X) R6 |- V
prompt 1 B9 C% o7 \7 c7 g; B1 ?
default=linux * |* m( a# H# u
password=
- H2 \8 F, S1 E: g- b$ P0 f2 E#口令设置 + n& Z& }5 \2 v2 g; B
image=/boot/vmlinuz-2.2.14-12
* z1 N  Z5 [# A4 C9 g5 M2 ~0 V$ alabel=linux : H2 W/ L- B3 U6 w7 {! N
initrd=/boot/initrd-2.2.14-12.img $ }/ }  T1 U0 q( K, Q
root=/dev/hda6 + n/ W$ f0 ?! L' z  C7 n' ]" Z
read-only 3 F" B5 v0 d; {7 i  C% \7 [$ M
此时需注意,由于在LILO中口令是以明码方式存放的,所以还需要将
1 l7 y  @, F0 |; Blilo.conf的文件属性设置为只有root可以读写。
3 `3 K8 H0 [9 @2 b/ f# chmod 600 /etc/lilo.conf
* A& K) R0 O0 t* `当然,还需要进行如下设置,使
0 O* j; C0 f( G8 Zlilo.conf的修改生效。
" K# ~+ |- J* U, q# /sbin/lilo -v
+ ?: `- F" _# a2 c2.设置口令最小长度和
. f" L( [& N4 U/ ]% A0 h7 u, l最短使用时间
" }2 y$ h. j) P) t口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测攻击,可增加口令的最小长度,至少等于8。为此,需修改文件/etc/login.defs中参数PASS_MIN_LEN。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS。 ; n9 A7 y1 V- ^( i: Z
3.用户超时注销
1 \$ b3 z( L, p9 b如果用户离开时忘记注销账户,则可能给系统安全带来隐患。可修改/etc/profile文件,保证账户在一段时间没有操作后,自动从系统注销。
6 a4 C/ ~! y# }" _5 H: O* M/ ]编辑文件/etc/profile,在“HISTFILESIZE=”行的下一行增加如下一行: $ y  ~, N  f4 P- W& L% U
TMOUT=600
  [! g- z! K) P: w1 g则所有用户将在10分钟无操作后自动注销。 # _6 e1 Y! \* n1 J% d9 C$ m7 G9 S
4.禁止访问重要文件 & U8 b+ ~3 o/ b! ~) O7 l& T
对于系统中的某些关键性文件如inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被普通用户查看。
% V$ X5 d6 W) \' u% N首先改变文件属性为600: 4 J# r. p$ D/ W5 Y2 a6 o
# chmod 600 /etc/inetd.conf
8 r7 N6 ^) E7 p保证文件的属主为root,然后还可以将其设置为不能改变: 1 f! P. X) _, m1 v. ]; ]
# chattr +i /etc/inetd.conf
! y* B* F7 m3 v5 B这样,对该文件的任何改变都将被禁止。
# O8 N- F7 S) w( i3 g8 L- |5 P只有root重新设置复位标志后才能进行修改: ; m) k* n& q: p! a
# chattr -i /etc/inetd.conf # \( S! }) D9 K* V% m
5.允许和禁止远程访问
" s  l0 G& s5 j4 d) s: ~, A在Linux中可通过/etc/hosts.allow 和/etc/hosts.deny 这2个文件允许和禁止远程主机对本地服务的访问。通常的做法是:
- P1 f7 I* _! _0 O' w/ j(1)编辑hosts.deny文件,加入下列行:
' E/ o" v1 d0 k* e+ u# Deny access to everyone. 4 N9 d8 B8 b; y) @3 k
ALL: ALL@ALL 5 a0 h" k" t" _
则所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。 9 c6 {7 `/ N( n3 J2 O
(2)编辑hosts.allow 文件,可加入下列行:
3 R6 e3 U' ?0 \#Just an example:
" }0 ~/ `) l2 t, y2 F) b/ a% P5 i  o+ Vftp: 202.84.17.11 xinhuanet.com
/ S1 d$ r+ K( u& R0 P+ o则将允许IP地址为202.84.17.11和主机名为xinhuanet.com的机器作为Client访问FTP服务。
) E+ N' L6 V- I' N(3)设置完成后,可用tcpdchk检查设置是否正确。 : l9 j7 m2 h! e/ ~3 }! E
6.限制Shell命令记录大小 2 ^) B  k7 @# l2 \
默认情况下,bash shell会在文件$HOME/.bash_history中存放多达500条命令记录(根据具体的系统不同,默认记录条数不同)。系统中每个用户的主目录下都有一个这样的文件。在此笔者强烈建议限制该文件的大小。
% M. w0 O3 i+ k您可以编辑/etc/profile文件,修改其中的选项如下: HISTFILESIZE=30或HISTSIZE=30
0 |# T. D2 e& a) C, m$ q2 L/ ]  G4 G7.注销时删除命令记录 ! N" i/ X% S( ^
编辑/etc/skel/.bash_logout文件,增加如下行:
' t( L5 J5 `2 m: u/ a2 Erm -f $HOME/.bash_history
, J& J5 _% O4 ]这样,系统中的所有用户在注销时都会删除其命令记录。
9 g# X3 i9 [  q如果只需要针对某个特定用户,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history文件,增加相同的一行即可。
- H9 l2 e, f2 Y3 Q2 b3 |' B8.禁止不必要的SUID程序 1 B8 q* l& Z2 \3 F' t. ?) x% H9 {: s
SUID可以使普通用户以root权限执行某个程序,因此应严格控制系统中的此类程序。
( g: `7 j( I& }- R7 P/ C找出root所属的带s位的程序:
: M& _3 g4 M+ ~* ]2 ~6 s2 a8 J# find / -type f \( -perm -04000 -o -perm -02000 \) -print |less 1 R/ z+ h, u9 V
禁止其中不必要的程序: ; @4 n. u: U2 i+ A9 {
# chmod a-s program_name
: t7 @  v, `( E* F$ i3 _; G/ @9.检查开机时显示的信息
7 M; ?4 e- r" e/ JLinux系统启动时,屏幕上会滚过一大串开机信息。如果开机时发现有问题,需要在系统启动后进行检查,可输入下列命令:
( D" T. G& Q6 F+ v+ v( e/ c3 J. T; ^: M#dmesg >bootmessage
& x/ I# K* u/ }6 Z3 n该命令将把开机时显示的信息重定向输出到一个文件bootmessage中。
# c- t! r2 o$ a* K$ f! b. W7 }10.磁盘空间的维护 + b; C! P/ m' x2 ]
经常检查磁盘空间对维护Linux的文件系统非常必要。而Linux中对磁盘空间维护使用最多的命令就是df和du了。 0 C3 l: D* Y3 C  ~5 V- R0 i
df命令主要检查文件系统的使用情况,通常的用法是: 4 y: v" U: J7 Z# ?) n$ z
#df -k
: ?2 v/ V, W; L* \Filesystem 1k-blocks Used Available Use% Mounted on
$ K& B( t$ Z3 {2 @& I8 A/dev/hda3 1967156 1797786 67688 96% /
" u3 s8 d# J9 l6 wdu命令检查文件、目录和子目录占用磁盘空间的情况,通常带-s选项使用,只显示需检查目录占用磁盘空间的总计,而不会显示下面的子目录占用磁盘的情况。 $ D+ }' k& f0 h- b2 `3 |9 [/ a
% du -s /usr/X11R6/*
1 l- a8 {  Q: [; L. i) |34490 /usr/X11R6/bin
7 J1 W, v+ D; V4 |# I+ i6 R1 /usr/X11R6/doc " y, N) H5 G6 X) M* b9 s
3354 /usr/X11R6/include
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩

本版积分规则

关闭

下沙大学生网推荐上一条 /1 下一条

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