Centos 5.X常见服务优化与说明总结

一 关闭selinux

selinux对很多服务的要求以及安全策略非常多非常多,新手很难驾驭,所以一般建议关闭, 但在加固一些网络服务时,还是需要开启的

#disable selinux
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

 

二. 更换yum的更新源

如果服务器不是位于教育网内,中科大的镜像源速度也很一般啊, 强烈建议整合sohu或者163的更新源:

cd /etc/yum.repos.d

mv CentOS-Base.repo  CentOS-Base.repo.save

wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo

mv CentOS-Base-sohu.repo CentOS-Base.repo

wget http://mirrors.163.com/.help/CentOS-Base-163.repo

wget http://mirrors.ustc.edu.cn/centos/CentOS-Base.5.mirrors.repo

yum makecache

 

三 定时校正服务器时间

作为生产机的服务器时间的准备性非常重要, 我们需要定时根据NTP服务器时间自动校准时间, 全世界各地有很多ntp服务, 我们一般会选择当地的服务器, 但是, 我们要慎重选择像中国国家授时中心的标准时间服务器(210.72.145.44), 可能是访问量过大, 造成负载过大而无法访问。
推荐使用以下NTP服务器:
1.asia.pool.ntp.org
0.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org

yum install ntp

crontab -e

增加一行,在每天的0点15分、6点15分、12点15分、18点15分与时间同步服务器进行同步:

15 0,6,12,18 * * * ntpdate 1.asia.pool.ntp.org

 

 

四. 设置终端模式(init 3)

1、vi /etc/inittab
2、找到id:5:initdefault: 这行
3、将5改为3即可,即id:3:initdefault:

 

五 停止网卡对ipv6的支持

在CentOS默认的状态下,ipv6是被启用的状态。因为我们不使用ipv6,所以停止ipv6,以最大限 度保证安全和快速。
#vi /etc/modprobe.conf ← 修改相应配置文件,添加如下行到文尾:

alias net-pf-10 off
alias ipv6 off

 

 

六 调整Linux的最大文件打开数

Linux最大文件打开数的默认值很低,必须修改的高一些
vim /etc/security/limit.conf
在最后一行添加

* soft nofile 60000
* hard nofile 65535

 

值得注意的是,通过命令ulimit -SHn是改变不了linux系统的最大文件打开数的,写进/etc/rc.d/rc.local也是不行的。

 

关闭不需要的服务

根据自己的需要和网络上的资料整理了80多个常见的centos5.6服务

