茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1672195 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_0168.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2016/4/27 9:59:20
[超易] 兩行指令搞定 Linux SSH登入免密碼

用ssh登入通常需要密碼,有些情況下SSH不想要輸入密碼,(例如:想要寫script進行ssh遠端操作,一來ssh連線輸入密碼的地方又必須是interactive的沒辦法在script裡面寫密碼,二來是密碼用明碼紀錄在script實在是不大安全)。本篇用最快速的方式介紹SSH免登入的設定方式,本次要介紹的方式就是在Client端產生一組金鑰,然後把把公開金鑰複製到Server的信任名單中。
關鍵知識
其實關鍵點只有下面這兩點(注意,這兩點所說的檔案是放在兩台不同的主機喔):
要連接ssh的client端必須產生一組主機使用者的金鑰組。金鑰組可以在~/.ssh中找到,檔名是id_rsa(私鑰)、id_rsa.pub(公鑰)。(ps. rsa是加密演算法的名子,也可能利用其他的演算法對金鑰加密,如dsa等)。如果沒有產生金鑰組則必須產生一組,方法詳見Step1。一般來說,公鑰的檔名會像是這樣:
    ~/.ssh/id_rsa.pub

把公鑰複製到Server端的信任名單中。一般來說會放在下面檔案中:
    ~/.ssh/authorized_keys

後面的範例是從金鑰產生到匯入信任清單的示範,如果有需要的話可以參考。
Step 1. 在Client端產生金鑰組
使用下面指令就可以產生金鑰,所有設定都用預設的就可以了,不需要特別設置。特別注意的是"Enter passphrase"的地方請直接壓enter,這樣才能不用輸入密碼。
    ssh-keygen -t rsa

金鑰組檔案會預設放在~/.ssh/id_rsa是私鑰(private key)、~/.ssh/id_rsa.pub是公鑰(public key)。金鑰組務必保存好權限不要開太大,否則會造成安全性的問題。
2. 將公鑰的內容放置在Server的信任清單中
只要在client端下下面這個指令,這樣金鑰就會輸入進Server的信任清單中了。實在是很簡單吧。
    cat ~/.ssh/id_rsa.pub | ssh server-user@server-host “cat >> ~/.ssh/authorized_keys"

另外特別還是要補充一下,因為金鑰如果可供寫入的話十分危險。所以許多人會將 ~/.ssh裡面的id_rsa.pub id_rsa authorized_keys三個檔案設定成唯獨,所以如果不成功的話,可能是server端的user把authorized_keys設定成唯獨。所以可以用下面這個指令先把authorized_keys檔案的讀寫先打開再下Step2的命令:
    ssh server-user@server-host “chmod 600 ~/.ssh/authorized_keys"

設定完畢後記得再把權限改回來
    ssh server-user@server-host “chmod 400 ~/.ssh/authorized_keys"


原文出處:[超易] 兩行指令搞定 Linux SSH登入免密碼 - LinXblog
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|