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

標題: 免密碼直接登入遠端的 SSH Server [打印本頁]

作者: IT_man    時間: 2018-9-13 17:00
標題: 免密碼直接登入遠端的 SSH Server
本帖最後由 IT_man 於 2018-9-13 18:28 編輯
) p+ P% e/ \: b/ j) O
: E* b( [+ ~4 J% C' E本篇主要介紹從linux client 免帳號密碼ssh(Secure shell)連到linux server之詳細過程。步驟:! ?6 |. j1 y( R3 f8 T; @7 i

2 X! G! A( l& h( C2 y  R2 k. b" ^<1> 在Client端產生Client金鑰:- x. S7 y8 N9 m# b% _

& H% L+ R3 `6 t& Z# i* e. \- q假設在client端以使用者 user1 登入,家目錄的 .ssh 目錄裡,目前只有一個 known_hosts 檔案,這個是用來記錄曾經連線到別台的server的 SSH Server 公鑰。
) S0 e( t. ^- s再來,產生一組這台client的 SSH 公鑰+私鑰,預設是使用 RSA 演算法 ==> ssh-keygen 指令 :

8 K1 I' A. X9 P& g9 c! i6 Q4 U  \$ U+ M

* d: s, a- ?2 j8 c4 f- \5 d
( d. U3 C( u$ Z% F, ?+ J. p5 R0 y* U+ B: E! z5 @8 ?% v9 X
/ R  o0 v4 v! X
過程有三個選項要使用者設定,不必修改,全部直接按 Enter 用預設值就好了。9 F, m+ e) }# o; i) m1 D
1. Enter file in which to save the key - 輸入金鑰的檔案路徑及名稱,預設是 ~/.ssh/id_rsa。1 E! l3 {. b. w' E( H4 U
2. Enter passphrase - 輸入自訂密碼。
+ y8 Q7 d2 w* A5 O$ I: U3. Enter same passphrase again - 再輸入一次自訂密碼。- ~2 J4 `9 w4 t  l/ x) P" H
+ n' X$ k' D0 V8 X3 {* m, i; t
此時它就會產生 id_rsa 私鑰及 id_rsa.pub 公鑰。公鑰的內容,其實就只是一堆的加密過的文字而已。- F) L& Z% S6 K
使用 scp 或 ftp 或你習慣的檔案傳輸工具將 Client 端的公鑰 ~/.ssh/id_rsa.pub 複製到 Server端裡,帳號假設也是user1,那麼就把公鑰存到 user1 的家目錄 ~。
( E  N8 G) o- q
2 @: N6 w0 M4 \% t. X
<2> 在 Server端加入剛剛Client端產生的公鑰:

; ]/ x, N4 U+ I5 u/ X

( G& l* N' H2 C* e; d9 y0 t( N用SSH軟體,假設以Putty連到 Server端,user1登入後確認一下 Client 的公鑰 id_rsa.pub 已經被複製進來,如果家目錄沒有 .ssh 目錄就自行建立。
# J" |* Z: K0 {. p& @7 b把 .ssh 目錄的權限改成只有本人才可讀寫,這樣比較安全。
( f; d3 x! t! T0 R; H8 `1 y. Y
chmod 700 ~/.ssh
8 Y( {- `# E2 V, F把剛剛複製過來的 Client 端公鑰,匯入到 Server端的授權清單(authorized_keys)裡。 3 Y" U7 c  t! A, V
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
! |* s, f2 ^' u; e1 [& }# ~( ]( n. @
) t& f* D% Z6 l% A同樣把 authorized_keys 檔案的權限只有本人可讀寫,這樣比較安全。
6 B! k$ Q1 j6 D: L6 Gchmod 600 ~/.ssh/authorized_keys. M' [' W0 ~; i4 N! b
+ a! i$ O( H% `0 n. [6 R. M

$ Z9 h9 ]. {0 {! a! J0 G

  f6 x. O8 e' I. }1 @結果:+ g% D- Z. S: Q! q
原本登入的時候,會詢問帳號跟密碼。將 Client 端的公鑰加到 Server端 的授權名單後,就可以直接登入不用帳號密碼了,是不是很方便,而且經過SSH加密傳輸更安全。9 L9 J: _1 r) w) v- k9 ]
特別說明的是:上面的步驟只提供Client端的使用者user1免帳號密碼登入到Server端的使用者user1;如果Client端的使用者user1欲免帳號密碼登入到Server端的使用者root的話,步驟<2>的user1需換成root,即Server端須以root登入,其他動作都一樣: I& }/ |$ {9 m$ `. e
# c' B; w6 |; d6 K# b- x9 V) y
  }$ u; s6 i( t$ _& }4 l
P.S 至於從Windows 免密碼ssh(Secure shell)連到linux server,請參考 http://blog.itist.tw/2015/03/login-ssh-server-without-username-and-password.html
# w; a% l. g0 n0 V) o& w2 B
) C$ y% j) }) [& a! X7 L6 \
作者: aaa500600    時間: 2020-8-24 23:32
完全看不懂
作者: malajisi    時間: 2022-4-25 09:54
虽然看不懂,但是很厉害
作者: mayboypvp    時間: 2022-5-12 14:23
推, 簡單教學, 易懂
作者: okba    時間: 2022-6-8 22:37
这是干嘛的




歡迎光臨 52AV手機A片王|52AV.ONE (https://www.52av23.xyz/) Powered by Discuz! X3.2