如果发现两台机器做公钥认证却发现怎么也授权不能,可以看看两台机器的ssh版本。
ssh -v
查看一下两台机器的版本是否类似,有可能出现的情况是一台机器采用的openssh,而另外一台机器采用的SSH2,其实openssh和ssh2是两回事,公钥格式也不相同。
SSH2的公钥写法是~/.ssh2/authorization
Key xxx.xxx
xxx.xxx为SSH2的pubkey文件名。
如果想从openssh转SSH2可以使用命令:
ssh-keygen -e -f ~/.ssh/id_dsa.pub > ~/.ssh/id_dsa_ssh2.pub
从SSH2转openssh可以使用命令:
ssh-keygen -i -f ~/.ssh/id_dsa_1024_a.pub > ~/.ssh/id_dsa_1024_a_openssh.pub
其实SSH的种类很多,查了下资料有如下解释:
SSH A generic term referring to SSH protocols or software products. SSH-1 The SSH protocol, Version 1. This protocol went through several revisions, of which 1.3 and 1.5 are the best known, and we will write SSH-1.3 and SSH-1.5 should the distinction be necessary. SSH-2 The SSH protocol, Version 2, as defined by several draft standards documents of the IETF SECSH working group. SSH1 Tatu Ylönen's software implementing the SSH-1 protocol; the original SSH. Now distributed and maintained (minimally) by SSH Communications Security, Inc. SSH2 The "SSH Secure Shell" product from SSH Communications Security, Inc. This is a commercial SSH-2 protocol implementation, though it is licensed free of charge in some circumstances. ssh (all lowercase letters) A client program included in SSH1, SSH2, OpenSSH, F-Secure SSH, and other products, for running secure terminal sessions and remote commands. In SSH1 and SSH2, it is also named ssh1/ssh2, respectively. OpenSSH The product OpenSSH from the OpenBSD project, which implements both the SSH-1 and SSH-2 protocols. OpenSSH/1 OpenSSH, referring specifically to its behavior when using the SSH-1 protocol. OpenSSH/2 OpenSSH, referring specifically to its behavior when using the SSH-2 protocol. |
这篇文章不错(http://blog.urdada.net/2008/01/03/70/),推荐阅读!