ssh免认证配置
先粗略解释一下公钥和私钥的原理:
这是一种非对称加密。公钥可以分发给任何人,私钥只有自己保留。举例来说明:
有A,B,C三台计算机。
- A想发消息给B,C的话,A需要将自己的公钥分发给B和C。发送消息时,使用自己的私钥对消息进行加密,B和C收到A发的消息时使用A的公钥对消息进行解密。
- A想与B之间进行单独通信。A必须拥有B的公钥,A使用B的公钥对消息进行加密,B拿到消息后,使用自己的私钥进行解密。
私钥一般放在指定的文件之中,如id_rsa。公钥一般放在id_rsa.pub文件中。
- 首先,使用如下命令生成密钥
ssh-keygen -t rsa
- 使用如下命令将公钥id_rsa.pub追加到授权的key里面去
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- 修改权限
chmod 600 ~/.ssh/authorized_keys
按上述命令配置后,主机连接自己不需要输入密码
接下来需要将公钥复制到所有需要免密登陆到的计算机上
- 使用如下命令将公钥复制到所有slave机器上
scp ~/.ssh/id_rsa.pub tosit@192.168.101.210:~/
- 复制成功后,使用ssh连接到slave机器上
创建.ssh文件夹
mkdir ~/.ssh
修改权限
chmod 700 ~/.ssh
追加授权文件
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
- 配置成功后,可使用ssh验证一下
ssh tosit@192.168.101.