有时候当你的网络环境发生了变化,你的虚拟机的网络配置也做了相应的改变,然后发现ssh登录访问不了别的机子了,这时候就需要对ssh也修改一下配置。
1、
1、
假设现在有三台虚拟机A,B,C,而且当前在A机器中。
分别在每台机子上使用ssh-keygen命令来实现创建公钥,需要让你输入东西的话直接按回车,如果问你是否要连接,输入yes。
2、
生成id_rsa.pub文件,然后将这个文件拷贝到你要登录的机子的~/.ssh/中
比如要拷贝到B中,
$ scp id_rsa.pub root@xxx.xxx.xxx.xxx:~/.ssh/rsaA
此时,B中的~/.ssh/目录下会多出一个rsaA文件,这个文件存储的是A机子的公钥。
3、
然后将该公钥写入authorized_keys文件中,这里的authorized_keys是用于认证的公钥文件
$ cat id_rsaA >> authorized_keys
这样A机子就可以通过ssh连接B机子了
$ ssh xxxB
(A机子要连接哪个机子,需要将自己的公钥放到那个机子上)
4、
注意事项:
如果这样还没有连接上,可能的问题就是出在known_hosts文件上,这个文件是ssh自动生成和维护的,它用来保存连接主机的host key,每次连接时都会检查host key是否对应,如果你之前修改过机子的ip地址啥的配置,这个文件中可能还存有你原来的host key,所以每次连接时总是出现错误,所以需要你手动修改一下,将里边原有的内容全部清除即可,之后每次连接时都会自动添加(如果是新的host),第一次登陆时会询问是否继续连接,输入yes即可进入。
——我的第一篇文章,语言组织的不好~,大家见谅,以后会越写越好的~
——我的第一篇文章,语言组织的不好~,大家见谅,以后会越写越好的~