转发:SecureCRT使用OpenSSH公钥

做个记录,摘抄别人的。

http://hi.baidu.com/wangpeng1314/item/23d04833cea410179dc65eeb

 

ssh的公钥登录始终有问题,SecureCRT生成的公钥传上去,无 效,用ssh-keygen生成的密钥对用SecureCRT也没法使用,后来google到一篇文章 说密钥格式不兼容导致,但是如何处理这种不兼容的密钥文件,却没了下文。 归根结底SecureCRT使用的是SSH2格式的公钥,而OpenSSH是使用的OpenSSH格式的 公钥。 ssh-keygen -i -f pub_keyfile 的 -i -f 选项可以把SSH2兼容格式的未加密公 钥,转换为OpenSSH兼容格式。 ssh-keygen -e -f pub_keyfile 则可以把OpenSSH格式的公钥转换为SSH2格式的。
1、修改/etc/ssh/sshd_config,设置 PubkeyAuthentication yes; AuthorizedKeysFile .ssh/authorized_keys
然后执行/etc/rc.d/sshd reload使设置生效
2、在自己的电脑上使用SecureCRT的Create Identity File按钮为自己创建一个密 钥对。假设分别保存为my_dsa_key和my_dsa_key.pub,后一个为公钥。
3、不管用什么办法,将my_dsa_key.pub上传到FreeBSD的用户目录的.ssh目录下。
4、在服务器上执行ssh-keygen -i -f my_dsa_key.pub > authorized_keys,生成 了一个新文件authorized_keys
5、在SecureCRT里面设置登录模式为PublicKey,并选择私钥作为identity file。
6、可以自动登录了。
其实上面的步骤是使用SecureCRT生成的密钥对来进行登录验证的,也可以使用ssh -keygen生成的密钥对来验证,只是生成密钥对之后,必须将格式转换成SecureCRT 使用的SSH2格式的!

------------------------------------------------
下面这些步骤中,对于格式的转换仅限于低于SecureCRT5.5版,SecureCRT5.5版开始就直接支持OpenSSH格式的公钥私钥

在Linux上用OpenSSH上生成公钥私钥
# ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)
默认在/root/.ssh下生成私有key文件名为:id_rsa,公有key文件名为:id_rsa.pub

将OpenSSH 格式的 id_rsa.pub 转换成 SecureCRT 格式的 id_rsa.pub 
# ssh-keygen -e -f id_rsa.pub > securecrt_rsa.pub

将上述生成的 id_rsa 和securecrt_rsa.pub 下载到windows机器上的同一个目录下并且将id_rsa改名为securecrt_rsa(注意:这里公钥和私钥必须在同一个目录下,且公钥私钥文件名必须相同(后缀不算))

在SecureCRT里面设置登录模式为PublicKey,在选择PublicKey文件时,选中securecrt_rsa.pub,即可登录到OpenSSH服务端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值