通过证书签名达到Linux主机SSH无密码访问,使用ssh-keygen与ssh-copy-id来实现快速证书的生成及公钥下发,其中ssh-keygen生成一对密钥,使用ssh-copy-id来下发生成的公钥。具体操作如下:
在主机A(192.168.0.100)创建密钥,执行:
1
|
ssh
-keygen -t rsa
|
,有询问直接按回车键即可,将在/root/.ssh/下生成一对密钥,其中id_rsz为私钥,id_rsa.pub为公钥(需要下发到B主机用户.ssh目录,同时要求重名成authorized_keys文件)。(B主机:192.168.0.101)也可以是使用-f参数指定证书生成位置。
1
|
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。
1
|
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.101
|
检验SSH无密码配置是否成功,运行ssh root@192.168.0.101,如果直接进入root账号提示符,则说明配置成功。
本文转自 SoulMio 51CTO博客,原文链接:http://blog.51cto.com/bovin/1884424,如需转载请自行联系原作者