標籤:登陸 簡單 ref home server 支援 gen open put
Windows到Ubuntu免密登陸
- 首先檢查C盤使用者檔案夾下是否有.ssh檔案夾,同時檢查該檔案夾中是否有至少兩個檔案,一個是xxx_rsa和xxx_rsa.pub,一個是私密金鑰檔案一個是公開金鑰檔案。
- 如果沒有的話,執行ssh-keygen -t rsa -C “你自己設定的名稱或者郵箱地址”來產生新的秘鑰,斷行符號後會提示你輸入密碼,直接斷行符號,不要設定密碼了,這樣在(1)中檔案夾就會有公開金鑰和私密金鑰檔案了
- 公開金鑰和私密金鑰檔案有了之後,需要將公開金鑰上傳到需要免密登陸的伺服器上,這個時候需要兩個軟體,一個是cmder可以支援部分Linux命令,還有一個xshell來上傳檔案。
- 先開啟xshell,建立一個你需要免密登陸伺服器的串連,在登陸的時候我遇到一個問題,就是明明是正確的密碼但是無法登陸遠程伺服器
- 這個時候我們需要修改一下服務端ssh的配置,先下載啟動遠端連線服務工具sudo apt-get install openssh-server,完成後重啟下ssh服務sudo /etc/init.d/ssh restart
- 修改/etc/ssh/sshd-config檔案,PubkeyAuthentication yes修改為no,PasswordAuthentication no修改為yes就可以了,然後再次重啟下服務,這個時候你就可以使用xshell通過密碼串連上伺服器了
- 然後在xshell下按ctrl+alt+f建立檔案傳輸,這時候會提示你輸入密碼(因為剛才咱們把設定檔改為通過密碼登陸,如果沒改的話會提示你添加公開金鑰),這個是xshell的命令列開頭會有sftp的字樣
- 使用命令put 本地公開金鑰地址 遠程伺服器你要將公開金鑰放置的地址,這個時候查看伺服器,我的公開金鑰會在home檔案夾或者根資料夾下
- 找到公開金鑰檔案之後放到/root/.ssh檔案夾下,如果.ssh檔案夾不存在可以自己建立
- 執行 cat 公開金鑰檔案名稱 >> authrized_keys,建立authrized_keys檔案並且將公開金鑰檔案內容複寫到裡面
- 然後將第四步改變的ssh配置再改回去,之後重啟下ssh服務sudo /etc/init.d/ssh restart
這個時候你就可以使用在cmder中使用ssh -i 私密金鑰檔案路徑 伺服器使用者名稱@伺服器位址 這樣的方式來免密登陸了
ps:Linux和Mac不需要這麼麻煩,使用ssh-copy-id -i 公開金鑰檔案名稱 使用者名稱@伺服器位址,後面簡單配置下就可以了,網上有很多教程就不贅述了
Windows到Ubuntu免密登陸