免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1621 | 回复: 5
打印 上一主题 下一主题

想问问关于ssh的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-10 10:36 |只看该作者 |倒序浏览
最近在做可以不用密码就可以远程登录的SSH,找了一些资料并按照上面说的步骤一步步的做:在主机A和B上都启动sshd,先在主机A上生成一对密钥,私钥文件放在$home/.ssh/id_rsa,然后把公钥文件传到主机B上的用户主目录$/home/.ssh/id_rsa.pub, 再在主机B上把id_rsa.pub的内容加到$home/.ssh/authorized_keys文件中,然后主机A在登录主机B就可以不要密码了,是这样的吗?可是我作了好几次都不成功,还是要提示输入密码,有没有人做的啊?请大家指教!

论坛徽章:
0
2 [报告]
发表于 2006-03-10 10:41 |只看该作者
生成密钥的时候不能输入密码~

论坛徽章:
0
3 [报告]
发表于 2006-03-10 11:06 |只看该作者
没有输入密码,我直接按的回车,都试过了

论坛徽章:
0
4 [报告]
发表于 2006-03-10 14:32 |只看该作者
检查authorized_keys的权限,必须是644。

论坛徽章:
0
5 [报告]
发表于 2006-03-10 16:24 |只看该作者
楼上说的很有道理,马上去实验,非常感谢!

论坛徽章:
0
6 [报告]
发表于 2006-03-13 00:04 |只看该作者

看看能不能解决你的问题

第一步是生成 SSH 的公共密钥和专用密钥。 SSH 协议有两个版本;版本 1 使用 RSA,版本 2 使用 DSA,因此我们将创建这两种类型的密钥,以确保 SSH 能够使用任一版本。 ssh-keygen 程序将根据传递给它的参数生成任一类型的公共密钥和专用密钥。
当您运行 ssh-keygen 时,将提示您输入一个用于保存密钥的位置。 当提示时只需按 Enter 接受默认值。 随后将提示您输入一个口令短语。 输入您能记住的口令,然后再次输入该口令进行确认。 当您完成以下步骤后,在 ~/.ssh 目录中将会有四个文件: id_rsa、id_rsa.pub、id_dsa 和 id_dsa.pub。 id_rsa 和 id_dsa 文件是您的专用密钥,千万不要告诉任何人。 id_rsa.pub 和 id_dsa.pub 文件是您的公共密钥,必须将其复制到集群中其他每个主机上。
在每个主机上,以 oracle 用户身份登录:
mkdir ~/.ssh
chmod 755 ~/.ssh
/usr/bin/ssh-keygen -t rsa
/usr/bin/ssh-keygen -t dsa

现在,必须将每个主机上的公共密钥文件 id_rsa.pub 和 id_dsa.pub 的内容复制到其他每个主机的 ~/.ssh/authorized_keys 文件中。

只需在第一个主机上,以 oracle 用户身份登录
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
cp ~/.ssh/authorized_keys ~/.ssh/linux1.authorized_keys

只需在第二个主机上,以 oracle 用户身份登录
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
cp ~/.ssh/authorized_keys ~/.ssh/linux2.authorized_keys

在第一个主机上,以 oracle 用户身份登录
ftp 从linux2主机取得linux2.authorized_keys
cat ~/.ssh/linux2.authorized_keys >> ~/.ssh/authorized_keys
chmod 644 ~/.ssh/authorized_keys

在第二个主机上,以 oracle 用户身份登录
ftp 从linux1主机取得linux1.authorized_keys
cat ~/.ssh/linux1.authorized_keys >> ~/.ssh/authorized_keys
chmod 644 ~/.ssh/authorized_keys

请注意,当您使用 ssh 第一次访问远程主机时,其 RSA 密钥将是未知的,从而将提示您确认是否希望连接该主机。 SSH 将记录该远程主机的 RSA 密钥,并在以后连接该主机时不再做出相关提示。
在第一个主机上,以 oracle 用户身份登录
ssh linux1
ssh linux2

在第二个主机上,以 oracle 用户身份登录
ssh linux1
ssh linux2

建立用户等效性
最后,在生成密钥、复制文件并重复地输入口令和口令短语(安全性有意思吧?)所有这些工作完成之后,您就可以建立用户等效性了。 在建立用户等效性时,不会再提示您输入口令。
在第一个主机上,以 oracle 用户身份登录
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add

在第二个主机上,以 oracle 用户身份登录
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add

(请注意,用户等效性仅为当前会话建立。 如果您切换到其他会话或注销并重新登录,则必须再次运行 ssh-agent 和 ssh-add 才能重新建立用户等效性。)

测试连通性
如果一切均设置正确,则您现在就可以使用 ssh 在其他集群主机上不必输入口令而登录、执行程序和复制文件了。 通过在远程集群主机上运行诸如 date 等简单命令来验证用户等效性:
ssh linux2 hostname
linux2
测试每个方向上所有服务器的连通性是非常重要的。 这样会确保当 OUI 在 CRS 和数据库软件安装期间试图复制文件时不会出现类似以下的消息。 该消息只有在远程节点上第一次执行操作时才会出现,因此通过测试连通性,您不仅确保了远程操作的正常运行,还完成了初始的安全密钥交换。

To ensure that X11 forwarding will not cause the installation to fail, create a user-level SSH client configuration file for the Oracle software owner user, as follows:
Using any text editor, edit or create the ~oracle/.ssh/config file.
Make sure that the ForwardX11 attribute is set to no. For example:
Host *
      ForwardX11 no
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP