關(guān)閉dns反向解析
不關(guān)閉的話每臺(tái)主機(jī)ssh訪問(wèn)會(huì)延遲一段時(shí)間才能連接
#執(zhí)行完成后需要重啟系統(tǒng)才能生效
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
調(diào)整最大進(jìn)程數(shù)限制和文件描述符限制
vi /etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
?nproc:限制每個(gè)用戶的最大進(jìn)程數(shù),避免資源被單個(gè)用戶或進(jìn)程占用過(guò)多
nofile:增加每個(gè)進(jìn)程可以打開(kāi)的文件描述符數(shù)量,提高系統(tǒng)的并發(fā)性能
用戶進(jìn)程限制
vi?/etc/security/limits.d/20-nproc.conf
* soft nproc 8192
root soft nproc unlimited
* soft nproc 8192
:該行配置指定了軟限制(soft limit)的最大進(jìn)程數(shù)(nproc)為 8192。軟限制是一種警告級(jí)別的限制,表示當(dāng)前用戶或進(jìn)程可以增加到的最大資源限制,但可以通過(guò)適當(dāng)?shù)臋?quán)限更改。軟限制通常用于提醒用戶或進(jìn)程接近硬限制(hard limit)
root soft nproc unlimited
:該行配置指定了 root 用戶的軟限制最大進(jìn)程數(shù)為無(wú)限制(unlimited)。這意味著 root 用戶可以創(chuàng)建任意數(shù)量的進(jìn)程,沒(méi)有軟限制的限制
內(nèi)核參數(shù)優(yōu)化
vi /etc/sysctl.conf
fs.file-max=65535
net.ipv4.ip_local_port_range=1025 65000
net.ipv4.tcp_max_orphans = 32768
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_max_tw_buckets=8000
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_retries2=5
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_sack=1
net.ipv4.tcp_fack=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_keepalive_time=120
net.ipv4.tcp_keepalive_intvl=20
net.ipv4.tcp_keepalive_probes=3
net.ipv4.tcp_max_syn_backlog= 65535
net.ipv4.tcp_mem = 262144 524288 786432
net.ipv4.tcp_wmem = 4096 131072 16777216
net.ipv4.tcp_rmem = 4096 131072 16777216
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.core.wmem_max = 16777216
net.core.wmem_default = 131072
net.core.rmem_max = 16777216
net.core.rmem_default = 131072
net.netfilter.nf_conntrack_max=65536
net.netfilter.nf_conntrack_tcp_timeout_established=3600
net.netfilter.nf_conntrack_tcp_timeout_time_wait=120
net.netfilter.nf_conntrack_tcp_timeout_close_wait=60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait=120
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
vm.overcommit_memory = 0
vm.swappiness = 10
net.ipv4.ip_forward = 1
fs.file-max
:該參數(shù)指定了系統(tǒng)全局可以打開(kāi)的文件描述符的最大數(shù)量
net.ipv4.ip_local_port_range
:定義了系統(tǒng)使用的本地端口范圍,用于傳出的 IPv4 連接
net.ipv4.tcp_max_orphans
:指定了系統(tǒng)同時(shí)保持在內(nèi)存中的 TCP 連接的最大數(shù)量
net.ipv4.tcp_window_scaling
:?jiǎn)⒂?TCP 窗口擴(kuò)大選項(xiàng),可以優(yōu)化網(wǎng)絡(luò)傳輸?shù)男?/p>
net.ipv4.tcp_max_tw_buckets
:指定了系統(tǒng)同時(shí)維持的最大 TIME-WAIT 狀態(tài)的 TCP 連接數(shù)量
net.ipv4.tcp_tw_reuse
:允許重新使用 TIME-WAIT 狀態(tài)的 TCP 連接
net.ipv4.tcp_tw_recycle
:?jiǎn)⒂?TIME-WAIT 快速回收機(jī)制,可以加速回收處于 TIME-WAIT 狀態(tài)的 TCP 連接
net.ipv4.tcp_fin_timeout
:指定了 TCP 連接處于 FIN-WAIT-2 狀態(tài)的超時(shí)時(shí)間,單位為秒,默認(rèn)60s
net.ipv4.tcp_retries2
:指定了 TCP 連接在處于 TIME-WAIT 狀態(tài)時(shí)重試的次數(shù)
net.ipv4.tcp_syn_retries
:指定了 TCP SYN 請(qǐng)求的重試次數(shù)
net.ipv4.tcp_synack_retries
:指定了 TCP SYN-ACK 的重試次數(shù)
net.ipv4.tcp_syncookies
:?jiǎn)⒂?SYN Cookie 機(jī)制,用于防止 SYN Flood 攻擊
net.ipv4.tcp_sack
:?jiǎn)⒂?TCP SACK(Selective Acknowledgment)選項(xiàng),提高網(wǎng)絡(luò)傳輸效率
net.ipv4.tcp_fack
:?jiǎn)⒂?TCP FACK(Forward Acknowledgment)選項(xiàng),提高網(wǎng)絡(luò)傳輸效率
net.ipv4.tcp_timestamps
:?jiǎn)⒂?TCP 時(shí)間戳選項(xiàng),用于解決延遲重傳問(wèn)題
net.ipv4.tcp_keepalive_time
:表示在連接建立之后經(jīng)過(guò)多少時(shí)間開(kāi)始探測(cè)客戶端是否正常,單位為秒
net.ipv4.tcp_keepalive_intvl
:指定了 TCP Keepalive 探測(cè)的時(shí)間間隔,單位為秒
net.ipv4.tcp_keepalive_probes
:指定了 TCP Keepalive 探測(cè)的次數(shù)
net.ipv4.tcp_max_syn_backlog
:指定了 SYN 隊(duì)列的最大長(zhǎng)度,用于處理傳入連接請(qǐng)求
net.ipv4.tcp_mem
:指定了 TCP 內(nèi)存使用的三個(gè)參數(shù),分別為最小、默認(rèn)和最大內(nèi)存使用量
net.ipv4.tcp_wmem
:指定了 TCP 發(fā)送緩沖區(qū)大小的三個(gè)參數(shù),分別為最小、默認(rèn)和最大緩沖區(qū)大小
net.core.somaxconn
:指定了監(jiān)聽(tīng)隊(duì)列的最大長(zhǎng)度,即允許等待連接的最大數(shù)量
net.core.netdev_max_backlog
:指定了網(wǎng)絡(luò)設(shè)備隊(duì)列的最大長(zhǎng)度,用于處理傳入和傳出的網(wǎng)絡(luò)數(shù)據(jù)包
net.core.wmem_max
:指定了發(fā)送緩沖區(qū)的最大大小
net.core.wmem_default
:指定了發(fā)送緩沖區(qū)的默認(rèn)大小
net.core.rmem_max
:指定了接收緩沖區(qū)的最大大小
net.core.rmem_default
:指定了接收緩沖區(qū)的默認(rèn)大小
net.netfilter.nf_conntrack_max
:指定了同時(shí)跟蹤的最大連接數(shù)
net.netfilter.nf_conntrack_tcp_timeout_established
:指定了已建立的 TCP 連接的超時(shí)時(shí)間,單位為秒
net.netfilter.nf_conntrack_tcp_timeout_time_wait
:指定了 TIME-WAIT 狀態(tài)的 TCP 連接的超時(shí)時(shí)間,單位為秒
net.netfilter.nf_conntrack_tcp_timeout_close_wait
:指定了 CLOSE-WAIT 狀態(tài)的 TCP 連接的超時(shí)時(shí)間,單位為秒
net.netfilter.nf_conntrack_tcp_timeout_fin_wait
:指定了 FIN-WAIT 狀態(tài)的 TCP 連接的超時(shí)時(shí)間,單位為秒
net.ipv6.conf.all.disable_ipv6
?和 net.ipv6.conf.default.disable_ipv6
:禁用 IPv6 功能
vm.overcommit_memory
:禁用內(nèi)存過(guò)量提交機(jī)制,確保系統(tǒng)不會(huì)過(guò)度分配內(nèi)存
vm.swappiness
:調(diào)整內(nèi)存交換(Swap)的傾向性,值越小,系統(tǒng)傾向于更少地使用交換空間
優(yōu)化腳本
vi linux.sh
#!/bin/bash
#關(guān)閉防火墻
systemctl stop firewalld
systemctl disable firewalld
#關(guān)閉selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
#關(guān)閉dns反向解析
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
#調(diào)整最大進(jìn)程數(shù)限制和文件描述符限制
cat >> /etc/security/limits.conf << EOF
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
EOF
#用戶進(jìn)程限制
sed -i 's/4096/8192/g' /etc/security/limits.d/20-nproc.conf
#內(nèi)核參數(shù)優(yōu)化
cat >> /etc/sysctl.conf << EOF
fs.file-max=65535
net.ipv4.ip_local_port_range=1025 65000
net.ipv4.tcp_max_orphans = 32768
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_max_tw_buckets=8000
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_retries2=5
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_sack=1
net.ipv4.tcp_fack=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_keepalive_time=120
net.ipv4.tcp_keepalive_intvl=20
net.ipv4.tcp_keepalive_probes=3
net.ipv4.tcp_max_syn_backlog= 65535
net.ipv4.tcp_mem = 262144 524288 786432
net.ipv4.tcp_wmem = 4096 131072 16777216
net.ipv4.tcp_rmem = 4096 131072 16777216
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.core.wmem_max = 16777216
net.core.wmem_default = 131072
net.core.rmem_max = 16777216
net.core.rmem_default = 131072
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
vm.overcommit_memory = 0
vm.swappiness = 10
net.ipv4.ip_forward = 1
EOF
#使配置生效
sysctl -p
cat > 文件名 << EOF 與?cat >>?文件名 << EOF區(qū)別文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-552909.html
一個(gè)是創(chuàng)建,一個(gè)是在文件末尾追加內(nèi)容文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-552909.html
到了這里,關(guān)于centos內(nèi)核優(yōu)化的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!