准备
使用VS Code的插件:Remote-SSH连接Ubuntu服务器时,每次都要输入密码,有点麻烦,就考虑自动方法
电脑上安装了git,可以使用Git Bash的ssh-keygen
命令生成RSA公私钥:
1 | ssh-keygen -t rsa |
输入密钥文件名称:id_rsa_example
,会在C:/Users/[username]/.ssh
下生成私钥:id_rsa_example
和公钥:id_rsa_example.pub
。
配置服务器
假设服务器的IP为:
192.168.1.1
将公钥文件拷贝到服务器,使用powershell
1 | type $env:USERPROFILE/.ssh/id_rsa_example.pub | ssh -l root 192.168.1.1 "cat >> ~/.ssh/authorized_keys" |
这里使用-l
指定了用户名(login_name
),运行时需要输入一次服务器密码,该命令将公钥文件的内容拷贝到了服务器的~/.ssh/authorized_keys
文件中。
配置客户端
客户端需要将私钥文件添加到配置中,配置文件位于C:/Users/[username]/.ssh/config
文件中:
1 | Host example |
测试
1 | ssh example |
直接在ssh
命令后面接上配置文件中的别名,即可连接服务器。