【发布时间】:2015-02-24 21:32:30
【问题描述】:
我对实现客户端-服务器通信完全陌生,我正在尝试从一个使用 Python 的 paramiko 模块的非常基本的示例开始。我要做的就是从一个终端窗口向我机器的本地主机发送一个简单的字符串,然后在另一个终端窗口中从那里检索它。
这是我目前所拥有的:
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname='localhost', username='myun', password='mypwd')
stdin, stdout, stderr = ssh.exec_command('echo "Hello"')
print stdout
ssh.close()
得到的是这样的:
Traceback (most recent call last):
File "./ssh.py", line 13, in <module>
ssh.connect(hostname='localhost', username='myun', password='mypwd')
File "/usr/local/lib/python2.7/site-packages/paramiko/client.py", line 251, in connect
retry_on_signal(lambda: sock.connect(addr))
File "/usr/local/lib/python2.7/site-packages/paramiko/util.py", line 270, in retry_on_signal
return function()
File "/usr/local/lib/python2.7/site-packages/paramiko/client.py", line 251, in <lambda>
retry_on_signal(lambda: sock.connect(addr))
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
socket.error: [Errno 61] Connection refused
谁能告诉我这里哪里出错了?为什么我无法使用正确的用户名和密码连接到 localhost?
【问题讨论】:
-
您是否在本地运行 SSH 服务器?
-
嗯...好问题。我如何确定是否是这种情况?
标签: python ssh localhost paramiko