相关疑难解决方法(0)

帕拉米科"未知服务器"

我正在尝试开始使用Paramiko库,但是当我尝试连接以下简单程序时,库就会抛出异常:

import paramiko
ssh = paramiko.SSHClient()
ssh.connect('127.0.0.1', username='boatzart', password='mypassword')
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

Traceback (most recent call last):
File "test.py", line 6, in <module>
ssh.connect('127.0.0.1')
File "build/bdist.macosx-10.7-intel/egg/paramiko/client.py", line 316, in connect
File "build/bdist.macosx-10.7-intel/egg/paramiko/client.py", line 85, in missing_host_key
paramiko.SSHException: Unknown server 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

无论我尝试哪种服务器都会发生这种情况

python macos ssh paramiko

27
推荐指数
5
解决办法
3万
查看次数

与 Paramiko 的无密码 SSH 连接失败,而 SSH 可以正常连接

我打算在客户端和服务器之间使用 SSH 密钥创建使用无密码连接。

使用 paramiko,我最终遇到AuthenticationException。通过 Popen 使用标准 SSH,我可以毫无问题地连接

对于 Paramiko,我使用以下代码:

client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.load_system_host_keys()
client.connect(ssh_server, username=ssh_user)
Run Code Online (Sandbox Code Playgroud)

对于同样的情况,我可以使用 SSH:

cmd = 'ssh -o GSSAPIAuthentication=no -o ForwardX11=no {}@{} echo 0 > /dev/null'.format(ssh_user, ssh_server)
process = subprocess.Popen(md, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
process.communicate()
Run Code Online (Sandbox Code Playgroud)

我正在使用 Python 3.4.6 和 Paramiko 2.4.1。

更多细节:

  • 我能够在不同的客户端上与 Paramiko 建立连接
  • 在此特定客户端上,ssh 模拟的用户与发起呼叫的用户不同。

Paramiko 调试输出

client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.load_system_host_keys()
client.connect(ssh_server, username=ssh_user)
Run Code Online (Sandbox Code Playgroud)

SSH 调试:(使用 ssh -v ssh_user AT ssh_server)

cmd = 'ssh -o GSSAPIAuthentication=no -o ForwardX11=no {}@{} echo 0 > …
Run Code Online (Sandbox Code Playgroud)

python ssh paramiko

3
推荐指数
1
解决办法
5537
查看次数

标签 统计

paramiko ×2

python ×2

ssh ×2

macos ×1