image.png

说明:

ssh:远程登陆的安全外壳协议
两种身份验证机制:
1,用户名+密码验证
2,密钥验证

1.ssh-keygen 是公钥私钥的非对称加密方式:
1.1.公钥:用于向外发布,任何人都能获取。
1.2.私钥:要自己保存,切勿给别人
2.公钥私钥加解密的原理
2.1.客户端把自己的公钥存放到要链接的远程主机上(相当于我们把自己的 id_rsa.pub 存放到 git 服务器上)
2.2.客户端要链接远程主机的时候,远程主机会向客户的发送一条随机的字符串,客户的收到字符串之后使用自己的私钥对字符串加密然后发送到远程主机,远程主机根据自己存放的公钥对这个字符串进行解密,如果解密成功证明客户端是可信的,直接允许登录,不在要求登录。

方法一:用户名+密码验证

ssh 192.168.33.1 ,接着输入密码
如果hosts中配置了主机名和ip的映射,那么
ssh 主机名

方法二:密钥验证

假设实现A ssh 访问 B
麻烦点的做法:
第一步:
在主机A中,运行
ssh-keygen

ssh-keygen -t rsa
注: -t rsa 为默认,可写可不写
第二步:
将/root/.ssh/ 目录下生成的公钥id_rsa.pub 传递到主机B中
scp /root/.ssh/id_rsa.pub 192.168.33.2:/tmp/

第三步:
在主机B中,
cat id_dsa.pub >> ~/.ssh/authorized_keys
即可完成

方法三:一键

  1. ssh-keygen -t rsa 先生成钥<br />ssh-copy-id 192.168.33.2 <br /> 将公钥从A传到B的对应.ssh目录,并自动拷贝到authroized_keys中。<br />