下沙论坛

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

QQ登录

QQ登录

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

Linux安全防护十招

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2005-4-22 14:47:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

% [! |% G1 C( @, v系统安全性对于用户来说至关重要,Linux用户也不例外。笔者就自己使用Linux的经历,总结了一些增强Linux安全防护的小窍门,在此介绍给大家。 & |# @* ~1 l8 H" D7 f$ {  T- _
1.为LILO增加开机口令
9 [: O% j( P+ C4 I5 `在/etc/lilo.conf文件中增加选项,从而使LILO启动时要求输入口令,以加强系统的安全性。具体设置如下:
8 w. }3 x+ b* |# @" k# A* Y9 d, ~boot=/dev/hda ! j* `  K' _9 q6 W4 R% P
map=/boot/map
# H2 A2 c; h" i! |2 N7 Uinstall=/boot/boot.b
9 F2 m& F- r& S; n+ |9 atime-out=60 #等待1分钟
/ ?. \& M. F5 a6 pprompt
' N. I7 F* U' T/ _' J- vdefault=linux
  h8 Q. w" l+ a7 j4 Kpassword= ( P9 p1 o8 D9 f  O8 z: U7 \
#口令设置 4 F9 ^  ]- ^2 M
image=/boot/vmlinuz-2.2.14-12
; r" e) T7 C# D9 R" ]0 alabel=linux
. u' s' q* A3 m7 ~8 j) Ainitrd=/boot/initrd-2.2.14-12.img 5 v& d: m& {$ e3 z" C$ }
root=/dev/hda6 2 t% W- }! c( p7 B! P# F4 ^
read-only
+ k8 O6 a; ?+ t  D1 w1 A此时需注意,由于在LILO中口令是以明码方式存放的,所以还需要将 6 E5 K2 `" w' {. ?, }# i) A$ w
lilo.conf的文件属性设置为只有root可以读写。 2 \/ k' I1 m8 `
# chmod 600 /etc/lilo.conf
, P/ H$ J3 S' X$ H, z当然,还需要进行如下设置,使
8 _! m$ @. s0 slilo.conf的修改生效。
8 ^. w$ B, R1 ~$ ~# /sbin/lilo -v ) ^: Z7 G' `+ w, y+ [( T
2.设置口令最小长度和
9 _9 d, G6 B( n最短使用时间 0 Q0 e- X# v$ T" \  }4 l
口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测攻击,可增加口令的最小长度,至少等于8。为此,需修改文件/etc/login.defs中参数PASS_MIN_LEN。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS。
& s, h7 [/ Y3 P- o3.用户超时注销
' I8 J7 z: q/ V  I9 g" L: K; W如果用户离开时忘记注销账户,则可能给系统安全带来隐患。可修改/etc/profile文件,保证账户在一段时间没有操作后,自动从系统注销。 6 t* @5 h; O6 r( {# h( j( b. \
编辑文件/etc/profile,在“HISTFILESIZE=”行的下一行增加如下一行: ' j6 _; D; ?3 }
TMOUT=600   d3 m$ r! v; ?& {4 U2 d
则所有用户将在10分钟无操作后自动注销。 - {5 r) f; X3 i, a) y
4.禁止访问重要文件
: S4 H+ @- Y2 e) M2 g; E3 t) j/ {对于系统中的某些关键性文件如inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被普通用户查看。
- O4 a7 a: |9 S# X& i首先改变文件属性为600: ) d0 [) Q; T7 i( W3 J6 N1 |
# chmod 600 /etc/inetd.conf 7 U; l( u# Q: `  y
保证文件的属主为root,然后还可以将其设置为不能改变: 8 s$ k5 {" U) X- ]5 r. q
# chattr +i /etc/inetd.conf 9 `& o) c; S8 ^6 `2 D# a
这样,对该文件的任何改变都将被禁止。
7 ^/ c0 {7 S/ U: @  A, b8 p只有root重新设置复位标志后才能进行修改: 0 @% J. R# ]: H3 P
# chattr -i /etc/inetd.conf
, ]1 @4 Y0 v6 `# I3 M+ a( A5.允许和禁止远程访问 0 |/ B( b( t" V' l- o
在Linux中可通过/etc/hosts.allow 和/etc/hosts.deny 这2个文件允许和禁止远程主机对本地服务的访问。通常的做法是:
3 U: B/ n8 O# L(1)编辑hosts.deny文件,加入下列行: 1 [6 F% |; R; Y: O0 i: z9 `( p2 L! z
# Deny access to everyone. % M, m8 V: ?* J+ _! g  K3 c' w
ALL: ALL@ALL
8 d& w1 H0 K2 A7 b则所有服务对所有外部主机禁止,除非由hosts.allow文件指明允许。 - a( e& I6 j+ m- }8 `1 F2 U9 W" @
(2)编辑hosts.allow 文件,可加入下列行: ; i/ w4 C# V( t) z8 s# C0 ?. K' r& O  K
#Just an example:   X+ U; t! I8 k; M: w" ?- s
ftp: 202.84.17.11 xinhuanet.com
% z; S! X0 z" m" b, }8 K# W. C则将允许IP地址为202.84.17.11和主机名为xinhuanet.com的机器作为Client访问FTP服务。
6 \# m# W8 P& i: `: k(3)设置完成后,可用tcpdchk检查设置是否正确。
, [8 J: w1 t1 l7 w6.限制Shell命令记录大小
& _7 I6 e8 H) r  ^: i+ w默认情况下,bash shell会在文件$HOME/.bash_history中存放多达500条命令记录(根据具体的系统不同,默认记录条数不同)。系统中每个用户的主目录下都有一个这样的文件。在此笔者强烈建议限制该文件的大小。 / c) m" d+ b3 l8 d, C( p6 Q/ p& l# i
您可以编辑/etc/profile文件,修改其中的选项如下: HISTFILESIZE=30或HISTSIZE=30
. p: M7 z$ q* E- ?& Z, v  J0 a7.注销时删除命令记录
+ ~9 a+ U! N2 R9 ?- H编辑/etc/skel/.bash_logout文件,增加如下行: 9 R+ E  A) f& A5 B3 r  d; v/ T
rm -f $HOME/.bash_history
0 k% D6 j0 e" c8 |1 ^" P, Z: i这样,系统中的所有用户在注销时都会删除其命令记录。 2 W4 H0 T8 n! H# ~" ]4 a) m
如果只需要针对某个特定用户,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history文件,增加相同的一行即可。 + P6 r; w! p" X! d4 x1 m
8.禁止不必要的SUID程序 , ^$ i6 L) r7 x+ U
SUID可以使普通用户以root权限执行某个程序,因此应严格控制系统中的此类程序。
- E5 U+ w# W3 R' v. K# Z' r找出root所属的带s位的程序: 9 G/ `" m0 @/ f9 _4 \
# find / -type f \( -perm -04000 -o -perm -02000 \) -print |less
4 D$ A+ W% z* h/ R禁止其中不必要的程序: * w5 n% c( `* R. s: q/ h7 _
# chmod a-s program_name
  j9 C+ m' w* J9.检查开机时显示的信息 & u5 ^7 s* n2 ]8 C9 R# Y4 c
Linux系统启动时,屏幕上会滚过一大串开机信息。如果开机时发现有问题,需要在系统启动后进行检查,可输入下列命令:
* [: I! j5 P4 k) {$ f* P  g1 b#dmesg >bootmessage * C$ I1 |: O8 d* P
该命令将把开机时显示的信息重定向输出到一个文件bootmessage中。
8 [# a7 O3 f+ d( }# R10.磁盘空间的维护
+ ^& p5 z8 U9 G4 q5 `& N/ R- ]4 U" z经常检查磁盘空间对维护Linux的文件系统非常必要。而Linux中对磁盘空间维护使用最多的命令就是df和du了。
9 n, N$ M! R" P2 D. P. u5 n- W, ddf命令主要检查文件系统的使用情况,通常的用法是: 3 n  k* _) E( O; Q
#df -k $ ?- {- y7 P' [* s) o. ~" Q
Filesystem 1k-blocks Used Available Use% Mounted on 5 L) i9 b+ Q, l: [- D
/dev/hda3 1967156 1797786 67688 96% / ! x! j5 g/ P8 V4 ^3 b. B1 u
du命令检查文件、目录和子目录占用磁盘空间的情况,通常带-s选项使用,只显示需检查目录占用磁盘空间的总计,而不会显示下面的子目录占用磁盘的情况。 . _, O8 K* B; b+ Z" L2 z" |
% du -s /usr/X11R6/* / s; r! k4 F+ @4 A  \0 ^6 @) V
34490 /usr/X11R6/bin
2 }! l9 o% ~3 k! Y8 r& F4 k5 s  I1 /usr/X11R6/doc
& m7 {8 _& @7 N2 k3354 /usr/X11R6/include
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩

本版积分规则

关闭

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

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