时效性
本篇撰写时间为2021.12.14,由于计算机技术日新月异,博客中所有内容都有时效和版本限制,具体做法不一定总行得通,链接可能改动失效,各种软件的用法可能有修改。但是其中透露的思想往往是值得学习的。
本篇前置:
- ExpRe[19] 手动构建Docker镜像[2] 远程ssh开发
https://www.cnblogs.com/minor-second/p/15668169.html
sftp
安装插件和配置
sftp是提供了安全性保证的ftp.
我们目标是使用sftp传输一个私钥给一个服务器A
,然后再在该服务器A
上使用该私钥获取云服务器B
上的文件
vscode中Ctrl + Shift + X
搜索并安装SFTP插件版本如图- Open Folder一个你想要作为工作空间的文件夹
- vscode中
Ctrl + Shift + P
用SFTP: Config
命令,对插件进行配置
在https://github.com/liximomo/vscode-sftp
上可以看到示例配置
- 为了传输私钥,我们可以把
~/.ssh
作为SFTP连接的目标,即
上传和下载
Ctrl + Shift + P
,SFTP: Download Project
- 选择文件夹,输入密码,就可以成功把之前指定的目录
~/.ssh
中的东西下下来
- 往里面拷入我们想上传的私钥
Ctrl + Shift + P
,SFTP: Upload Project
可以看到我们把新的文件传上去了
局限性:截至2021.12.17,这个issue
https://github.com/liximomo/vscode-sftp/issues/915#issuecomment-828452687
似乎没有被解决。程序的行为不能得到保证(事实上,当报错的时候,也有可能已经成功传输了。不妨登录远程主机看一看)
scp
先ssh
连接到刚刚的服务器A
,cd
到想要的地方
- 输入命令
scp -i <私钥文件> <用户>@<B的公网IP>:<B上文件路径> .
,把待拷贝文件拷到A
的当前目录- 注:如果出现
则需要chmod 600 <私钥文件>
可以参见IncRe[0]对权限的讲解
- 注:如果出现