我在 Windows 上使用 KeePass2 和 KeeAgent,并尝试使用 Putty 和 pscp 连接到 Linux 机器。
我已根据以下说明配置了 KeeAgent:
http://lechnology.com/software/keeagent/usage/quick-start/
该密钥最初是在Linux上生成的,并复制到Windows。
当我使用 putty 连接到 Linux 机器时,系统提示我输入密码。
为了调试,我安装了 pscp,以便可以使用 -v 选项运行来获取调试信息。
以下是 pscp 的输出:
C:\Users\Marty>pscp -v [email protected]:opentp.sh .
Looking up host "pluto.lan"
Connecting to NNN.NNN.NNN.NNN port 22
Server version: SSH-2.0-OpenSSH_5.3
Using SSH protocol version 2
We claim version: SSH-2.0-PuTTY_Release_0.63
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-256
Host key fingerprint is:
ssh-rsa 2048 NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN:NN
Initialised AES-256 SDCTR client->server encryption
Initialised HMAC-SHA-256 client->server MAC algorithm
Initialised AES-256 SDCTR server->client encryption
Initialised HMAC-SHA-256 server->client MAC algorithm
Pageant is running. Requesting keys.
Pageant has 1 SSH-2 keys
Using username "marty".
Trying Pageant key #0
Server refused our key
Using SSPI from SECUR32.DLL
Attempting GSSAPI authentication
GSSAPI authentication request refused
[email protected]'s password:
Sent password
Server unexpectedly closed network connection
Fatal: Server unexpectedly closed network connection
有什么系统的方法来调试这个问题?
答案1
我假设您没有在服务器上的文件中添加公钥authorized_keys
(因为您没有提到这一点,KeeAgent 手册也没有提到)。
确保将 PuTTYgen 中显示的公钥添加到authorized_keys
文件中。
看准备进行公钥认证了解详情。
请注意,您可以通过右键单击窗口标题并选择事件日志。您不必为此使用 pscp。请参阅PuTTY 事件日志。