Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1125625
  • 博文数量: 165
  • 博客积分: 5957
  • 博客等级: 大校
  • 技术积分: 2015
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-24 15:04
文章分类

全部博文(165)

文章存档

2014年(10)

2013年(14)

2012年(9)

2011年(22)

2010年(17)

2009年(17)

2008年(26)

2007年(34)

2006年(16)

我的朋友

分类: LINUX

2007-11-19 14:29:00

1.相同发布版本的ssh之间建立通道

一般排除权限上&key换行的问题,很少会发生什么问题,但也有一些非常诡异的问题,针对这些问题
我们可以使用以下两种方式来做详细的诊断。

ssh客户端程序的debug模式:
cmd:ssh -v [1|2|3]
一般情况下ssh的客户端都可以使用-v的方式来开启debug模式,后面的num是debug的level,数字越大,debug的信息越详细。
通过客户的debug可以看到整个ssh验证的过程,用的那个私钥文件,权限是否正确等等,基本上客户端的ssh问题应该都能够诊断出来。

sshd服务器端程序的debug模式
cmd:sshd -d [1|2|3] -p port
在一些用客户端debug模式仍然没有发现问题的情况下,可以试试起一个debug模式的sshd在其他port上,然后在客户端用ssh -vvv -p port来连,服务器端的debug模式的sshd会把相关的验证&连接的信息都在屏幕上显示出来,加上ssh客户端的debug,基本上所有的ssh问题就都可以查个究竟了。

2.Openssh&商业版的ssh2之间建立通道

openssh&商业版的ssh2的通道问题,之前都按照openssh或者是商业版的ssh的方式来构建两者之间的ssh通道,发现检查权限和各项配置都没问题,但通道死活不通仍需要密码。通过debug发现无法打开私钥文件,检查私钥文件及权限完全正常。问题在哪里?查找相关文档发现openssh的key和商业版本的ssh2生成的key格式是不一样的,ssh-keygen命令提供两种不同的key文件的转换,转换方法如下:
$ ssh-keygen
You must specify a key type (-t).
Usage: ssh-keygen [options]
  -e          Convert OpenSSH to IETF SECSH key file.
  -i          Convert IETF SECSH to OpenSSH key file.
例1:需要转换Openssh的私钥id_dsa为商业版ssh2的私钥:ssh-keygen -e -f id_dsa > id_dsa_ssh2
例2:需要转换商业版ssh2的公钥id_dsa_ssh2.pub为Openssh的公钥:ssh-keygen -i -f id_dsa_ssh2.pub >id_dsa.pub
例3:需要把openssh的公钥转换为商业版ssh2的公钥:ssh-keygen -i -f id_dsa_ssh2.pub >id_dsa.pub
例4:需要把商业版ssh2的私钥转换为商业版Openssh的私约:ssh-keygen -i -f id_dsa > id_dsa2
然后再通过openssh或者商业版ssh2的build通道方式,建立ssh通道即可。

3.解锁某个用户:

root下passwd -f -k -u dragoon即可。

阅读(3599) | 评论(0) | 转发(0) |
0

上一篇:POSIX

下一篇:shell模板

给主人留下些什么吧!~~