天天看点

Red Hat集群实现SSH无密码互联Red Hat自带有openSSH,不需要像其他Linux一样需要安装SSH。

Red Hat自带有openSSH,不需要像其他Linux一样需要安装SSH。

打开Terminal,更换权限为root(su - root)

第一步:

使用  #ssh-keygen -t dsa  ,使用这个命令之后会提示是否输入密码,这里不输入密码,一路enter下去就可以了,最后会在用户目录下的隐藏文件夹.ssh下生成id.dsa和id_dsa.pub两个文件,分别为私钥和公钥。

也可以直接使用#ssh -keygen -t dsa -P '' -f ~/.ssh/id_dsa,这样就无需再被问询了。

这里说一下SSH加密有两种方式:dsa和rsa,对应的命令一样只是在-t指示加密类型时一个是dsa,另一个是rsa

第二步:

将公钥追加到authorized_keys文件中,也在.ssh目录下,没有也没关系,使用#cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys命令即可

第三步:

将authorized_keys拷贝到其他需要被SSH无密码访问的机器上(注意这里是被访问,也就是如果你想从1无密码访问2,那么就得在1上生成密钥对,然后将公钥丢到2上)

#scp ~/.ssh/authorized_keys root@(other machine ip):/~/.ssh/

scp作用是linux从本机复制文件到远程机器,可以在scp后面加上-r,表示传输文件夹

到这里配置就完成了,下面可以测试下是否可以无密码访问,测试方法可以先用本机访问本机,使用#ssh localhost,这里第一次会提示你访问的host无法连接,是否仍继续连接,输入yes,然后输入密码,连接上之后,使用#exit可以退出,在此连接就无需密码了。

同样的你可以测试一下连接远程机器(你丢authorized_keys文件的机器),过程和localhost一样。如果可以说明配置成功。

说明:

文章中“~”指代相对路径,把你的RHEL中的路径替换即可,一般为/root/.ssh,有些用户一开始会没有该文件夹,在ssh -keygen生成密钥后会自动生成为隐藏文件夹,可以使用ls -a命令看到

继续阅读