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

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

作者: IT_man    時間: 2018-9-13 17:00
標題: 免密碼直接登入遠端的 SSH Server
本帖最後由 IT_man 於 2018-9-13 18:28 編輯
1 w: {+ \- _+ O
' D* l: \% p+ z! l' k5 E1 O2 L1 T5 L本篇主要介紹從linux client 免帳號密碼ssh(Secure shell)連到linux server之詳細過程。步驟:
, }- @; x: |8 W) j' P! U
& B- X0 v5 r4 |% r5 H& N, P* V<1> 在Client端產生Client金鑰:% U. A7 H# `5 h8 y$ t
4 H$ f2 f' c3 x+ F: Q: f$ I9 b- R
假設在client端以使用者 user1 登入,家目錄的 .ssh 目錄裡,目前只有一個 known_hosts 檔案,這個是用來記錄曾經連線到別台的server的 SSH Server 公鑰。9 n0 J4 b% ~# z) |- Z, a5 W. H
再來,產生一組這台client的 SSH 公鑰+私鑰,預設是使用 RSA 演算法 ==> ssh-keygen 指令 :
- j, ^3 W7 ?: ]+ j$ M6 L6 _

$ Z8 ^+ h( D& U# @: Q& E( n/ _
" k; {7 I7 g. ?% J7 W- d
: |, n  c& l- [
' y/ m$ L& I$ {0 D; z1 J9 L+ U過程有三個選項要使用者設定,不必修改,全部直接按 Enter 用預設值就好了。9 i! n; t$ e6 c) v7 `4 k0 K
1. Enter file in which to save the key - 輸入金鑰的檔案路徑及名稱,預設是 ~/.ssh/id_rsa。% q  {2 I  ]& I, L
2. Enter passphrase - 輸入自訂密碼。
' W! K' M2 X- ^) @3. Enter same passphrase again - 再輸入一次自訂密碼。* O( F* I+ t# V( c* o
- R, c$ U2 E- Y$ u$ p, b4 z. e( V
此時它就會產生 id_rsa 私鑰及 id_rsa.pub 公鑰。公鑰的內容,其實就只是一堆的加密過的文字而已。  n6 `& T5 ^, C+ {
使用 scp 或 ftp 或你習慣的檔案傳輸工具將 Client 端的公鑰 ~/.ssh/id_rsa.pub 複製到 Server端裡,帳號假設也是user1,那麼就把公鑰存到 user1 的家目錄 ~。
0 b1 t# E' q% s+ k, C  J& J4 [

7 j6 ^3 j7 C( ]<2> 在 Server端加入剛剛Client端產生的公鑰:

' w4 A5 [- s/ |# \5 z
' b1 Z7 q9 J9 T7 _
用SSH軟體,假設以Putty連到 Server端,user1登入後確認一下 Client 的公鑰 id_rsa.pub 已經被複製進來,如果家目錄沒有 .ssh 目錄就自行建立。" j' ^# m8 P$ b4 S
把 .ssh 目錄的權限改成只有本人才可讀寫,這樣比較安全。

& y9 o) p& [# H$ k0 Y1 ]9 }chmod 700 ~/.ssh2 R6 g8 T3 T! n6 J7 e
把剛剛複製過來的 Client 端公鑰,匯入到 Server端的授權清單(authorized_keys)裡。
: q% H; z/ [  L6 I5 [: Icat ~/id_rsa.pub >> ~/.ssh/authorized_keys: J3 _' b) B/ q+ s
) H9 p# o. j( K- a) ]
同樣把 authorized_keys 檔案的權限只有本人可讀寫,這樣比較安全。
# B( `, e) r  b0 C/ S; a' ?2 x* lchmod 600 ~/.ssh/authorized_keys2 n! b" G- ]- q! Y
6 \6 M. u$ [& E' f* g& M% u$ ]

; G, M* W1 \. U

" `& d% V$ @; d8 ]$ V- ]$ ^結果:
% B$ d" Z$ l/ z, M; Q原本登入的時候,會詢問帳號跟密碼。將 Client 端的公鑰加到 Server端 的授權名單後,就可以直接登入不用帳號密碼了,是不是很方便,而且經過SSH加密傳輸更安全。
' N! {; g$ p/ P; b# f4 e5 t特別說明的是:上面的步驟只提供Client端的使用者user1免帳號密碼登入到Server端的使用者user1;如果Client端的使用者user1欲免帳號密碼登入到Server端的使用者root的話,步驟<2>的user1需換成root,即Server端須以root登入,其他動作都一樣
* z2 h! y8 k9 S3 f4 t- l
  E4 V. ]3 B! W: O1 h
, r, |( D. \2 O/ _/ Z1 \
P.S 至於從Windows 免密碼ssh(Secure shell)連到linux server,請參考 http://blog.itist.tw/2015/03/login-ssh-server-without-username-and-password.html
" h7 }' o7 |+ f7 S( S8 m& w$ ^( b! y: F3 Y) c% t2 w

作者: 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