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

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

作者: IT_man    時間: 2018-9-13 17:00
標題: 免密碼直接登入遠端的 SSH Server
本帖最後由 IT_man 於 2018-9-13 18:28 編輯 ( _* T% t, O" u

) v  E! f+ v& j* W4 ~7 t本篇主要介紹從linux client 免帳號密碼ssh(Secure shell)連到linux server之詳細過程。步驟:
9 ~: U0 k, }- w% l8 O
& r/ [3 K- v2 }<1> 在Client端產生Client金鑰:& Y# Z8 r+ N$ c$ ]3 P

- y3 p1 ?. B* b* {) \假設在client端以使用者 user1 登入,家目錄的 .ssh 目錄裡,目前只有一個 known_hosts 檔案,這個是用來記錄曾經連線到別台的server的 SSH Server 公鑰。
) b8 x+ l- p2 k1 p/ c再來,產生一組這台client的 SSH 公鑰+私鑰,預設是使用 RSA 演算法 ==> ssh-keygen 指令 :
! b* y" g/ k  j# ^' R

. {% G+ [& m2 g8 \  q2 V/ O" o : w3 H0 ~3 G$ I( o+ J3 i: n
* {/ |5 V. `7 ~  n* A
1 r# Q  F  i4 E
過程有三個選項要使用者設定,不必修改,全部直接按 Enter 用預設值就好了。' U& O+ N' G3 b7 y( D* L
1. Enter file in which to save the key - 輸入金鑰的檔案路徑及名稱,預設是 ~/.ssh/id_rsa。
0 I* g( B8 j" V# C3 d" f2. Enter passphrase - 輸入自訂密碼。
1 M6 F* [8 n) Q( Y6 I* g3. Enter same passphrase again - 再輸入一次自訂密碼。
5 m+ b' O& L$ X" R' F
# \) N# K+ J) t0 ]/ d. v此時它就會產生 id_rsa 私鑰及 id_rsa.pub 公鑰。公鑰的內容,其實就只是一堆的加密過的文字而已。' i+ U" X+ B& S3 ]3 p' t7 A* |0 Q  \
使用 scp 或 ftp 或你習慣的檔案傳輸工具將 Client 端的公鑰 ~/.ssh/id_rsa.pub 複製到 Server端裡,帳號假設也是user1,那麼就把公鑰存到 user1 的家目錄 ~。
, c# L0 ^$ k- Y$ \  X+ j8 K! ^
: g6 {3 d* R) b: o
<2> 在 Server端加入剛剛Client端產生的公鑰:

1 D+ Q' l! O2 _. y

4 `5 `6 R( C* @' o2 i4 d用SSH軟體,假設以Putty連到 Server端,user1登入後確認一下 Client 的公鑰 id_rsa.pub 已經被複製進來,如果家目錄沒有 .ssh 目錄就自行建立。
% a4 N/ Z0 O4 X# y1 x: g0 r2 l把 .ssh 目錄的權限改成只有本人才可讀寫,這樣比較安全。

, _9 }  ]: W' u. zchmod 700 ~/.ssh
; e5 k4 f' m0 g0 Y% _& s把剛剛複製過來的 Client 端公鑰,匯入到 Server端的授權清單(authorized_keys)裡。
/ R5 ~8 N( [) x* Jcat ~/id_rsa.pub >> ~/.ssh/authorized_keys/ |+ z( p1 O  X, o$ ]

$ `$ F4 ?1 r; a8 R, y同樣把 authorized_keys 檔案的權限只有本人可讀寫,這樣比較安全。9 N7 ^. J3 V9 l% e) n9 O; L* f. k
chmod 600 ~/.ssh/authorized_keys! h# J  ?8 U  I% k; a

1 x! c* W& L5 |) s8 j/ B
1 \9 G* t5 Y0 Q4 p' |8 E
9 Y1 a/ E) U0 k
結果:: Q5 @6 \9 i  _8 n, i: w
原本登入的時候,會詢問帳號跟密碼。將 Client 端的公鑰加到 Server端 的授權名單後,就可以直接登入不用帳號密碼了,是不是很方便,而且經過SSH加密傳輸更安全。
6 v( B2 w# h4 D: v, `# A特別說明的是:上面的步驟只提供Client端的使用者user1免帳號密碼登入到Server端的使用者user1;如果Client端的使用者user1欲免帳號密碼登入到Server端的使用者root的話,步驟<2>的user1需換成root,即Server端須以root登入,其他動作都一樣
& I2 A& R4 e& q: z) b3 `2 S# G4 b3 G; j, u( }

" B& P( C8 d3 }( VP.S 至於從Windows 免密碼ssh(Secure shell)連到linux server,請參考 http://blog.itist.tw/2015/03/login-ssh-server-without-username-and-password.html
3 g7 o8 c. \1 F2 b8 j
2 V( ?" ?5 f% F3 t1 @
作者: 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.52av.one/) Powered by Discuz! X3.2