通过两种方式登录ssh
1.用户名密码 用户名为在远程服务器上的用户密码为对应密码
2.密钥对登录 密钥对应公钥应在对应用户的/home/用户/.ssh/authorized_keys中登录时通过本文件验证
本文主要是通过xshell密钥对连接远程服务器或者虚拟机ssh
xshell为连接端,应该生成密钥对将公钥导入远程服务器 不能将远程的密钥导入xshell(自己理解)
是通过xshell生成公钥然后导入服务器或虚拟机
将生成的公钥导入到/home/.ssh/authorized_keys中。这样才能连接
配置/etc/ssh/sshd_config 文件
另外我们要注意,.ssh目录的权限为700,其下文件authorized_keys和私钥的权限为600。否则会因为权限问题导致无法免密码登录。我们可以看到登陆后会有known_hosts文件生成。
图中为不允许密码登录(虚拟机可通阿里云不通)
图中为允许密钥登录并且设定公钥的路径(阿里云和虚拟机可通)
允许空密码登录(自己理解但是均没有试验通也许是无密码密钥登录)
下图为xshell生成公钥的方式。 在xshell中主机密钥为公钥,用户密钥为密钥。
https://blog.csdn.net/ownmylife/article/details/77923473
这里是另一个大佬的文章,但是第一种通过阿里云下载得来的密钥无法登录 ,不知道是什么原因,可能是我的阿里云服务器是专有网络吧
https://blog.csdn.net/universe_hao/article/details/52296811
这是两个linux服务器之间通过无密码密钥登录另一台服务器的文章