思路與上篇(PyCharm遠(yuǎn)程調(diào)試服務(wù)器python代碼 )是一致的,所以端口轉(zhuǎn)發(fā)這部分直接照抄上篇:
成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為原陽等服務(wù)建站,原陽等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為原陽企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。一、端口轉(zhuǎn)發(fā)
對于沒有公網(wǎng)IP的遠(yuǎn)程訓(xùn)練服務(wù)器,需要先配置端口轉(zhuǎn)發(fā),可以用ssh借道有辦公網(wǎng)IP的辦公機(jī)器。
0、公司給配置了一臺(tái)Ubuntu系統(tǒng)的臺(tái)式機(jī)器A,開發(fā)時(shí)想用Windows筆記本B,把遠(yuǎn)程CentOS訓(xùn)練服務(wù)器記為C。
1、首先需要修改臺(tái)式機(jī)A上的ssh配置文件,如果不修改配置的話,將只有機(jī)器A可以訪問訓(xùn)練服務(wù)器C。
$ sudo vim /etc/ssh/sshd_config
添加:
GatewayPorts yes
PasswordAuthentication yes
然后重啟機(jī)器A的sshd服務(wù)使上述配置生效。
$ sudo systemctl restart sshd
2、在訓(xùn)練服務(wù)器C上向機(jī)器A主動(dòng)建立SSH連接,轉(zhuǎn)發(fā)訓(xùn)練服務(wù)器C的22號(hào)端口
3、用ssh命令轉(zhuǎn)發(fā)端口,ssh -NTf -R 轉(zhuǎn)發(fā)端口號(hào):localhost:22 機(jī)器A的用戶名@機(jī)器A的IP
$ ssh -NTf -R 2333:127.0.0.1:22 zhuangweiji@10.220.12*.25*
輸入密碼后就在后臺(tái)運(yùn)行了
4、驗(yàn)證,在機(jī)器B上
$ ssh zhuangweiji@10.220.12*.25*
登陸上的話就證明ssh隧道建立成功了
5、理論上,A和B可以是同一臺(tái)機(jī)器,也就是C可以直接把端口轉(zhuǎn)發(fā)給有pycharm的開發(fā)機(jī)器。不過由于我的開發(fā)機(jī)上下班會(huì)帶著移動(dòng),移動(dòng)過程中SSH不能保持連接,經(jīng)常要重新配置IP,所以選擇了用辦公室的臺(tái)式機(jī)中轉(zhuǎn)。
二、免密登錄
0、端口轉(zhuǎn)發(fā)完成后,在windows機(jī)器B上,本地cmd窗口生成公鑰和密鑰(密鑰默認(rèn)放在C:\Users\用戶名\.ssh下)
ssh-keygen -t rsa -b 4096
1、把公鑰添加到A機(jī)器的公鑰集,法1:
將公鑰id_rsa.pub復(fù)制到機(jī)器A的~/.ssh文件夾下,重命名為id_rsa_x260.pub(我的機(jī)器是x260),并將其追加到A機(jī)器的公鑰集里
cat id_rsa_x260.pub >> authorized_keys
2、把公鑰添加到A機(jī)器的公鑰集,法2:
ssh-copy-id username@10.221.*.*
會(huì)自動(dòng)把公鑰append到A機(jī)器的$HOME/.ssh/authorized_keys里
三、安裝 OpenSSH
0、Windows 10 機(jī)器 上需要安裝 OpenSSH,管理員身份打開 PowerShell
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
四、遠(yuǎn)程開發(fā)調(diào)試
0、打開 VSCode,添加插件 Remote Development, 會(huì)自動(dòng)安裝 Remote-Container, Remote-SSH 及 Remote-WSL 全家桶,也可以只安裝Remote-SSH。
1、安裝好插件之后,右側(cè)邊欄選擇remote explorer,下拉菜單欄選擇SSH target,再點(diǎn)擊configure小齒輪
2、選擇c:\user\用戶名\.ssh\config
,添加如下信息
3、Hostname 填機(jī)器A的ip,port填轉(zhuǎn)發(fā)的端口,填入用戶名,由于已經(jīng)在A機(jī)器上添加公鑰,因此不需要密碼。
保存后,ssh targets
里面就會(huì)出現(xiàn)機(jī)器A,點(diǎn)擊connect to host in new window之后,就可以直接在新窗口中訪問機(jī)器C。
4、插件被分成了本地和遠(yuǎn)程兩部分,本地插件不能在遠(yuǎn)程使用,需要重新安裝
總結(jié)
到此這篇關(guān)于VSCode遠(yuǎn)程開發(fā)調(diào)試服務(wù)器c/c++代碼的文章就介紹到這了,更多相關(guān)VSCode遠(yuǎn)程調(diào)試c/c++代碼內(nèi)容請搜索創(chuàng)新互聯(lián)建站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持創(chuàng)新互聯(lián)建站!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、建站服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。