Centos系統常見的優化

2021-10-05 07:23:05 字數 2891 閱讀 1165

優化而言,沒有標準的優化方案,只有最合適自己的優化方案,同時每個系統的功能也是不一樣的,所以說每個伺服器優化起來也是不一樣的!

登入管理

對於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...