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

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

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

[複製鏈接]
發表於 2015-12-28 10:28:36 | 顯示全部樓層 |閱讀模式
tid=25799&vi /etc/ssh/sshd_config 6 g" \0 p" b3 N1 m

4 U" i, b1 r; h8 R* D1.修改預設 port (可用多行開啟多個 port)+ K$ V; X, Z- E+ i
Port <port>
! k- O0 ?/ y' l- a9 H+ K" s8 O& {8 Z
2.僅監聽特定 ip (適用於多網卡/多 IP 的情形)0 r1 j% Z! `+ h# x& @) [
ListenAddress 192.168.1.10
2 E/ Q- H/ z; r4 t9 i# T& r( ^* F( I
3.禁止 root 登入
" Q6 ~1 q* e# m* H3 o, |+ k% ?PermitRootLogin no" ~; r6 x- B1 j2 |) x, P4 y
管理者必須先以個人帳號登入,再 su 成 root,或利用 sudo 工作。' [. v! H$ A, ?5 @% I( Y# d6 f8 E' v
6 J& u. `) p9 S' k; c
4.禁止使用空密碼登入% \/ k; t# T1 Q. e
PermitEmptyPasswords no& H, R; J! x+ c
+ N4 O( M, E$ w2 a6 f/ K
5.僅允許或拒絕特定帳號或群組登入
0 f6 z: N- N8 B( n# N. tAllowUsers <user1> <user2> <user3>3 Z# I2 z6 S0 K1 I
AllowGroups <group>9 \% y' G  t3 A
DenyUsers *
2 I: N6 J- E. }- P3 a( Q  x7 h, pDenyGroups no-ssh
1 M( P, Z$ |  @: l根據實驗,對於同一帳號而言,如果同時 Allow 跟 Deny 的話,結果會是 Deny 的。, t. q4 c7 @4 u, P6 u

$ _  o; y  t! f0 C1 ]6.廢除密碼登錄,強迫使用 RSA/DSA 驗證
+ n  V) L5 n$ DRSAAuthentication yes
2 I4 A; y$ Q( h6 mPubkeyAuthentication yes6 y  v! t4 y( M1 w9 J9 B$ g' v
AuthorizedKeysFile %h/.ssh/authorized_keys8 A  f3 W- J/ O; ^
PasswordAuthentication no$ s, |2 K7 Y) f7 @6 w' T; U, i
並確保 user 的 ~/.ssh 權限為 700,同時將該 user 的 public key 加入其 ~/.ssh/authorized_keys 中。Public key 的產生方式可搜尋 ssh-keygen。) D5 ^1 e+ s, m/ v4 t, Y- P

7 J) q) b# Y$ A& o7.僅允許 SSHv22 `$ Q! d1 |/ {. J, t
Protocol 2
7 p5 x, c) K8 |3 `
) V7 W, f. V4 G# W' S8.限制特定使用者、群組、主機或位址的登入行為,這裡以限制 somebody 與 handsomebody 不可使用密碼登入為例
9 n; i+ X% \) c0 i7 Q! i* Q! iMatch User somebody,handsomebody
4 c# N, Z9 f& S' KPasswordAuthentication no使用 TCP wrappers 限制來源 IP3 i  V) Y, ]) S2 A. j  v9 E
# vim /etc/hosts.deny
% _$ R0 `+ T: t+ Csshd: ALL
4 q3 S- X, ]0 x* A4 y6 D' a" h0 ^# vim /etc/hosts.allow
7 d: c) M6 n: F, W* l" y# bsshd: 192.168.1 1.2.3.4 # 僅允許 192.168.1.* 與 1.2.3.4 連線5 q6 c: `3 f: {

