标签:消息 重复 操作 不重复 远程 客户 shell 秘钥 sts
ssh客户端使用的是Xshell,windows环境。
第一种方式,用户名密码方式
原理如下:
Xshell操作如下:
1.
2.
3.
第二种方式基于秘钥的登录方式
现在拿服务器A(192.168.204.192)访问服务器B(192.168.204.100)举例:
Xshell操作如下:
1.在服务器A端生成RSA的公钥和私钥,通过 ssh-keygen -t rsa 命令
如下图所示id_rsa为私钥,id_rsa.pub为公钥。
2.将公钥放到服务器B中,一般是在用户根目录下的.ssh/目录下,通过命令 ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.204.100
在服务器B端的.ssh/目录下有authorized_keys+know_hosts,这两个文件。如下:
authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥,上面提到的A端在生成自己的公私钥之后,将公钥追加到服务器B端的authorized_keys文件后面。如下:
know_hosts : 已知的主机公钥清单,这个作为A端和B端都会自动生成这个文件,每次和远端的服务器进行一次免密码ssh连接之后就会在这个文件的最后追加对方主机的信息(不重复)。如下:
到这里配置就设置结束了。
现在服务器A访问服务器B,直接通过命令 ssh root@192.168.204.100
如下:
因为设置的是单向的,A到B,若现在服务器B要访问A,是需要输入密码的,如下:
如果嫌每次连接的时候很麻烦
我们可以利用 ssh 的用户配置文件 config 管理 多个免密码ssh 会话。ssh 的用户配置文件是放在当前用户根目录下的 .ssh 文件夹里(~/.ssh/config,不存在则新创建一个),其配置写法如下:
Host 别名 HostName 主机名 Port 端口 User 用户名 IdentityFile 密钥文件的路径
如下图实例:
配置完后我们就可以通过这种方式登录了:‘
标签:消息 重复 操作 不重复 远程 客户 shell 秘钥 sts
原文地址:https://www.cnblogs.com/gexiaoshan/p/9404424.html