vi /etc/ssh/sshd_config
3 h* G1 f- S4 [2 R! S7 _: d5 e1 _ \/ r: z) T
1.靽格寥閮 port (舐典銵憭 port)
8 P: `7 t/ T9 m A# |5 I+ SPort <port>+ D* Q, A- ~) U! L+ b
' G) L& D# Q2 K: x6 S9 x+ H1 t2.賜孵 ip (拍冽澆蝬脣/憭 IP 敶)
( j; [- U1 |. S8 c6 l; oListenAddress 192.168.1.10
7 x9 A8 n* z0 A0 K+ G8 M, E1 O R1 |+ B4 p( H
3.蝳甇 root 餃. r% V& F7 o, {% ]
PermitRootLogin no( R# \/ ]( n$ G8 t) z( U
蝞∠敹隞亙鈭箏董餃伐 su root嚗拍 sudo 撌乩
" l+ G$ M8 u; r0 Z; Q
+ G8 K% d# m P' X4.蝳甇V蝙函征撖蝣潛餃) G! B5 e% s" u
PermitEmptyPasswords no
/ S0 K9 l N. K$ S
* ?/ Y% M- L, m) g5.閮望蝯孵撣唾蝢斤餃
% R! e- y) t# w9 yAllowUsers <user1> <user2> <user3>& f- a& B; a7 O2 C# v- h( l
AllowGroups <group>! \9 }0 K3 G2 k7 I% ~0 q
DenyUsers *( ~5 A3 R G, p+ W7 ~7 J
DenyGroups no-ssh
/ M- k. b3 h! W2 L* ~: C寞撖阡嚗撠澆銝撣唾閮嚗憒 Allow 頝 Deny 閰梧蝯 Deny ) L0 i8 O% Y2 p5 Y
/ `& _- i/ Q! f: D' C& @% [
6.撱a文蝣潛駁嚗撘瑁翰雿輻 RSA/DSA 撽霅9 e, O+ ]% `0 }% ^
RSAAuthentication yes( B+ z% Z# [% j- k; _9 Y' E7 W E
PubkeyAuthentication yes4 F& M& u" d, T7 u" @7 m
AuthorizedKeysFile %h/.ssh/authorized_keys+ {! h7 `* ?; Y( o
PasswordAuthentication no, t. F8 U; j4 N! t2 d/ r; ?+ H n
銝衣Ⅱ靽 user ~/.ssh 甈 700嚗撠閰 user public key 亙 ~/.ssh/authorized_keys 銝准Public key Y孵舀撠 ssh-keygen1 N3 j# E. K. l; O
" p h) [: k' k
7.閮 SSHv29 s5 d( K/ D0 h2 V0 @4 T
Protocol 2! t+ |* a+ p8 n
; N' q9 F& r& ?, L% g2 ^! _6 |
8.嗥孵雿輻刻蝢斤銝餅雿餃亥綽鋆∩誑 somebody handsomebody 銝臭蝙典蝣潛餃亦箔
% S2 e7 e b6 b/ R& j; ^, oMatch User somebody,handsomebody
: N+ ]* F) ~0 p$ k- fPasswordAuthentication no雿輻 TCP wrappers 嗡皞 IP
' o. |: Z0 ?/ I0 s& ^1 v# vim /etc/hosts.deny! W' j1 F5 h' W( q* t
sshd: ALL. Q% u4 @# L& d( ~3 p4 M3 C2 l+ i
# vim /etc/hosts.allow
/ Z9 C$ J6 B3 E: w H6 a# x" ^( |sshd: 192.168.1 1.2.3.4 # 閮 192.168.1.* 1.2.3.4 蝺" ^# {0 M; @3 ~7 v
: ^, i% @1 K9 ]9 w0 `
9.雿輻 iptables 嗡皞 IP& f, f, u2 ]0 B. y5 t
# iptables -A INPUT -p tcp -m state --state NEW --source 1.2.3.4 --dport 22 -j ACCEPT
4 Z7 p5 |4 ?/ u0 q- R! P& W) q# iptables -A INPUT -p tcp --dport 22 -j DROP5 d1 z9 A# R1 \ k- L
閮剖蝡喟嚗亙璈敺賭摮嚗閬脣 iptables 閮剖
( _2 _! E; I5 V3 P) `- C, I9 W/ Q" q% u8 t7 g N. n
10.摰2 G- G( a( D* a, K
雿臭誑雿輻其iptables訾嗅訕SH伐霈嗅其孵蝭批臭誑伐嗡銝賡乓雿臭誑其Y隞颱靘摮銝凋蝙 /second/minute/hour /day
4 B6 [: ]# T1 I- @2 o$ k( }蝚砌靘摮嚗憒銝冽嗉撓乩航炊撖蝣潘摰銝找閮勗刻赤SSH嚗璅瘥冽嗅其批芾賢閰虫甈∠駁
4 m" v+ h; E7 g; G; ~ # iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT* T" U) y. b" X( c
# iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP9 K* a% l @+ z) g7 O
蝚砌靘摮嚗閮剔蔭iptables芸閮曹蜓璈193.180.177.13亙訕SH嚗典閰虫甈∪仃駁詨嚗iptables閮梯府銝餅瘥閰虫甈∠駁
- M+ a# g# S2 s" @- T3 @$ s# I # iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT( Y! J( ~# j$ h% h5 Z9 j
# iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -j DROP9 j% D1 ?5 `" H9 K, \ x
; r: y* D$ u. D* x
11.瑼X亦賊瑼獢甈嚗銝摰典銝閮梁餃
2 q5 T2 I" l" @+ N2 o) a9 O) HStrictModes yes
+ P) m; F8 s% m2 w6 j+ b鈭賊瑼獢甈閮剖交航炊嚗航賡摰冽折◢芥憒雿輻刻 ~/.ssh/authorized_keys 甈亦 666嚗航賡嗡鈭箏臭誑典董
/ ^( X( H! S/ L1 q7 D8 `
7 P x8 k7 ~" [& `2 t5 m6 T12.芾雿輻刻餃交憿舐內 banner (閰梯牧頝摰冽扳隞暻潮靽...? 憭扳臭誑函冗鈭斗孵頝憯鈭箏...= =a)
2 a% u( [, `# R2 t6 N4 j% wBanner /etc/ssh/banner # 隞餅摮瑼% |- x' @% O' z c& i
3 e* I5 X+ E U- d
13. su/sudo F$ D- K. x1 L0 A8 P
# vi /etc/pam.d/su/ C Q* i" I8 @) [
auth required /lib/security/$ISA/pam_wheel.so use_uid g" ~' S3 S3 f7 X- e
# visudo
( b) O F& H& e& u %wheel ALL = (ALL) ALL! L$ K! I6 i/ ~: b) A& G
# gpasswd -a user1 wheel
; z& n2 v: f* O" G( }
- i' q3 r, T! O2 P5 {14. ssh 雿輻刻
$ S1 e, T# ]' J5 q# vi /etc/pam.d/sshd7 y5 a: b; J; a& J4 z: e, c) z6 G
auth required pam_listfile.so item=user sense=allow file=/etc/ssh_users onerr=fail# F# ~; R: P% c0 s: f; Y- \
# echo <username> >> /etc/ssh_users( t* H$ x) K* Q5 |' {$ A7 Z
15.脫迫SSH蝺暹(timeout),霈PuTTY SSH 銝港蝺
0 C! t. z4 m r! I8 e9 u6 g/ h8 _ 靽格/etc/ssh/sshd_config, C/ C( T: h& l' ]
#TCPKeepAlive yes
! ]9 \0 I+ W! N4 p* g. h7 T* N#ClientAliveInterval 02 J4 Q- q0 L( `( p, h
#ClientAliveCountMax 3 k2 J2 D! |" X3 w/ ]+ m; n
撠#踵==>摮瑼
: V, y& ?& g/ f0 w2 n& t/ {#service ssd restart ==>sshd% u6 `" i( k: ] O' t7 I* e
乩靘靽格 Pietty 賂脣PuTTY 蝺閮剖:8 r7 [5 f4 `1 f. C. d
豢Connection殷撠Seconds between keepalives [0 to turn off]喲甈雿頛詨交撟曄嚗喲銝null撠隞乩蝺/ N; J7 b4 }$ `- z: E) q' k+ Y- f
% m5 K! p1 u: v$ E$ e+ h( U |
|