1. 程式人生 > 其它 >遠端伺服器連線(金鑰驗證,跳板機)

遠端伺服器連線(金鑰驗證,跳板機)

伺服器遠端連線

天下大事 必作於細

rsa金鑰配置

本地裝置

利用git生成一對rsa公私金鑰 keygen
windows的話,預設生成目錄在 C:\Users\使用者名稱.ssh
id_rsa為私鑰檔案
id_rsa.pub為公鑰檔案
私鑰檔案為你的登入的身份證,登入時選擇這個檔案即可,具體見下文。
公鑰檔案需要放到伺服器authorized_keys當中

遠端伺服器

  1. 進入相應使用者的.ssh資料夾, cd ~/.ssh即可
    裡面應該有authorized_keys、id_rsa、id_rsa.pub、know_hosts等是個檔案
    我們只需要關心authorized_keys這個檔案即可。
  2. 開啟authorized_keys檔案,把剛剛本地生成的公鑰檔案的內容貼進來即可。
    這樣,金鑰配置就完成了。

當然,有一個問題,就是你的伺服器下面並不存在authorized_keys這個檔案,甚至連.ssh資料夾都沒有
那麼,你自己建.ssh資料夾和authorized_keys檔案然後再做一樣操作即可,不過需要注意,資料夾和檔案的許可權是有要求的:

chmod 700 .ssh
chmod 644 authorized_keys

下面,根據平臺不同分成mobaxterm和vscode對本地設定私鑰以及跳板機進行說明

mobaxterm

遠端連線

跳板機

為什麼需要跳板機,這是為了實現從外網網址跳到內網伺服器的需求。

vscode

遠端連線

Host xxxxx
    HostName xx.xx.xx.xx
    User xxx
    Port xx
    IdentityFile 私鑰路徑

Host為伺服器名稱,可以隨便起
HostName是伺服器ip地址
User 使用者名稱
Port 埠號
IdentityFile 指明私鑰檔案路徑

跳板機

為什麼需要跳板機,這是為了實現從外網網址跳到內網伺服器的需求。

Host public_net
    HostName xx.xx.xx.xx
    User xxx
    Port xx
    IdentityFile 私鑰路徑

Host inter_net
    HostName xx.xx.xx.xx
    User xxx
    Port xx
    IdentityFile 私鑰路徑
    ProxyCommand ssh -W %h:%p public_net

ProxyCommand 能夠指明通過另一個ip做跳板,其中ssh需要絕對執行路徑,如C:\Windows\System32\OpenSSH\ssh.exe