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

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

作者: IT_man    時間: 2018-9-13 17:00
標題: 免密碼直接登入遠端的 SSH Server
本帖最後由 IT_man 於 2018-9-13 18:28 編輯 ) @( X# I' j/ R) l& ^" @8 D0 I

* H# a9 d, F- g4 }! E( M本篇主要介紹從linux client 免帳號密碼ssh(Secure shell)連到linux server之詳細過程。步驟:% C  i% Y8 y: x' v

- D2 \8 _; H  ?$ |+ o6 q! Y% a& g<1> 在Client端產生Client金鑰:3 S6 ^7 |6 U! `+ x! }

- M7 ?% L; x6 p& G假設在client端以使用者 user1 登入,家目錄的 .ssh 目錄裡,目前只有一個 known_hosts 檔案,這個是用來記錄曾經連線到別台的server的 SSH Server 公鑰。+ d& Y* M0 o: f# q
再來,產生一組這台client的 SSH 公鑰+私鑰,預設是使用 RSA 演算法 ==> ssh-keygen 指令 :

* e  K- M( W1 Y0 N! V
, ?& b" O9 X8 O5 C- y' W7 Z
; ~3 N1 ^2 [. r- `

* d! r. b/ a5 }* Z- h
0 D& A$ D3 q+ W; y9 l過程有三個選項要使用者設定,不必修改,全部直接按 Enter 用預設值就好了。2 o; q' I# }+ Q% E* m6 ]+ U0 k* j
1. Enter file in which to save the key - 輸入金鑰的檔案路徑及名稱,預設是 ~/.ssh/id_rsa。1 }$ }, Q9 t/ o& V4 o4 |& x; E- k
2. Enter passphrase - 輸入自訂密碼。
0 B/ r# P8 p3 L( b# o8 j3. Enter same passphrase again - 再輸入一次自訂密碼。
: W7 t* Q/ e* _: p6 R! L% |1 H: ]1 Q" Z, D4 S& h
此時它就會產生 id_rsa 私鑰及 id_rsa.pub 公鑰。公鑰的內容,其實就只是一堆的加密過的文字而已。
0 I3 K( D, @% \6 Q, Y使用 scp 或 ftp 或你習慣的檔案傳輸工具將 Client 端的公鑰 ~/.ssh/id_rsa.pub 複製到 Server端裡,帳號假設也是user1,那麼就把公鑰存到 user1 的家目錄 ~。

& K* d4 P5 _  z2 S9 g# t) U; D8 i& p/ O( U0 Y" }% l4 Z0 f. s1 ~
<2> 在 Server端加入剛剛Client端產生的公鑰:
  ?: [" u5 X' w

# [2 Q0 a6 k. m- h3 d$ t( l用SSH軟體,假設以Putty連到 Server端,user1登入後確認一下 Client 的公鑰 id_rsa.pub 已經被複製進來,如果家目錄沒有 .ssh 目錄就自行建立。5 Z; Y4 D3 l) I% `
把 .ssh 目錄的權限改成只有本人才可讀寫,這樣比較安全。

1 j1 R) y, A* k* U/ Schmod 700 ~/.ssh& R  o% B8 W& W' J
把剛剛複製過來的 Client 端公鑰,匯入到 Server端的授權清單(authorized_keys)裡。
, A4 U6 O! h5 g1 \) ecat ~/id_rsa.pub >> ~/.ssh/authorized_keys
6 k# r" `& q% ]. _
  b  e; \- ^/ h+ i! k, k. J; Y同樣把 authorized_keys 檔案的權限只有本人可讀寫,這樣比較安全。  f2 _) N* i, b) b
chmod 600 ~/.ssh/authorized_keys
4 _- P5 q% \) p& x: g; W
7 U. u( B( c  o. n0 z! ~5 l* h( _% G2 X: v& A
4 N2 o7 c$ H6 }% n& i9 h
結果:
( t+ l1 S( M# L: O  }8 Q8 c原本登入的時候,會詢問帳號跟密碼。將 Client 端的公鑰加到 Server端 的授權名單後,就可以直接登入不用帳號密碼了,是不是很方便,而且經過SSH加密傳輸更安全。2 x% \- e7 `1 H+ x
特別說明的是:上面的步驟只提供Client端的使用者user1免帳號密碼登入到Server端的使用者user1;如果Client端的使用者user1欲免帳號密碼登入到Server端的使用者root的話,步驟<2>的user1需換成root,即Server端須以root登入,其他動作都一樣
! X5 Z( ?% I4 b6 w6 z& \+ ~9 W) I" Q/ [/ V; P$ S+ X: E
4 n( S% K/ W$ a/ ?* s+ `# A5 F2 @
P.S 至於從Windows 免密碼ssh(Secure shell)連到linux server,請參考 http://blog.itist.tw/2015/03/login-ssh-server-without-username-and-password.html
( q: `7 q$ i2 b1 @$ E4 w  Z& D6 N

作者: 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.itech.casa/) Powered by Discuz! X3.2