tid=66248& 本帖最後由 IT_man 於 2017-8-29 14:56 編輯
. }! E8 \4 ^$ ]- K' b
* z- H- \7 ~9 u" j' ~& a: GLinux 預設是沒有下述的調整,因此我們必須進行最佳化的調整:% D* I3 t5 X, \/ |$ S' A0 N/ u
& u1 n+ u$ g4 Z: W' K$ Z$ S
#vi /etc/sysctl.conf+ x1 R" Q4 ~0 A) ]
### 改進系統記憶體管理 ###- O0 [1 u% p& d$ a; C6 b" e7 T& `" B
9 O% s0 W5 \0 b& a; Z9 n
; k4 l& u0 n4 a$ Y
# 加大檔案處理及inode快取
8 K1 D/ S0 b- K+ |fs.file-max = 2097152
: p% i0 F4 {6 W# n3 D3 {0 ?# K0 |) R' L' Z4 _1 S( M" b
* O7 t) r% [+ `2 M8 Q# 較少的交換
0 a( ]$ o& F5 D8 \4 C+ N; Kvm.swappiness = 10
1 I9 c' W7 ^6 L- Ovm.dirty_ratio = 60
& q0 X; b6 R$ k L' Bvm.dirty_background_ratio = 2
5 x; O9 |) b, u8 B8 V" s) o# C& i5 m- x6 {
P' B; D: I! R3 `4 s9 _
### 一般的網路安全選項 ###
9 r; W0 f0 Q" `, M( S5 \: r5 O! C% S4 |8 U
4 E( s- {2 E' y# q6 V7 d0 ^
# 被動(passive)TCP連接的SYNACKs次數
' E- V+ p/ [6 N2 C1 b$ z' rnet.ipv4.tcp_synack_retries = 2/ L8 l% A( K' ~5 f% ]' H1 a
5 J$ Z8 O# o$ u' f( U# p
. w. M" t' D) a' ]
# 允許本機網路連接阜範圍
6 a* u8 `& W& E& s& H ~net.ipv4.ip_local_port_range = 2000 65535
& [* U* A% C! I+ l3 g! h
/ r) g2 w" }* _. r; a( A8 y6 U& i$ q- B/ d& K% t6 j1 V8 ^
# 反制TCP Time-Wait的保護# I# M: Y; n2 a8 a
net.ipv4.tcp_rfc1337 = 1
/ [: t$ O, Y7 u6 v; V: J! O: w6 c& v# O' g5 ]0 A: D. [
* e4 g* [3 z3 j# 降低對 tcp_fin_timeout connection 時間的預設值
H+ ^# {. W9 pnet.ipv4.tcp_fin_timeout = 15$ m$ F, h8 A2 N, U
/ G1 F2 } u- r& ?4 O
" _ ~# l# P( {: v- S/ i# 降低連線存活時間的預設值1 f& \9 T* u- v
net.ipv4.tcp_keepalive_time = 3008 p+ m5 l* r+ T, D+ j" ]
net.ipv4.tcp_keepalive_probes = 5
+ m) l- S' t5 Y/ o3 anet.ipv4.tcp_keepalive_intvl = 15
- G5 `% R1 M0 d) z
0 C- r6 |9 u% B3 ~+ n2 r/ e( O7 {0 _$ \& T% m& G4 D8 P
### 調整網路效能 ###9 D8 G9 i. u, c% H& `
( ?( U K* j+ R2 L% L0 Z: o7 F
# T. N" L y3 C# 預設的Socket接收緩存" j/ u. P* t6 _! M6 K
net.core.rmem_default = 31457280
% k9 I' s7 ]9 R$ B3 D1 y! q) p C' R+ u% A& V1 p9 T2 t
- q9 H; G9 `% h! {6 |$ Z
# 最大的Socket接收緩存
9 I: I/ A7 K' U" a5 B3 k1 p. ^net.core.rmem_max = 125829122 e) I5 F/ U! {0 q# @5 u
0 G; V& z4 R4 I7 Q8 p( |" _
1 q1 d6 I1 J: a& g& q! C: Q# 預設的Socket傳送緩存
; S2 E; {5 D* U, s: @( g6 Hnet.core.wmem_default = 31457280; n4 I/ g& V' t# [' g
" L2 V* _$ o( ^0 _/ [
$ ]5 `; x4 _7 m# 最大的Socket傳送緩存
5 ^# [6 \5 K. J) `' ?+ tnet.core.wmem_max = 12582912
$ d% Z. z- ]/ j" }2 J" r$ s P: R0 N0 [7 i% |: v4 j
, o* w0 l* z( @. \+ z# 加大網路連入數
0 J0 d. z1 v, fnet.core.somaxconn = 4096
( O2 {& ~ I6 B& K( w( X/ z, l# d/ H+ }# K/ \' l5 [3 x$ I
) K! z! v, i* x- I5 K" H7 Z' t
# 加大網路連入的backlog1 b' ^( c" U/ y# M I9 H
net.core.netdev_max_backlog = 65536
$ i; C, S" T7 Q% S+ M3 x" B5 {. T# L. [- z
( d& f! X/ s! c9 N0 y( w2 ]0 ]& R
# 加大記憶體緩存的最大量
5 A6 u3 }9 F" u3 |5 I2 c' @net.core.optmem_max = 251658244 Q1 }- }! L' `
2 T8 s" h. O7 Z6 q6 X* \$ k
. z* f3 l1 H4 |: r! ^8 W S7 ]* _
# Increase the maximum total buffer-space allocatable加大可定址緩存空間的最大總量/ w6 N4 E: |/ I/ b- W2 y7 {
# This is measured in units of pages (4096 bytes)/ L; I/ M; @& Y2 p R) [8 [
net.ipv4.tcp_mem = 65536 131072 262144
8 s) s( T# a7 s; Nnet.ipv4.udp_mem = 65536 131072 262144
6 m6 P# ]( ?& r- d& @, s0 m
f3 F- |/ }8 h1 u% ^) S5 f& |9 W
# 加大讀取緩存可定址空間
9 d% |# |/ @: E$ ^7 X/ J. u# Fnet.ipv4.tcp_rmem = 8192 87380 16777216
/ {) |5 M! I! j$ c+ X3 Bnet.ipv4.udp_rmem_min = 16384. |2 ^% m- M( w0 I( o; a* D. n
( A' S4 `6 M' D* Z+ r
) L* {% Q% y* P2 g3 t# 加大寫入緩存可定址空間9 O- L o" W a
net.ipv4.tcp_wmem = 8192 65536 16777216, ~3 K5 Z q! o- P+ X
net.ipv4.udp_wmem_min = 16384( F3 i8 O6 O; l) S! X
C+ _# J/ z3 w* }7 N3 T
+ m/ U9 f* p2 N; d) j# 加大tcp-time-wait桶子池區數量以預防簡易的DOS攻擊6 F6 o4 `* c" Q) x3 M+ q1 o
net.ipv4.tcp_max_tw_buckets = 14400009 F: R4 l L2 x+ K% e8 X! p6 D2 F
net.ipv4.tcp_tw_recycle = 1
( y3 G) u$ U" \net.ipv4.tcp_tw_reuse = 1
* f& u) L5 @5 F5 \ T
8 n# p, [, M) c% N) G! o6 r4 g9 c3 H5 Z
存檔以生效
1 r, G. S9 n) [! x6 Y3 g#sysctl -p 載入已變更6 L4 B/ e, M- [8 [5 x! y/ D) t3 Q
' ]$ J) Z1 t5 p' O! K; N
& F" t0 {$ A/ o5 Z9 ^- r+ o參考來源:+ V. Z8 ]; |* ] y' M+ I
$ k9 `! M3 B( I; U& Q2 x
# V; B. `/ K( Ohttps://easyengine.io/tutorials/linux/sysctl-conf/
8 q8 a: `+ C: L1 \: K/ I9 o
9 Y& y3 `$ e9 N0 ^( |
0 j5 u% h- f% ]5 L+ I2 p0 r b6 D; r+ V0 K r5 ?
2 N0 u8 ^/ D; b! ~4 l7 _8 h. u# i
|