優化而言,沒有標準的優化方案,只有最合適自己的優化方案,同時每個系統的功能也是不一樣的,所以說每個伺服器優化起來也是不一樣的!
登入管理
對於linux系統來說,最好所有的操作都通過普通使用者提權去操作,root擁有對系統最大的許可權,對外開放也是不安全的,同時建議每個服務都有對應的服務賬號,並非使用root。
1. 建立普通登入使用者
useradd visitor
echo 123456|
passwd --stdin visitor #此為測試生產環境需要替換成複雜密碼
2. 新增sudo使用者
echo
"visitor all=(all) nopasswd:all"
>> /etc/sudoers
visudo -c
具體的詳細sudo配置可以自己尋找檔案
禁止root使用者通過遠端登入
[visitor@jd ~]$ sudo
cat /etc/ssh/sshd_config |
grep root
permitrootlogin no
#提前確保有普通賬戶可以登入系統,不然的話就很尷尬
修改sshd預設22埠
[visitor@jd ~]$ cat /etc/ssh/sshd_config|
grep -i setup
port 2598 #setup sshd login port
addressfamily any #setup login source ip address
listenaddress 0.0.0.0 #setup loging listenip
清理無用的系統賬戶
根據實際情況修改/etc/passwd
配置時間管理伺服器,可以根據下列文章去配置
配置定時同步時間
[root@jd ~]
# echo "*/5 * * * * /usr/bin/ntpdate ntp1.aliyun.com >>/dev/null 2>&1" >>/var/spool/cron/root
[root@jd ~]
# crontab -l
*/5 * * * * /usr/bin/ntpdate ntp1.aliyun.com >>/dev/null 2>
&1#我這裡為公有雲的機器,所有同步的是公網,實際按照生產環境來同步時間
常見的情況下selinux、iptables都是需要關閉的,一般使用硬體的waf來控制網路策略
1. 關閉selinux
sed -i "s#selinux=enforcing#selinux=disabled#g" /etc/selinux/config
setenforce 0
getenforce
2. 關閉iptables&firewalld #centos為firewalld
/etc/init.d/iptables status
/etc/init.d/iptables stop
chkconfig iptables off
服務開啟限制在centos7上面預設為1024個;但是如果是高併發的系統的話,1024顯得太渺小了,為了伺服器的正常穩定執行,需要設定
echo
;* - nofile 65535'>>/etc/security/limits.conf
ulimit -n #檢視now 的限制
netstat -n |
awk'/^tcp/ end '
#這個命令會輸出類似下面的結果:
last_ack 16
syn_recv 348
established 70
fin_wait 1229
fin_wait 230
closing 33
time_wait 18098
由上命令所見,time_wait的數量為18098,而tcp鏈結在斷開之後會以time_wait的狀態等待好久才會埠,在此期間鏈結所占用的埠並不會斷開,如果我們是在高併發的情況下,如果埠被time_wait占用了滿了;會出現鏈結失敗的報錯,所以下列引數是優化tcp鏈結的,但是如果伺服器本身的併發量並不是很大,優化的效果也不是很明顯
vim /etc/sysctl.conf
net.ipv4.tcp_syncookies= 1 #表示開啟syncookies。當出現syn等待佇列溢位時,啟用cookies來處理,可防範少量syn攻擊,預設為0,表示關閉;
net.ipv4.tcp_tw_reuse= 1 #表示開啟重用。允許將time-waitsockets重新用於新的tcp連線,預設為0,表示關閉;
net.ipv4.tcp_tw_recycle= 1 #表示開啟tcp連線中time-waitsockets的快速**,預設為0,表示關閉;
net.ipv4.tcp_fin_timeout= 30 #修改系統預設的timeout 時間。
執行此命令直接生效
[visitor@jd ~]$ sudo sysctl -p
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
對於一些比較重要的檔案,需要保護的檔案可以使用chattr、lsattr進行保護,然後再將chattr、lsattr修改為其他的名字 CentOS系統優化
1 最小化安裝。關閉防火牆 systemctl stop firewalld systemctl disable firewalld禁用selinuxsetenforce 0 sed i s enforcing disabled etc sysconfig selinux sed i s enfor...
CentOS系統優化
附加核心引數需要時使用 預設net.ipv4.ip forward 1 是否開啟核心 0net.ipv4.icmp echo ignore all 1 是否准許被ping 0net.ipv4.tcp tw recycle 1 是否開啟tcp 功能 0net.ipv4.tcp tw reuse 1 是...
Centos系統優化
在運維工作中,我們發現linux系統安裝之後並不能立即投入生產環境使用,往往需要先經過我們運維人員的優化才行。以下是我在日常生產應用的優化操作。一 關閉 usedns 加速 ssh 登入 描述有時侯ssh登入伺服器時,總是要稍等好一會才能連線上,這是因為openssh伺服器有乙個dns查詢選項use...