伺服器遠端連線
天下大事 必作於細
rsa金鑰配置
本地裝置
利用git生成一對rsa公私金鑰 keygen
windows的話,預設生成目錄在 C:\Users\使用者名稱.ssh
id_rsa為私鑰檔案
id_rsa.pub為公鑰檔案
私鑰檔案為你的登入的身份證,登入時選擇這個檔案即可,具體見下文。
公鑰檔案需要放到伺服器authorized_keys當中
遠端伺服器
- 進入相應使用者的.ssh資料夾, cd ~/.ssh即可
裡面應該有authorized_keys、id_rsa、id_rsa.pub、know_hosts等是個檔案
我們只需要關心authorized_keys這個檔案即可。 - 開啟authorized_keys檔案,把剛剛本地生成的公鑰檔案的內容貼進來即可。
- 確保服務上允許RSA金鑰登入,這裡需要root許可權
sudo vim /etc/ssh/sshd_config
//檢視檔案中的這兩項是否都是yes,第一項是允許RSA金鑰登入,第二項是允許公鑰認證
RSAAuthentication yes
PubkeyAuthentication yes
這樣,金鑰配置就完成了。
當然,有一個問題,就是你的伺服器下面並不存在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