在vscode远程使用ubuntu开发时,总是经常弹出输入密码或者重新加载页面的提示,这就让正在运行的项目,突然停了,很是烦人,切换项目的时候,也是每次都需要输入密码,烦烦烦!
做一个免密登录,让密码滚蛋!
1、生成Windows公钥
在window机器上打开一个cmd窗口, 执行一下命令
ssh-keygen -t rsa
执行过程中出现的任何提示都不用理会,直接点击回车即可
执行完毕会在C:\Users\Administrator.ssh文件夹下生成如下三个文件
id_rsa是本地私钥
id_rsa.pub是公钥
known_hosts是已知的ip
2、将Windows公钥添加到服务器
将本地的公钥放到服务器路径~/.ssh/
下,直接使用scp工具拖进去就行,或者使用ssh-copy-id
命令,个人觉得指令操作太费劲,直接拖拽比较简单粗暴
进入到ubuntu服务器中
将windows的公钥文件追加到ubuntu的authorized_keys中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3、赋权
此时如果直接使用ssh user@192.168.1.10去连接ubuntu服务器的话,还是会需要输入密码
修改权限
chmod go-w ~/
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
执行完毕之后,就可以直接使用ssh命令连接服务器了
4、vscode修改默认登录用户
此时使用vscode开发会发现,这里登录的用户名默认是administrator,不是我们ubuntu中的用户,这里因为没有config文件
需要在本机.ssh目录下创建一个config文件,配置内容如下
Host 192.168.1.10
HostName 192.168.1.10
User username
Port 22
IdentityFile C:/Users/Administrator/.ssh/id_rsa
保存之后,就可以使用vscode免密登录ubuntu进行远程开发了