服务名称优化建议服务类型功能简介
acpid开启系统acpid进阶电源管理的介面,这是一个新的电源管理模组,   可以监听来自核心层的电源相关事件而予以回应。   CentOS  的配置文件在   /etc/acpi/events/power.conf  中,预设仅有当你按下   power  按钮时,系统会自动关机!
anacron可关闭系统anacron与循环型的工作任务   cron  有关,可在任务过期后还可以唤醒来继续执行,   配置文件在   /etc/anacrontab 。
apmd可关闭系统apmd配置文件在   /etc/sysconfig/apmd  ,也是电源管理模组啦!   可侦测电池电量,当电池电力不足时,可以自动关机以保护电脑主机。
atd开启系统atd单一的例行性工作任务,抵挡机制的配置文件在   /etc/at.{allow,deny}  喔!
auditd开启系统auditd是SELinux中的一项,可以让系统需  SELinux审核的消息写入/var/log/audit/audit.log  中。若此服务没有启动,则消息会传给  syslog管理。
autofs可关闭系统autofs可用来自动挂载来自网路上的其他服务器所提供的网路磁碟机   ( 一般是 NFS) 。   不过我们是单机系统,所以目前还没必要这个服务。
avahi-daemon可关闭系统avahi-daemon也是一个用户端的服务,可以透过   Zeroconf  自动的分析与管理网路。   Zeroconf  较常用在笔记型电脑与行动装置上,所以我们可以先关闭他啦!
bluetooth可关闭系统bluetooth用在蓝芽装置的搜寻上,如果   Linux  是当作服务器使用时,   这个服务可以暂时关闭也没关系!
cpuspeed开启系统cpuspeed可以用来管理   CPU  的频率功能。若系统闲置时,此项功能可以自动的降低   CPU  频率来节省电量与降低   CPU  温度喔!
crond开启系统crond  (系统 ) 系统配置文件为   /etc/crontab 。
cups可关闭系统cups用来管理印表机的服务,可以提供网路连线的功能,有点类似列印服务器的功能哩!   你可以在   Linux  本机上面以浏览器的   http://localhost:631  来管理印表机喔!由于我们目前没有印表机,所以可以暂时关闭他。
firstboot可关闭系统firstboot还记得系统第一次进入图形介面还需要进行一些额外的设定吗?   就是这个服务的帮忙啦!既然已经安装妥当,现在你可以将这个服务关闭啰。
gpm开启系统gpm在   tty1~tty6  的环境下你竟然可以使用鼠标功能来复制贴上,就是这个   gpm  提供的能力啦!
haldaemon可关闭系统haldaemon通常用在桌上型电脑的环境中,可侦测类似   usb  的装置呢!   不过,如果是服务器环境,这个服务倒是可以关闭啦!如果是桌上型电脑,那最好可以启动啰!
hidd可关闭系统hidd也是蓝芽服务的功能啦!可以提供键盘、鼠标等蓝芽装置的侦测哩!   须搭配   bluetooth 。服务器环境倒是不需要此项服务。
hplip可关闭系统hplip主要是针对   HP  的印表机功能所开发的脚本服务,如果你的环境中并没有 HP 相关设备,这个服务就给他关闭吧!
ip6tables可关闭网络ip6tables是针对本机的防火墙功能!这个防火墙主要是针对   IPv6  的版本,如果你的网路环境并没有   IPv6  的设备,那么这个服务是可以关闭的。
iptables开启网络iptables本机防火墙功能,是核心支援的呢!所以功能与效能都非常棒!当然不能够取消啊!   只是设定上就得要努力研究啦!我们会在服务器篇介绍网路相关资讯的。
irqbalance 开启系统irqbalance如果你的系统是多核心的硬体,那么这个服务要启动,   因为它可以自动的分配系统中断   (IRQ)  之类的硬体资源。
isdn可关闭系统ISDN  是一种宽频设备   ( 数据机的一种 )  ,但是在台湾我们比较常使用 ADSL  及光纤设备,   所以这个服务是可以关闭啦。
kudzu可关闭系统kudzu如果你有增加新的硬体时,这个服务可以在开机时自动的侦测硬体,  并且会自动的呼叫相关的设定软件,方便你在开机时就处理好你的硬体啊!
lm_sensors可关闭系统lm_sensors这个服务可以帮你侦测主机板的相关侦测晶片,举例来说,   某些主机板会主动的侦测   CPU  温度、频率、电压等,这个   lm_sensors  能够将这些温度、频率等数据显示出来喔!
lvm2-monitor开启系统lvm2-monitor我们已经谈过   LVM  啰!所以我们当然要启动这个服务比较妥当。
mcstrans 开启系统mcstrans与   SELinux  有关的服务,最好也启动啊!
mdmonitor可关闭系统mdmonitor可以侦测所有软件的状态,暂时似乎也不需要启动这个服务哩!
messagebus可关闭系统messagebus可用来沟通各个软件之间的消息,有点类似剪贴簿的感觉。  不过在服务器环境则没有强烈需求就是了。
microcode_ctl可关闭系统Intel  的   CPU  会提供一个外挂的微指令集提供系统运作,   不过,如果你没有下载   Intel  相关的指令集档案,那么这个服务不需要启动的,也不会影响系统运作。
netfs可关闭网络netfs可以进行网路磁碟机   (NFS,  SMB/CIFS)  的挂载与卸载功能。   目前我们尚未使用网路,因此这个服务可以先关闭。
network开启网络network提供网路设定的功能,所以一定要启动的啦!
nfslock可关闭网络NFS  为一种   Unix  like  的网路磁碟机,但在进行档案的分享时,   为了担心同一档案多重编辑的问题,所以会有这个锁住   (lock)  的服务!可以避免同一个档案被两个不同的人编辑时所造成的档案错误问题。
pcscd可关闭系统pcscd智慧卡侦测的服务,可以关闭他啦。
portmap开启网络portmap用在远端程序呼叫的服务,很多服务都使用这个玩意儿来辅助连线的,   因此建议不要取消他,除非你确定你的系统没有使用到任何的   RPC  服务喔!
readahead_early可关闭系统(可关闭 )  ( 系统 ) 在系统开机的时候可以先将某些程式载入到记忆体中,以方便快速的载入,   可加快一些启动的速度。
readahead_later系统
restorecond开启系统restorecond利用   /etc/selinux/restorecond.conf  的设定来判断当新建档案时,该档案的   SELinux  类型应该如何还原。需要注意的是,如果你的系统有很多非正规的   SELinux  档案类型设定时,这个   daemon  最好关闭,否则他会将你设定的   type  修改回预设值。
rpcgssd可关闭网络与  NFS  有关的用户端功能,在你还没有玩到网路阶段时,   这两个咚咚也能够先取消啦!
rpcidmapd可关闭网络
sendmail可关闭网络sendmail这就是电子邮件的软件啊!我们想要拥有可寄信的功能时,  这个服务可不能关闭。不过,预设这个服务仅能支援本机的功能,无法收受来自网际网路的邮件喔!
setroubleshoot开启系统setroubleshoot一定要启动啊!因为这玩意儿可以将你的  SELinux  相关消息记录在/var/log/messages  里面,非常有帮助喔!
smartd开启系统smartd这个服务可以自动的侦测硬碟状态,如果硬碟发生问题的话,还能够自动的回报给系统管理员,是个非常有帮助的服务喔!不可关闭他啊!
sshd开启网络sshd这个是远端连线服务器的软件功能,  这个通讯协定比  telnet  好的地方在于  sshd  在传送资料时可以进行加密喔!这个服务不要关闭他啦!
syslog开启系统syslog这个服务可以记录系统所产生的各项消息,  包括/var/log/messages  内的几个重要的登录档啊。
xfs可关闭系统xfs这个是   X  Font  Server ,主要提供图形介面的字型的一个服务,   如果你不启动   X  视窗的话,那么这个服务可以启动。但是如果你有需要用到   X  时,一定要启动这玩意儿,否则图形介面是无法启动的喔。
xinetd开启系统xinetd就是   super  daemon  啊,不必讲了吧   ^_^
yum-updatesd 可关闭系统yum-updatesd可以透过  yum  的功能进行软件的线上升级机制,  若有升级的软件释出时,就能够以邮件或者是  syslog  来通知系统管理原来手动升级啊。

完整点击我下载查看

 

八 TCP性能优化

net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096        87380    4194304
net.ipv4.tcp_wmem = 4096        16384    4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.ip_local_port_range = 1024    65000