当前位置: 主页 > 性能调优 >

线上使用的服务器优化Shell脚本(安全+优化)

时间:2013-06-07 16:20来源:www.linuxyw.com 作者:admin 点击:
下载脚本:wget http://www.linuxyw.com/scripts/system.sh 本脚本在CentOS 5.8 和6.2版本完美使用 本脚本可放心在线上服务器使用,建议在安装好系统后,就使用此脚本进行优化,优化完后,重启下服
欢迎大家分享自己的文档,请点击查阅:分享方法,Linux系统运维
如果你喜欢这文章,可以点击文章结尾处百度分享,分享到你的各种社区收藏,或推荐给朋友……


下载脚本wget http://www.linuxyw.com/scripts/system.sh
本脚本在CentOS 5.8 和6.2版本完美使用
本脚本可放心在线上服务器使用,建议在安装好系统后,就使用此脚本进行优化,优化完后,重启下服务器后无问题再进行其它服务安装
脚本有些优化可能不适合你的业务,可进行适当修改,如内核优化那
注意,使用了本脚本后,SSH端口已变为2233,请在优化先,修改脚本中的SSH端口为自己想设置的

#!/bin/bash

#############################################
#name:drfdai
#email:63780668@qq.com
#date:2012-09-15
#############################################


#以下是设置服务器每3小时同步一次
yum -y install ntp
echo '0 */3 * * * /usr/sbin/ntpdate time.windows.com >/dev/null 2>&1' >>/var/spool/cron/root
service crond restart

#以下设置服务器打开文件数量(文件描述符)为:65535
echo "ulimit -SHn 102400" >> /etc/rc.local
cat >> /etc/security/limits.conf << EOF
*           soft   nofile       65535
*           hard   nofile       65535
EOF
 
#优化内核
cp /etc/sysctl.conf /etc/sysctl.conf-$(date +%F).bak
true > /etc/sysctl.conf
cat >> /etc/sysctl.conf << EOF
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 = 1200
net.ipv4.ip_local_port_range = 1024 65535
#net.ipv4.icmp_echo_ignore_all = 1  #禁ping,如果有nagios监控,这步可省去
EOF
/sbin/sysctl -p
echo "sysctl set OK!!"


#禁止CTRL+ALT+DEL关机
sed -i "s/ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/#ca::ctrlaltdel:\/sbin\/shutdown -t3 -r now/" /etc/inittab

#在无用的系统帐号前加上#号,使帐号无效,这步也可以不做,如果有某些服务无法启动,可能跟这些被注释掉的帐号有关,去掉#号再重新服务即可
cp /etc/passwd /etc/passwd-$(date +%F).bak
for i in xfs news nscd dbus vcsa games nobody avahi haldaemon gopher ftp mailnull pcap mail shutdown halt uucp operator sync adm lp
do
sed -i "s/^${i}/#${i}/" /etc/passwd
echo "${i} done.."
done

#使历史记录只保留100条最近的,超过300秒无动作退出ssh连接
cp /etc/profile /etc/profile-$(date +%F).bak
#echo "TMOUT=300" >> /etc/profile
sed -i '/^HISTSIZE=/cHISTSIZE=100' /etc/profile
source /etc/profile

#去掉登陆后显示的欢迎信息等
cat /dev/null >/etc/issue 
cat /dev/null >/etc/issue.net 
cat /dev/null >/etc/motd

#安装系统优化工具
yum install -y sysstat

#对bash_history加

转载请注明linux系统运维
http://www.linuxyw.com/linux/tiaoyou/20130607/553.html

------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片
栏目列表
推荐内容