tid=88071& 本帖最後由 IT_man 於 2018-9-13 18:28 編輯 5 h! L2 C1 p4 d& B$ `
( y4 M( a, }# j6 q9 @' s! ^+ ~
本篇主要介紹從linux client 免帳號密碼ssh(Secure shell)連到linux server之詳細過程。步驟:
! a8 Z5 p0 R: l7 k- s* M9 s% r8 S; X0 Q% U: U. m6 r, w
<1> 在Client端產生Client金鑰:0 Q; @. l% U3 N3 B6 O" h) u
/ V/ j! Q/ o5 a$ a: A; |
假設在client端以使用者 user1 登入,家目錄的 .ssh 目錄裡,目前只有一個 known_hosts 檔案,這個是用來記錄曾經連線到別台的server的 SSH Server 公鑰。
- \& z% {9 `$ z$ W5 k再來,產生一組這台client的 SSH 公鑰+私鑰,預設是使用 RSA 演算法 ==> ssh-keygen 指令 :
8 u6 h4 T7 r: G) A0 O! c
; f$ y5 _" k8 H( S5 a# v
3 _ W9 V. Q; L* h) C
3 X, _& k* s! J Y. b" Q
9 C) T2 b( W) B
過程有三個選項要使用者設定,不必修改,全部直接按 Enter 用預設值就好了。- r. n9 J, V3 f0 X
1. Enter file in which to save the key - 輸入金鑰的檔案路徑及名稱,預設是 ~/.ssh/id_rsa。
# E) ^9 U& F2 v2. Enter passphrase - 輸入自訂密碼。
- `* l4 X( {' k! ]4 `6 M! w: }3. Enter same passphrase again - 再輸入一次自訂密碼。. r/ I r1 T% R3 v9 n
; z7 \0 L$ U3 p$ E7 Y( p4 E此時它就會產生 id_rsa 私鑰及 id_rsa.pub 公鑰。公鑰的內容,其實就只是一堆的加密過的文字而已。
7 L- L" ?0 |) k. ^使用 scp 或 ftp 或你習慣的檔案傳輸工具將 Client 端的公鑰 ~/.ssh/id_rsa.pub 複製到 Server端裡,帳號假設也是user1,那麼就把公鑰存到 user1 的家目錄 ~。
% [2 `1 ]$ w! \* b$ ~( e0 i* U `& C
<2> 在 Server端加入剛剛Client端產生的公鑰:' h5 n: _: @- m4 d0 O# @, V
" ~5 t' f$ y; Z& N( f5 g0 O用SSH軟體,假設以Putty連到 Server端,user1登入後確認一下 Client 的公鑰 id_rsa.pub 已經被複製進來,如果家目錄沒有 .ssh 目錄就自行建立。; A/ \2 j8 K. t, k r5 V
把 .ssh 目錄的權限改成只有本人才可讀寫,這樣比較安全。
7 |9 B9 J1 D( i9 Uchmod 700 ~/.ssh
7 M$ A/ X( s( e1 Y* i: W* g把剛剛複製過來的 Client 端公鑰,匯入到 Server端的授權清單(authorized_keys)裡。
' A2 ~! i. y# _# y Vcat ~/id_rsa.pub >> ~/.ssh/authorized_keys9 d' ]4 Z- l) F6 I# g- X
$ N( V# b+ c% s; N7 }
同樣把 authorized_keys 檔案的權限只有本人可讀寫,這樣比較安全。
% p D8 l1 p2 N9 D7 r/ D! |chmod 600 ~/.ssh/authorized_keys8 X/ f- E5 G7 G4 v; b5 a
' G; u; Q- R3 E8 @$ X
& K+ s; k0 T+ K0 _
. r. B6 d7 `; w. X# J9 _$ U結果:
7 `- ?/ B/ l0 Z原本登入的時候,會詢問帳號跟密碼。將 Client 端的公鑰加到 Server端 的授權名單後,就可以直接登入不用帳號密碼了,是不是很方便,而且經過SSH加密傳輸更安全。 V+ b) M# D, Y5 p
特別說明的是:上面的步驟只提供Client端的使用者user1免帳號密碼登入到Server端的使用者user1;如果Client端的使用者user1欲免帳號密碼登入到Server端的使用者root的話,步驟<2>的user1需換成root,即Server端須以root登入,其他動作都一樣1 v9 o" w z2 i6 q1 N9 `; w
, h! I3 a7 U- `, a' [; ^' H- P2 h
& f, O6 R9 C& h9 L. DP.S 至於從Windows 免密碼ssh(Secure shell)連到linux server,請參考 http://blog.itist.tw/2015/03/login-ssh-server-without-username-and-password.html. Z" v! y! M" k+ s" G2 n! H6 \
! s" j# V, Y+ Y+ r; _
|