vscode免密登陆远程linux服务器,跳板机免密远程登陆

1. 在本地生成公钥,私钥

ssh-keygen -t rsa -b 4096

上面命令在用户根目录的.ssh文件夹下生成id_rsa和 id_rsa.pub 两个文件,id_rsa为私钥文件,id_rsa.pub为公钥文件

2. 拷贝公钥内容到远程服务器的authorized_keys

登陆服务器,打开.ssh文件夹,创建authorized_keys文件,修改文件权限为600,用vim将本地公钥内容拷贝到authorized_keys

cd ~/.ssh
touch authorized_keys
chmod 600 authorized_keys
vim authorized_keys # 这步把id_rsa.pub的内容拷贝进去,保存退出

在这里插入图片描述

3. 修改vscode配置文件,指定私钥位置

在这里插入图片描述
打开上图config文件,添加IdentityFile字段:

Host Server
  HostName 目标机ip
  User liaobaoxin
  IdentityFile "/Users/baoxin/.ssh/id_rsa" #私钥地址

之后按照之前的流程就可以免密远程登陆了

4.跳板机免密登陆

按照步骤2同时在跳板机目标机器的.ssh文件夹内创建authorized_keys文件,将本地公钥内容复制进去,文件权限改为600,修改vscode配置文件,跳板机目标机器都加上IdentityFile [本地私钥地址]

Host JumpMachine
  #跳板机ip
  HostName 跳板机ip
  #登入的用户名,可以不是root
  User liaobaoxin
  #上文提到的sshd服务端口
  Port 22
  IdentityFile "/Users/baoxin/.ssh/id_rsa"
 
#目标机名称,可以随便取
Host TargetMachine
  #目标机ip
  HostName 目标机ip
  #登入的用户名,可以不是root
  User liaobaoxin
  IdentityFile "/Users/baoxin/.ssh/id_rsa"
  #特别注意这里不需要设置端口了
  #起跳转作用的代码,可以直接复制,注意JumpMachine需要与前面跳板机名称相同
  ProxyCommand ssh -W %h:%p JumpMachine

远程登陆目标机器就不用输入密码了

猜你喜欢

转载自blog.csdn.net/baoxin1100/article/details/125161431