天天看點

Linux系統核心參數及網絡優化(伺服器生産可用),持續更新~~~

文章目錄

      • 軟體部分
      • SSH服務優化
      • 最大檔案描述符
      • 核心及網絡優化

軟體部分

如果是centos7/8系統可以安裝這幾個軟體

yum install yum-fastestmirror epel-release vim screen git wget curl axel yum-axelget yum-utils -y
           

SSH服務優化

修改配置檔案

/etc/ssh/sshd_config

#禁止空密碼登入
PermitEmptyPasswords no

#不使用DNS解析,可以加快通路速度
UseDNS no

# 是一套類似Kerberos 5的通用網絡安全系統接口。該接口是對各種不同的用戶端伺服器安全機制的封裝,以消除安全接口的不同,降低程式設計難度。但該接口在目标機器無域名解析時會有問題
GSSAPIAuthentication no 
           

最大檔案描述符

修改配置檔案

/etc/security/limits.conf

# ulimit優化
* soft nofile 65536
* hard nofile 65536
           

核心及網絡優化

修改配置檔案

/etc/sysctl.conf

#關閉ipv6
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
 
# 避免放大攻擊
net.ipv4.icmp_echo_ignore_broadcasts=1
 
# 開啟惡意icmp錯誤消息保護
net.ipv4.icmp_ignore_bogus_error_responses=1
 
#決定檢查過期多久鄰居條目
net.ipv4.neigh.default.gc_stale_time=120
 
#使用arp_announce / arp_ignore解決ARP映射問題
net.ipv4.conf.default.arp_announce=2
net.ipv4.conf.all.arp_announce=2
net.ipv4.conf.lo.arp_announce=2
 
#處理無源路由的包
net.ipv4.conf.all.accept_source_route=0
net.ipv4.conf.default.accept_source_route=0
 
#core檔案名中添加pid作為擴充名
kernel.core_uses_pid=1 
 
#修改消息隊列長度
kernel.msgmnb=65536
kernel.msgmax=65536
 
#開啟反向路徑過濾
net.ipv4.conf.all.rp_filter=1
net.ipv4.conf.default.rp_filter=1
 
#設定最大記憶體共享段大小bytes
kernel.shmmax=68719476736
kernel.shmall=4294967296
 
#timewait的數量,預設180000
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=32768
 
#記錄的那些尚未收到用戶端确認資訊的連接配接請求的最大值。對于有128M記憶體的系統而言,預設值是1024
net.ipv4.tcp_max_syn_backlog=65536
 
#web應用中listen函數的backlog預設會給我們核心參數的net.core.somaxconn限制到128,而nginx定義的NGX_LISTEN_BACKLOG預設為511,是以有必要調整這個值。
net.core.somaxconn=32768
 
#限制僅僅是為了防止簡單的DoS 攻擊
net.ipv4.tcp_max_orphans=3276800
 
#未收到用戶端确認資訊的連接配接請求的最大值
net.ipv4.tcp_max_syn_backlog=262144
net.ipv4.tcp_timestamps = 0
 
#核心放棄建立連接配接之前發送SYNACK 包的數量
net.ipv4.tcp_synack_retries=1
 
#核心放棄建立連接配接之前發送SYN 包的數量
net.ipv4.tcp_syn_retries=1
 
#啟用timewait 快速回收
net.ipv4.tcp_tw_recycle=1
 
#開啟重用。允許将TIME-WAIT sockets 重新用于新的TCP 連接配接
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_mem=94500000 915000000 927000000
net.ipv4.tcp_fin_timeout=1
 
# 開啟SYN洪水攻擊保護(防範少量SYN攻擊)
net.ipv4.tcp_syncookies=1 
 
#允許系統打開的端口範圍
net.ipv4.ip_local_port_range=1024    65000