linux系統基礎優化小結
不用root, 添加普通用戶,通過sudo授權管理
更改默認的遠程ssh服務端口及禁止root用戶遠程登陸
定時自動更新服務器時間 ntpdate
配置yum更新源,從國內更新源下載安裝軟件,如啊裏雲,163等.http://mirrors.aliyun.com/ http://mirrors.163.com/
關閉selinux vim /etc/sysconfig/selinux 或者
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g‘ /etc/sysconfig/selinux調整文件 描述符的數量 ,進程及文件的打開都會消耗文件描述符
vim /etc/security/limits.conf
ulimit -HSn 65535 臨時設置echo "* - nofile 65535" >>/etc/security/limits.conf
退出重登陸即可重新查看
精簡開機自啟動服務(crond,sshd,network,rsyslog(centos5.8 syslog))
鎖定關鍵系統文件
chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab清空/etc/issue版本信息顯示
linux 內核參數優化/etc/sysctl.conf, 執行sysctl -p生效)
說明:本優化適合apache,nginx,squid多種等web應用,特殊的業務也可能需要略作調整。
123456789101112131415161718192021222324 | [[email protected] ~]# vi /etc/sysctl.conf#by sun in 20131001net.ipv4.tcp_fin_timeout = 2net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_syncookies = 1net.ipv4.tcp_keepalive_time =600net.ipv4.ip_local_port_range = 4000 65000net.ipv4.tcp_max_syn_backlog = 16384net.ipv4.tcp_max_tw_buckets = 36000net.ipv4.route.gc_timeout = 100net.ipv4.tcp_syn_retries = 1net.ipv4.tcp_synack_retries = 1net.core.somaxconn = 16384net.core.netdev_max_backlog = 16384net.ipv4.tcp_max_orphans = 16384#一下參數是對iptables防火墻的優化,防火墻不開會有提示,可以忽略不理。net.ipv4.ip_conntrack_max = 25000000net.ipv4.netfilter.ip_conntrack_max = 25000000net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120[[email protected] ~]# sysctl –p #使配置文件生效 |
提示:由於CentOS6.X系統中的模塊名不是ip_conntrack,而是nf_conntrack,所以在/etc/sysctl.conf優化時,需要把net.ipv4.netfilter.ip_conntrack_max 這種老的參數,改成net.netfilter.nf_conntrack_max這樣才可以。
即對防火墻的優化,在5.8上是
123456 | net.ipv4.ip_conntrack_max = 25000000net.ipv4.netfilter.ip_conntrack_max = 25000000net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120 |
在6.4上是
123456 | net.nf_conntrack_max = 25000000net.netfilter.nf_conntrack_max = 25000000net.netfilter.nf_conntrack_tcp_timeout_established = 180net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120 |
另外,在此優化過程中可能會有報錯:
1、5.8版本上
123456 | error: "net.ipv4.ip_conntrack_max"is an unknown keyerror: "net.ipv4.netfilter.ip_conntrack_max"is an unknown keyerror: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_established"is an unknown keyerror: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait"is an unknown keyerror: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait"is an unknown keyerror: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait"is an unknown key |
這個錯誤可能是你的防火墻沒有開啟或者自動處理可載入的模塊ip_conntrack沒有自動載入,解決辦法有二,一是開啟防火墻,二是自動處理開載入的模塊ip_conntrack
12 | modprobe ip_conntrackecho "modprobe ip_conntrack">> /etc/rc.local |
2、6.4版本上
123456 | error: "net.nf_conntrack_max"isan unknown keyerror: "net.netfilter.nf_conntrack_max"isan unknown keyerror: "net.netfilter.nf_conntrack_tcp_timeout_established"isan unknown keyerror: "net.netfilter.nf_conntrack_tcp_timeout_time_wait"isan unknown keyerror: "net.netfilter.nf_conntrack_tcp_timeout_close_wait"isan unknown keyerror: "net.netfilter.nf_conntrack_tcp_timeout_fin_wait"isan unknown key這個錯誤可能是你的防火墻沒有開啟或者自動處理可載入的模塊ip_conntrack沒有自動載入,解決辦法有二,一是開啟防火墻,二是自動處理開載入的模塊ip_conntrack |
12 | modprobe nf_conntrackecho "modprobe nf_conntrack">> /etc/rc.local |
3、6.4版本上
123 | error: "net.bridge.bridge-nf-call-ip6tables"isan unknown keyerror: "net.bridge.bridge-nf-call-iptables"isan unknown key error: "net.bridge.bridge-nf-call-arptables"isan unknown key 這個錯誤是由於自動處理可載入的模塊bridge沒有自動載入,解決辦法是自動處理開載入的模塊ip_conntrack |
12 | modprobe bridgeecho "modprobe bridge">> /etc/rc.local |
更多可查看 http://oldboy.blog.51cto.com/2561410/988726
本文出自 “Linux” 博客,轉載請與作者聯系!
linux系統基礎優化小結