通过证书签名达到Linux主机SSH无密码访问,使用ssh-keygen与ssh-copy-id来实现快速证书的生成及公钥下发,其中ssh-keygen生成一对密钥,使用ssh-copy-id来下发生成的公钥。具体操作如下:
在主机A(192.168.0.100)创建密钥,执行:
ssh-keygen -t rsa
,有询问直接按回车键即可,将在/root/.ssh/下生成一对密钥,其中id_rsz为私钥,id_rsa.pub为公钥(需要下发到B主机用户.ssh目录,同时要求重名成authorized_keys文件)。(B主机:192.168.0.101)也可以是使用-f参数指定证书生成位置。
ssh-keygen -t rsa -f /root/.ssh/id_rsa #指证书的生成位置
接下来同步公钥文件id_rsa.pub到目标主机,推荐使用ssh-copy-i公钥拷贝工具(也可以使用scp拷贝),命令格式:/usr/bin/ssh-copy-id [-i [identity_file]] [user@] machine。
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.101
检验SSH无密码配置是否成功,运行ssh root@192.168.0.101,如果直接进入root账号提示符,则说明配置成功。
转载于:https://blog.51cto.com/bovin/1884424