口令登录
1 client请求登录server
2 server发送自己的public key给client
3 client将加密的密码发送给server
4 server用私钥解密然后验证
怎么确认server的真实性? -> known_hosts
免密登录
1 client将自己的public key追加到server的authorized_keys中
2 client拿自己的私钥登录server
2 server收到请求后,随机生成一个字符串发给client
3 client用自己的私钥加密后发给server
4 server用存储的公钥解密然后比较验证
参考 https://www.jianshu.com/p/33461b619d53
- 在控制主机上执行(和在哪里执行无关,一般在client执行) ssh-keygen -t rsa 创建密钥
- 执行 ssh-copy-id -i ~/.ssh/id_rsa.pub user@host (输入密码)把公钥拷贝到远程机器
网友评论