我爱电脑技术论坛's Archiver

bbs23 发表于 2008-5-12 07:28

系统优化和安全配置两方面讲Linux系统安全

作为一个系统管理员,下面我们聊一下基于服务器应用的linux,由于个人电脑上使用linux也许不是像服务器上一样,优先追求安全和稳定,因此个人电脑使用的朋友只做个参考吧。 t ?T7zS

Ro2F`^K 系统优化
-BU6ld8H7x'](C l NL8` xra:e#A
说起优化,其实最好的优化就是提升硬件的配置,例如提高cpu的运算能力,提高内存的容量,个人认为如果你考虑升级硬件的话,建议优先提高内存的容量,因为一般服务器应用,对内存的消耗使用要求是最高的。当然这都是题外话了。 || kPs
mkm7G$Y5CA+j
这里我们首要讨论的,是在同等硬件配置下(同一台服务器,不提升硬件的情况下)对你的系统进行优化。
6{_ _8h1m@.Vn@D 9NrE&E#G9Y(Ze+a
作为系统管理员,我认为,首先我们要明确一个观点:在服务器上作任何操作,升级和修改任何配置文件或软件,都必须首要考虑安全性,不是越新的东西就越好,这也是为什么linux管理感觉上和windows有所不同的地方,windows首先推荐大家去使用它的最新版本软件和操作系统,其实我个人认为这是一种商业行为,作为从系统管理上来讲,这是很不好的,使用新的软件和系统可能带来新的问题,有些甚至是致命的。 8G K3p/V0d
iZC b#FvJgc
因此,作为管理,我们还是应该考虑稳定的长期使用的软件版本来作为我们的版本,具体的好处我就不多说了。相信作为管理员的你应该知道的。 "|1eF]`

!G2m Rx)QI(V 其实个人使用的linux最直接的一个优化就是升级内核,自己编译的内核是根据自己的系统编译而来,将得到最大的性能和最小的内核。 z/sJ3@:f8e wS.[0eJ
5vN1rCs+v T
但是,服务器就不太一样了,当然我们也希望每一台服务器都是自己手工编译的内核,高效而精巧。但是实际和愿望是有差距的,试想一下,如果你管理100来台linux主机,而每一台也许配置都不一样,那编译内核的一个过程将是一个浩大工程,而且从实际考虑,工作量大得难以想象。我想你也不会愿意做这种事情吧。因此,个人建议,采用官方发布的内核升级包是很好的选择。 7\x,~NsI1X
e/Vy:_+c+A C$k
首先,我们对新安装的系统,将做一系列升级,包括软件和内核,这是很重要的步骤。
m'Cn.y irA"l-_'H"su Pga W At!M-el.Vo
在升级好所有软件后,基本的防火墙和配置都做好以后,我们开始优化一些细节配置,如果你是老系统,那么在作本问题及的一些操作和优化你系统之前,务必被备份所有数据到其他介质。 g4Kj S,h

UgX f/K T,V+x 1、虚拟内存优化 R/v;cJm8aO

b u ]1o%X4I 首先查看虚拟内存的使用情况,使用命令 s(T(wAvil7U
Q,~g"\gJyB\_N!a
# free
`6l!S8^.?7]M+J-Q *e_/MOnS
查看当前系统的内存使用情况。 I]&~ Kp3t

$LWp&Y}e N s"h 一般来说,linux的物理内存几乎是完全used。这个和windows非常大的区别,它的内存管理机制将系统内存充分利用,并非windows无论多大的内存都要去使用一些虚拟内存一样。这点需要注意。 Kq8I3V FB(aO\;c s0kQ
&m q|'E5t
Linux下面虚拟内存的默认配置通过命令
l]&m `8lT)|4[+Y #vAg;h7s*j
# cat /proc/sys/vm/freepages
Q,g8D#Zby}zR_&S
:o%e|$XDO 可以查看,显示的三个数字是当前系统的:最小内存空白页、最低内存空白页和最高内存空白。 p,og7IP
M9H%qQ(A0n
注意,这里系统使用虚拟内存的原则是:如果空白页数目低于最高空白页设置,则使用磁盘交换空间。当达到最低空白页设置时,使用内存交换(注:这个是我查看一些资料得来的,具体应用时还需要自己观察一下,不过这个不影响我们配置新的虚拟内存参数)。
h0wke"o)~"D} P-p:jxix'w
内存一般以每页4k字节分配。最小内存空白页设置是系统中内存数量的2倍;最低内存空白页设置是内存数量的4倍;最高内存空白页设置是系统内存的6倍。这些值在系统启动时决定。 8m s'@pfL#vU2o5Q4k,d-I0I
h4oR ?bS#JG`[T5h
一般来讲在配置系统分配的虚拟内存配置上,我个人认为增大最高内存空白页是一种比较好的配置方式,以1G的内存配置为例: 9u\f \r1n%e S

^,Kv3J7B.k X"J*_ Q"i WS 可将原来的配置比例修改为:
4`"w\ y;?e'l
kCz@Rt(l1L[1SP 2048 4096 6444
J)Z C%AB7Dj#o 2BWz#wD]Rf
通过命令
,D;P1p/J YQ4Z?5~
q(]9h-e1a/K"fX # echo "2048 4096 6444" > /proc/sys/vm/freepages lqX^hCj@0E0z|
!n(r {e#v/Y(l k
因为增加了最高空白页配置,那么可以使内存更有效的利用。 | u!P_g7m:i
6Bj yp-O{2E
2、硬盘优化 i#U5Gi5akq-A D6[

5Ylwb3E 如果你是scsi硬盘或者是ide阵列,可以跳过这一节,这节介绍的参数调整只针对使用ide硬盘的服务器。 E2w1u$Iem1s9q[

8r{-U&Li&} 我们通过hdparm程序来设置IDE硬盘, +P x8Mt*K*LVrn!c

8z-R"Uya 使用DMA和32位传输可以大幅提升系统性能。使用命令如下: S5A'x:\4O&kLsH
K.M!` t@]KM*E
# /sbin/hdparm -c 1 /dev/hda V;_#@VM

"A4?/} Y\xp? 此命令将第一个IDE硬盘的PCI总线指定为32位,使用 -c 0参数来禁用32位传输。
_ W:I+s_)w s7]!w S-W 3kz FS+L$Q_ yc
在硬盘上使用DMA,使用命令:
jm:k0v4n | W2X*C3o*b U/k
# /sbin/hdparm -d 1 /dev/hda
u#FT]k'__
QE @;\S8m 关闭DMA可以使用 -d 0的参数。 )C)o4[7[Vd\(S)K

y,]z,M(E N _-V(A 更改完成后,可以使用hdparm来检查修改后的结果,使用命令: |f4Al/k[
NlNo'jbF w
# /sbin/hdparm -t /dev/had
;i*j.\8WN$a y
O@-g gA1w 为了确保设置的结果不变,使用命令:# /sbin/hdparm -k 1 /dev/hda
0@*b6tvpS
om4~;Pn\A6N*R"[4y Hdparm命令的一些常用的其他参数功能
+W7iO0w.`~2f
4e#[/O,{%_ \EG 7]&yA"G0Y5]
-g 显示硬盘的磁轨,磁头,磁区等参数。 fy%S2D9Qg
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。 y j*c(v2T,n Y
-I 直接读取硬盘所提供的硬件规格信息。
4J6^dS8^4U3Und -p 设定硬盘的PIO模式。
(u%yL;f\+\#kR -Tt 评估硬盘的读取效率和硬盘快取的读取效率。
+Q,rJ+N2x1BD -u <0或1> 在硬盘存取时,允许其他中断要求同时执行。
Wg C0u"YIt{2tK -v 显示硬盘的相关设定。 EvxL:zDwF
GF:_"hSSda
/aH @Z6I5T,z
Gm8^QQ-_%u

-\h2cQk 3、其他优化
_E_0A-D6v*d&w'v&K
v,K7J| BIZ(P9|X 关闭不需要的服务,关于系统自动启动的服务,网上有很多资料,在此我就不赘述了;

bbs23 发表于 2008-5-12 07:28

安全配置 v/Dz3e.d8M#v`

{-jmn/b},R7Q\/A 作为一个系统管理员来说,定期对系统作一次全面的安全检查很重要的,最近遇到一些朋友来信说出现了一些莫名其妙的问题,例如最大的一个问题就是明显感觉网络服务缓慢,这极有可能是被攻击的现象。 .Gd)Y)Dmx'W8@5M c
xWy^&qd \%T6V
实践证明,无论是那种系统,默认安装都是不安全的,实际不管你用windows也好,linux,bsd或其他什么系统,默认安装的都有很多漏洞,那怎么才能成为安全的系统呢,这正是我们系统管理人员需要做的事情。配置配置再配置。 _}Re^:S
Tg(D6N"?y
任何系统,只要细心的配置,堵住已知的漏洞,可以说这个系统是安全的,其实并非很多朋友说的那样,安装了系统,配置了防火墙,安装了杀毒软件,那么就安全了,其实如果对系统不作任何安全设置,那就等于向黑客敞开一扇纸做的大门,数十分钟就能完全控制!
+Am i~v i+W5h
WV#J3x?rS.n:u(t 这并非骇人听闻。 3UD!W/| ^ GxA8E

6`1W6A$FFD5e b 作为linux系统,同样存在很多漏洞,黑可能利用这些漏洞控制你的整个系统,要防止这些问题,我们需要做以下步骤: &WFA PB` x^9_1D
lg5ao*w
1、 升级系统中所有软件包的最新版本;
9f ?6A9GV5N
T6J o4FLkF 2、 设置较为强壮的防火墙; hRA G9t%OoRf

R-B LO/J#|P 3、 定期检查关键记录文件,配置杀毒软件 'o3E2v*psk/I `a
0UJ2q oNk;e0i1d?r~
4、 多关心一下发布安全信息警告的网站,掌握一些最新的病毒和黑客程序的特点,这些都利于系统的正常运作。 ZL:p6j@ P-Sc9D@ \
z\\0^a/y|G~
这篇文章主要以优化为主,为了配合这一主题,安全部分我们只讨论一下日常的一些维护工作。
7o Ot E;E t6yFp
O,Nuf d 除了上面列出的4条是管理员必修之课外,对一些linux系统细节的维护也很重要。
TEz c6?xt7se/T
nr9E7d4yK"a 包括:
b4UR_ t6A (y isYF.e
1、 配置日志轮训工具,定期下载备份日志,是个非常好的习惯,这样不但能减少日志的消耗的磁盘空间,提高系统效率,更能及时发现问题,linux下有些很好的系统日志分析器,能直接提取日志中的特殊项目,省去了阅读日志的烦恼; RTJqt2f

(i%wR;P Cs:L8X 2、 使用命令lsof –i ,netstat –a ,ps –e等命令,定期检查系统服务端口监听等情况,也可制作一个定期执行的脚本,将这些命令定期执行后发到邮箱中;
;d:T+o%orW
A"K1Y)R(P`d 3、 定期检查root用户的history列表,last列表,vipw用户列表是否正常;
4q ]:\9u|HKb %\n)?u n\j;Kt6R
4、 定期备份文件,用tar命令就能很好的备份了,当然需要下载这些备份并转移介质;
b/O$?+PY!hz*I0s
g dYKQf8w V+\4Y 如一点发现有任何特别的没见过的情况或端口,那么要引起足够的重视,切勿因小失大。 &S!La&rMS(b
RG&u/K1vK`(Y4A/}
以上是我对linux系统安全和优化的一些浅显认识,希望大家都能安全高效的使用linux为你的工作生活带来方便。

页: [1]

Powered by 我爱电脑技术论坛 Archiver 6.1.0  © 2001-2007 本SEO插件由网络人站长论坛出品