CentOS配置SSH无密码登录需要3步:
当主机A要免密登录时,其实也可以用A 生成ssh-keygen生成之后直接 A ssh-copy-id B
但是总是出现还得输入密码的情况,还要说没有代理什么的,按照下面这个方法亲测成功
生成公钥和私钥
导入公钥到认证文件,更改权限
测试
1.生成公钥和私钥
ssh-keygen -t dsa -P '' -f ~/.ssh/id_rsa
默认在 ~/.ssh目录生成两个文件:
id_rsa :私钥
id_rsa.pub :公钥
2.导入公钥到认证文件
2.1 导入本机
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
2.2 导入要免密码登录的服务器
首先将认证文件复制到服务器
scp ~/.ssh/authorized_keys xxx@主机名:/home/xxx/.ssh/
注意:一定要将每一台机器上创建的/home/xxx/.ssh/给改权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys