52AV手機A片王|52AV.one

 找回密碼
 立即註冊
查看: 1377|回復: 0

[ssh] 修改 sshd 的設定 ,設定檔 /etc/ssh/sshd_config

[複製鏈接]
發表於 2015-12-28 10:28:36 | 顯示全部樓層 |閱讀模式
tid=25799&vi /etc/ssh/sshd_config
0 s& f7 E$ q* T3 Q
1 ]/ I. b( A$ Q7 \7 v1.修改預設 port (可用多行開啟多個 port)
; w9 C0 y5 p( b2 U, g* ?2 WPort <port>
' n) \# K; ]! f! W0 y4 I( j2 h
) l4 d1 c1 t* `) A" k- u8 i2.僅監聽特定 ip (適用於多網卡/多 IP 的情形)% P; N0 S# t( C/ R
ListenAddress 192.168.1.10( M8 r7 g& _2 V, s; H

5 `. R2 K; a+ F2 m! L" J4 |3.禁止 root 登入7 |2 B4 n& f' m1 b
PermitRootLogin no
2 M% c! k" ^+ f" V管理者必須先以個人帳號登入,再 su 成 root,或利用 sudo 工作。
, f$ u0 i% k! h6 O. W- M  I" ]- _5 L! |
4.禁止使用空密碼登入
0 I- w- P, R' H5 `) l# xPermitEmptyPasswords no
* R/ s5 v6 v1 a1 _
( ]5 a7 P) W/ J& V: d5.僅允許或拒絕特定帳號或群組登入
6 |7 V& R9 R/ IAllowUsers <user1> <user2> <user3>
( B+ o; e$ T6 k" vAllowGroups <group>6 s5 Y) ~" R9 h3 p
DenyUsers *0 |9 B) O% C3 g8 E1 x
DenyGroups no-ssh9 H: M9 e" N1 u
根據實驗,對於同一帳號而言,如果同時 Allow 跟 Deny 的話,結果會是 Deny 的。
- ]' z; m( r8 j. D5 s2 U, h
+ e! O1 h2 |. N* p3 _8 i$ K6.廢除密碼登錄,強迫使用 RSA/DSA 驗證* C6 d# k4 e' D3 e" e3 Z
RSAAuthentication yes/ H$ t& K! G! x$ E: I% V& k3 ]1 j" ^
PubkeyAuthentication yes1 j8 L+ t% _$ B  M9 T5 R- B
AuthorizedKeysFile %h/.ssh/authorized_keys
" V% C& G' N; e$ v9 x3 V) aPasswordAuthentication no
; z% ~! {3 e5 U9 |9 w並確保 user 的 ~/.ssh 權限為 700,同時將該 user 的 public key 加入其 ~/.ssh/authorized_keys 中。Public key 的產生方式可搜尋 ssh-keygen。. t7 {& M" I2 ~! U( p/ ]* ]  n* x

* m8 S& d) ?  `" c- ]7.僅允許 SSHv2
7 _' ~. F* B7 O7 b' ]Protocol 2* e0 K6 U" O$ B
. Y- S; z  P0 T
8.限制特定使用者、群組、主機或位址的登入行為,這裡以限制 somebody 與 handsomebody 不可使用密碼登入為例
0 [" X& H! M/ v5 E9 rMatch User somebody,handsomebody7 ?4 f0 A2 V% l' a7 c
PasswordAuthentication no使用 TCP wrappers 限制來源 IP1 \( A6 V: Q$ P0 L8 n* l
# vim /etc/hosts.deny2 L- s( O! P* K: X5 l9 x
sshd: ALL
9 `4 u) D) @1 g8 Q$ |) J$ r( ^# vim /etc/hosts.allow' y8 \% n( d: A' y
sshd: 192.168.1 1.2.3.4 # 僅允許 192.168.1.* 與 1.2.3.4 連線
* B& I+ V& \& L& c3 N; n' L/ z' K
0 T  P' m% f9 h# _9.使用 iptables 限制來源 IP4 b$ ^/ p4 D2 q& c$ J: ^# |
# iptables -A INPUT -p tcp -m state --state NEW --source 1.2.3.4 --dport 22 -j ACCEPT
3 ~+ f0 J6 g/ d; v( H( w: F# iptables -A INPUT -p tcp --dport 22 -j DROP
& w3 L/ ]5 l, R: p' j設定會立即生效,若希望重開機後還能保存,需要手動儲存 iptables 的設定。
( i9 c. y" Z( ~) d' _0 s( Y5 v: z+ j4 e/ h% J' Z
10.時間鎖定
$ B6 @5 F: P6 {9 |3 V1 X# |你可以使用不同的iptables參數來限制到SSH服務的連接,讓其在一個特定的時間範圍內可以連接,其他時間不能連接。你可以在下面的任何例子中使用 /second、/minute、/hour 或 /day 開關。# f! {+ O8 {4 O: v3 y, H7 I, `
第一個例子,如果一個用戶輸入了錯誤的密碼,鎖定一分鐘內不允許在訪問SSH服務,這樣每個用戶在一分鐘內只能嘗試一次登陸4 i; N# [$ |9 c0 b: I% J+ b% z* P3 a' _
  # iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT
9 _: L# o/ D. `7 k- l  # iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP
2 y3 ^5 _2 h$ w3 a第二個例子,設置iptables只允許主機193.180.177.13連接到SSH服務,在嘗試三次失敗登陸後,iptables允許該主機每分鐘嘗試一次登陸
8 ~& \1 t* M7 R9 N0 n. l1 W  # 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 ACCEPT0 D) l2 Z% L8 ~( L
  # iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -j DROP: Z! f% k. Y: m7 v

" \% G9 f5 l3 i: _- V11.檢查相關檔案權限,不安全則不允許登入
0 c2 g- Z- W, u; Q, g3 Y7 e4 GStrictModes yes9 w+ B4 @6 O; x3 h" w
某些相關檔案權限設定若有錯誤時,可能造成安全性風險。如使用者的 ~/.ssh/authorized_keys 權限若為 666,可能造成其他人可以盜用帳號。. ^7 {  c6 a# y& V. G+ S
5 V. y! u6 L# f8 v* Y
12.自訂使用者登入時顯示的 banner (話說這跟安全性有什麼關係...? 大概可以用社交方式嚇跑壞人吧...= =a). Q! F" [: a1 A/ r* D' T$ _
Banner /etc/ssh/banner # 任意文字檔. ]2 E& K9 @& h3 Y8 Z) G- K, i8 |7 ?

1 U; i" E1 q7 H! S0 x. S) f6 r13.限制 su/sudo 名單
2 B3 Y3 [- F9 C* \# vi /etc/pam.d/su
, E: h( h0 L- m& u* E) h    auth       required     /lib/security/$ISA/pam_wheel.so use_uid
- m: n+ P4 q, g3 Y& ~4 z; n2 d/ E# visudo
0 q. N& i6 ~+ Z- k, {    %wheel  ALL = (ALL) ALL# Y1 h! C4 _; i  v4 l. W  E, n
# gpasswd -a user1 wheel# Z7 W: a! @3 [5 P
! P7 C6 C, E: R- V1 U2 c
14.限制 ssh 使用者名單
( s! I! o; l/ b. L7 d# vi /etc/pam.d/sshd! i' S0 J5 q& q$ G
    auth required pam_listfile.so item=user sense=allow file=/etc/ssh_users onerr=fail& A, Q3 B) M- ~
# echo <username> >> /etc/ssh_users; B3 D. R) g9 z* m" c  V
15.防止SSH連線逾時(timeout),讓PuTTY 與 SSH 一直保持連線
7 }9 L) t3 u6 w9 i( j0 A& u    修改/etc/ssh/sshd_config5 L; L( h4 F5 f6 s/ t8 E
#TCPKeepAlive yes4 {0 F3 M4 r0 A$ z
#ClientAliveInterval 0
8 F$ }- j' p2 c8 ^#ClientAliveCountMax 3
# |6 v3 M; q( N# ~; u: c
     將#拿掉==>存檔4 o: U& \5 y9 i/ L' f1 P" P
#service ssd restart ==>重啟sshd  ]# p( _$ \) l9 t6 H+ n- X& S% _
    接下來修改 Pietty 的參數,進入”PuTTY 連線設定”:& d' S# r. w9 o" j, e+ M  M
    選擇「Connection」項目,將「Seconds between keepalives [0 to turn off]」右邊的欄位輸入每隔幾秒,傳送一個null封包以保持連線。

8 ^4 m8 T+ ?+ A% i( c2 N
& ]0 G5 Q  k2 m6 h/ c4 p9 i5 }
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則



中文酷站排行榜

本區塊內容依據『電腦網路內容分級處理辦法』為限制級網站,限定年滿18歲以上或達當地國家法定年齡人士方可進入,且願接受本站各項條款,未滿18歲 謝絕進入瀏覽。為防範未滿18歲之未成年網友瀏覽網路上限制級內容的圖文資訊,建議您可進行網路內容分級組織ICRA分級服務的安裝與設定。 (為還給愛護 本站的網友一個純淨的論壇環境,本站設有管理員)

QQ|小黑屋|手機板| 52AV手機A片王

GMT+8, 2026-3-23 22:21 , Processed in 0.067976 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回復 返回頂部 返回列表