一. 使用vscode里的ssh查件连不上远程的解决方法
-
删除Windows上的known_host文件,该文件会在连接之后自动生成,用于验证远程服务器的身份。
-
konwn_host和id_rsa,id_rsa.pub的关系
(1)konwn_host用于客户端验证远程服务器的身份,id_rsa用于服务器验证客户端的身份,具体来说id_rsa生成一个随机签名发送到服务器,服务器用事先报错好的id_rsa.pub来验证该签名,从而实现登录。
(2)所以要实现ssh远程连接必须要保证konwn_host是正确的,不正确就把其删除。
(3)再比如连接github服务器,我们同样需要konwn_host验证github服务器的身份,同时需要github_rsa进行登录。
gitbash中使用ssh代理免密登录记得ssh-keygen加上-f ~/.ssh/密钥对名称,来实现自定义密钥名
(4)需要注意我们要在/etc/profiles中新增下面代码,保证能够每次启动都添加ssh代理ssh_proxy_add(){ eval $(ssh-agent -s) ssh-add ~/.ssh/id_rsa ssh-add ~/.ssh/github_rsa } ssh_proxy_add
二. 修改~/.ssh/config文件实现免密ssh连接
- 把公钥添加到要登录用户的~/.ssh/authorized_keys中
- 修改Windows的~/.ssh/config添加IdentityFile 指定私钥的位置
Host remote
HostName 47.108.186.16
User root
Port 22
IdentityFile "C:\Users\Administrator\.ssh\aliyun_rsa"