原理
遇事先问为什么。
密钥对一般指的就是使用非对称加密,要进行非对称加密,需要先在本机生成一个公钥,一个私钥,他们是成对出现的。
私钥:不可分享,只有自己知道
公钥:可以共享给要通信的机器
为什么我们可以通过密钥对信任对方?是因为私钥加密的内容只有公钥可以解密,同理公钥加密的内容只有私钥可以解密。而私钥又是不可分享的,所以除非别人知道你的私钥,否则就无法伪造报文。(假如你伪造了一个假报文,公钥是解密不了的,所以也过不了认证)
操作步骤
- [可选] 首先通过
ssh-keygen
命令在本机创建密钥对,如果之前创建过了则省略此步骤 - 通过ssh-copy-id命令将本机公钥添加到要登录的linux主机可行列表
# 执行命令
ssh-copy-id -i ~/.ssh/id_rsa.pub -p 22 root@linux_ip
# 输入linux主机密码
- 然后就可以通过以下命令快速登录linux主机不需要每次输入密码了
ssh root@linux_ip
- 更方便的做法是,添加一个别名。这里假设你本机是CentOS系统,如果是Mac的话是~/.zprofile文件:
# 打开文件
vim ~/.bashrc
# 在文件中添加别名
alias ecs='ssh -p 22 root@linux_ip'
# 使别名生效
source ~/.bashrc
# 使用,在命令行输入ecs则自动登录系统
ecs
扩展
假如你有多台机器,可以在机器间互相建立这种登录关系,方便在一台机器上快速登录到另一台机器。