vscode使用插件remote-ssh远程连接服务器,并配置免密登录

基本情况

vscode的remote-ssh插件挺好用的,就是当换新机器时,总是忘了怎么配置,干脆开一贴好好记录下
本地机器:Windows10
云服务器:腾讯云服务器,ubuntu18

配置服务器ssh

1.放通端口,一般ssh默认是22
vscode使用插件remote-ssh远程连接服务器,并配置免密登录_第1张图片

2.创建root账户

sudo passwd root
#passwd: password updated successfully设定root密码,输入两次后,出现这个代表ok

3.允许root登录和使用密码登录

sudo vi /etc/ssh/sshd_config

#找到Authentication,将如下两项改为yes,没有的话就自己加
# Authentication:
PermitRootLogin yes
PasswordAuthentication yes

4.重启ssh

sudo /etc/init.d/ssh restart

密码登录

在本地打开终端,用ubuntu和root账户应该都可以连接了(腾讯云服务器默认账户为ubuntu)

ssh -p 22 [email protected]
ssh -p 22 [email protected]

但每次都要输密码,太麻烦了,下面配置免密登录

免密登录

1.在本地创建公钥、私钥
1)建议先去用户文件夹/.ssh/,清空这个目录,之前的失败操作可能会有影响,不存在这个目录就不用管了

2)本地终端:

ssh-keygen -t rsa -C "邮箱"
#之后全部回车,默认就行

2.根据公钥在服务器创建密钥对
打开用户文件夹/.ssh/id_rsa.pub,复制全部内容,在腾讯云服务器创建密钥
vscode使用插件remote-ssh远程连接服务器,并配置免密登录_第2张图片
然后绑定密钥与实例,这边需要服务器关机才能绑,绑完记得开机

3.使用ubuntu账户免密登录
完成刚刚的绑定后,只能通过ubuntu账户免密登录,root账户不行,坑啊

打开vscode,remote-ssh配置文件
vscode使用插件remote-ssh远程连接服务器,并配置免密登录_第3张图片
Host:随便起
HostName:公网IP
Port:我用的默认22端口
IdentityFile:私钥地址
vscode使用插件remote-ssh远程连接服务器,并配置免密登录_第4张图片
这时候就可以连上了,不过默认用ubuntu账户,我喜欢root,服务器就自己一个人用…

4.使用root账户免密登录
把公钥(用户/.ssh/id_rsa.pub)上传到服务器上,直接在vscode里,拖到服务器上,或者用scp命令将id_rsa.pub上传到服务器
然后在服务器终端:

su root
rm -rf /root/.ssh #免得又有啥奇怪的残留,重建一遍
mkdir /root/.ssh
mv id_rsa.pub /root/.ssh/
cd /root/.ssh/
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
sudo /etc/init.d/ssh restart

大功告成,这时候就可以把remote-ssh配置文件里的User改成root,并且直接免密登录了
vscode使用插件remote-ssh远程连接服务器,并配置免密登录_第5张图片

你可能感兴趣的:(ssh,腾讯云,vscode)