我有一个配置好的 Ubuntu Server 9.10 盒子sshd
。我有两台安装了 Windows 7 专业版和 Putty 的计算机。前几天,两台计算机都能够通过 Putty 和 Plink 连接 Ubuntu 服务器。我已经sun-java6-jre
在 Ubuntu 服务器上安装了,现在遇到了一个奇怪的问题。第一台 Windows 7 计算机仍然可以使用 Putty GUI 和命令行进行连接plink
。第二台计算机可以通过 Putty GUI 连接,但如果我发出plink
在第一台计算机上完美运行的命令:
plink www.hostname.tk -i c:\users\username\documents\key\private.ppk
我收到login
提示,输入与第一台计算机上相同的用户名,并收到以下奇怪的错误消息:
bash: www.hostname.tk: command not found
我看不出我的 Windows 7 计算机之间有任何区别 :(。ppk
使用的密钥是相同的(我多次复制了它)。hostname
并且username
是相同的。有人知道为什么会发生这样的事情吗?我该怎么做才能排除故障并修复它?
更新:
不显示的日志plink -v
:
Offered public key
Offer of public key accepted
Authenticating with public key "imported-openssh-key"
Access granted
Opened channel for session
Started a shell/command
bash: www.hostname.tk: command not found
Server sent command exit status 127
Disconnected: All channels closed
答案1
您可以尝试运行plink -v
并发布该输出吗?下面我将命令更改为 echo $PATH:
C:\Documents and Settings\dave>plink 10.0.1.1 -v /bin/echo $PATH
Looking up host "10.0.1.1"
Connecting to 10.0.1.1 port 22
Server version: SSH-2.0-OpenSSH_5.1p1 Debian-6ubuntu2
We claim version: SSH-2.0-PuTTY_Release_0.60
Using SSH protocol version 2
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-256
Host key fingerprint is:
ssh-rsa 2048 4a:84:5d:a8:a2:29:95:c0:4e:92:d1:38:68:e6:2b:5f
Initialised AES-256 SDCTR client->server encryption
Initialised HMAC-SHA1 client->server MAC algorithm
Initialised AES-256 SDCTR server->client encryption
Initialised HMAC-SHA1 server->client MAC algorithm
login as: dmo
[email protected]'s password:
Sent password
Access granted
Opened channel for session
Started a shell/command
Server sent command exit status 0
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Disconnected: All channels closed
答案2
好吧,看到 PC 1 可以同时使用两者进行连接,可以说您的服务器仍然在运行并且没有出现异常。
如果我是你,我会去研究 PC 2,看看它与 PC 1 有什么不同。新的防火墙更新,不同的防火墙软件?
答案3
我怀疑 、 、 、 或 中的某些内容/etc/profile
被~/.bash_profile
错误~/.bash_login
地~/.profile
作为/etc/bash.bashrc
命令或或的结果~/.bashrc
执行。在一行中(或在(一组额外的)反引号 或 内)查找其中一个。如果是这种情况,我不知道为什么在一台客户端计算机上会这样,而在另一台计算机上不是这样,也不知道这与您安装 Java 有什么关系。$HOSTNAME
`hostname`
$(hostname)
$()