You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure自动化账户中使用Paramiko建立SSH连接时遇OSError错误求助

问题描述

在Azure自动化账户中运行Python脚本,使用paramiko通过SFTP传输数据,本地运行正常,但云环境执行时调用ssh.connect()报错,错误栈如下:

Traceback (most recent call last):
  File "C:\Temp\vjtgkdb0.eh1\xxxxxxx", line 587, in <module>
    generate_files()
  File "C:\Temp\xxxxx", line 50, in generate_files
    ssh.connect(hostname=ftp_host, port=ftp_port, username=ftp_user, password=ftp_pwd)
  File "C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\paramiko\client.py", line 459, in connect
    self._auth(
  File "C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\paramiko\client.py", line 717, in _auth
    self._agent = Agent()
  File "C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\paramiko\agent.py", line 403, in __init__
    conn = get_agent_connection()
  File "C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\paramiko\agent.py", line 230, in get_agent_connection
    elif win_openssh.can_talk_to_agent():
  File "C:\WPy64-3800\python-3.8.0.amd64\lib\site-packages\paramiko\win_openssh.py", line 32, in can_talk_to_agent
    return any(name == n.lower() for n in os.listdir(dir_)
OSError: [WinError 1] Incorrect function: '\\\\.\\pipe\\'

连接代码:

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=ftp_host, port=ftp_port, username=ftp_user, password=ftp_pwd)
解决方案

这个错误是因为paramiko默认会尝试连接SSH代理,但Azure自动化账户的Windows环境中没有SSH代理服务,导致遍历管道目录时出错。解决方法是在connect调用中显式禁用代理:

  • 修改ssh.connect方法,添加allow_agent=False参数,跳过SSH代理自动检测:
ssh.connect(
    hostname=ftp_host,
    port=ftp_port,
    username=ftp_user,
    password=ftp_pwd,
    allow_agent=False  # 关键:禁用SSH代理检测
)
  • 额外优化:如果仍有问题,可同时添加look_for_keys=False,避免尝试查找本地密钥文件(Azure自动化环境中不存在这类文件):
ssh.connect(
    hostname=ftp_host,
    port=ftp_port,
    username=ftp_user,
    password=ftp_pwd,
    allow_agent=False,
    look_for_keys=False
)

修改后,paramiko会直接使用提供的用户名密码认证,适配Azure自动化的运行环境。

内容的提问来源于stack exchange,提问作者Linx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 13:35:30