5 o5 L/ _0 n6 J+ |8 Q5 Q: Q9.使用 iptables 限制來源 IP
8 `4 d! b; H1 r( [& P0 u4 H; b  I( P# iptables -A INPUT -p tcp -m state --state NEW --source 1.2.3.4 --dport 22 -j ACCEPT7 }1 z1 A; F+ P1 Y8 a' V4 `3 X, m! S
# iptables -A INPUT -p tcp --dport 22 -j DROP0 p/ X& ~; H8 i: f$ A* Y% V. H
設定會立即生效,若希望重開機後還能保存,需要手動儲存 iptables 的設定。! l: X! p  m1 k5 T& @0 f# L  f
" ?$ \1 G1 J5 u* M& I3 w- D4 K) A
10.時間鎖定- V* @' b, x9 ^  h+ H' O9 `
你可以使用不同的iptables參數來限制到SSH服務的連接,讓其在一個特定的時間範圍內可以連接,其他時間不能連接。你可以在下面的任何例子中使用 /second、/minute、/hour 或 /day 開關。
" k' R- Z+ S# c第一個例子,如果一個用戶輸入了錯誤的密碼,鎖定一分鐘內不允許在訪問SSH服務,這樣每個用戶在一分鐘內只能嘗試一次登陸3 \) e( i0 ~% I/ g) G/ M# b0 I8 O
  # iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 1/minute --limit-burst 1 -j ACCEPT
+ `( j; p1 ?6 ~2 j  # iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP
7 z  `3 J! W' J8 p  j8 E' S第二個例子,設置iptables只允許主機193.180.177.13連接到SSH服務,在嘗試三次失敗登陸後,iptables允許該主機每分鐘嘗試一次登陸% O9 `4 u  [* N
  # 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
) ^3 A8 `9 t+ T5 o5 `0 a  # iptables -A INPUT -p tcp -s 193.180.177.13 -m state --syn --state NEW --dport 22 -j DROP) e1 Q# t+ m4 w2 k' y& p
; \. o% p2 r5 q1 @2 w- ?  \
11.檢查相關檔案權限,不安全則不允許登入% h$ K: k. V, T: I0 \* Q5 J
StrictModes yes
& \; r9 z& @; w2 f9 R某些相關檔案權限設定若有錯誤時,可能造成安全性風險。如使用者的 ~/.ssh/authorized_keys 權限若為 666,可能造成其他人可以盜用帳號。# h$ G7 D; b0 H4 p' U& O
: l4 C  g* D# H9 _- o# H
12.自訂使用者登入時顯示的 banner (話說這跟安全性有什麼關係...? 大概可以用社交方式嚇跑壞人吧...= =a)0 p* u" n. ?8 P! V
Banner /etc/ssh/banner # 任意文字檔
. F! l- o3 w$ |. j) o0 t! a* c' E# U. z: J6 g! ~9 Y" t4 J
13.限制 su/sudo 名單. E1 k$ f: \* |" F4 u# h
# vi /etc/pam.d/su" t8 D0 e9 m5 ?
    auth       required     /lib/security/$ISA/pam_wheel.so use_uid1 n, {9 W+ |9 Y
# visudo
+ F$ E+ G5 I" ~9 ?    %wheel  ALL = (ALL) ALL
; `' k" h9 d6 h) c+ V8 Q/ @# gpasswd -a user1 wheel
# r/ g9 m* x3 P4 A8 l  W9 B) x  d- L
14.限制 ssh 使用者名單8 g( {) D/ A% z1 w0 j
# vi /etc/pam.d/sshd
4 F& f) A% K( [' H4 [9 q9 m    auth required pam_listfile.so item=user sense=allow file=/etc/ssh_users onerr=fail/ d* t  P3 Y2 e4 p
# echo <username> >> /etc/ssh_users
0 ^* v7 D0 Y  h, B: P  Q8 X15.防止SSH連線逾時(timeout),讓PuTTY 與 SSH 一直保持連線
* e6 }* u" u, x4 h1 y    修改/etc/ssh/sshd_config
4 ^+ O  o% `. @#TCPKeepAlive yes. ^! t. z( g' u# g/ `  M
#ClientAliveInterval 03 Q0 m  C1 g3 V; G; d
#ClientAliveCountMax 3
( `6 c* p7 k9 X- M+ R
     將#拿掉==>存檔% z* z! k% R0 S' ?9 S" j, O& l
#service ssd restart ==>重啟sshd+ A) i; L5 V  @, q
    接下來修改 Pietty 的參數,進入”PuTTY 連線設定”:. `8 J+ ^' k3 ^
    選擇「Connection」項目,將「Seconds between keepalives [0 to turn off]」右邊的欄位輸入每隔幾秒,傳送一個null封包以保持連線。

5 O- L1 X0 W/ u# M
0 J# G) k7 i6 r
回復

使用道具 舉報

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

本版積分規則



中文酷站排行榜

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

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

GMT+8, 2025-12-6 19:16 , Processed in 0.044605 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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