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

如何解决`ddev auth ssh`与YubiKey配合使用的报错问题?

解决ddev auth ssh与YubiKey配合使用的问题

问题背景

你的.ssh目录结构如下:

/home/<redacted>/.ssh/
├── config
├── id_rsa_yubikey.pub
└── known_hosts

由于YubiKey的私钥存储在硬件设备中而非本地目录,运行ddev auth ssh时,默认命令会尝试查找本地私钥并执行ssh-add,导致报错:

Docker command 'docker [run -it --rm --volumes-from=ddev-ssh-agent --user=1001 --entrypoint= --mount=type=bind,src=/home/<redacted>/.ssh,dst=/tmp/sshtmp drud/ddev-ssh-agent:v1.20.0-built bash -c cp -r /tmp/sshtmp ~/.ssh && chmod -R go-rwx ~/.ssh && cd ~/.ssh && ssh-add $(file * | awk -F: "/private key/ { print \$1 }")]' failed: exit status 1

解决方案

方法1:手动执行简化版容器命令,跳过私钥添加步骤

默认ddev auth ssh的核心是把本地.ssh目录复制到ddev-ssh-agent容器中,你可以手动执行去掉ssh-add的命令,只完成目录复制和权限设置:

docker run -it --rm --volumes-from=ddev-ssh-agent --user=1001 --entrypoint= --mount=type=bind,src=/home/<redacted>/.ssh,dst=/tmp/sshtmp drud/ddev-ssh-agent:v1.20.0-built bash -c "cp -r /tmp/sshtmp ~/.ssh && chmod -R go-rwx ~/.ssh"

方法2:配置ddev容器共享本地ssh-agent

如果本地ssh-agent已经加载了YubiKey的密钥(可通过ssh-add -l验证),可以让ddev容器直接使用本地的ssh-agent套接字:

  1. 在项目的.ddev/config.yaml中添加以下配置:
    web_environment:
      - SSH_AUTH_SOCK=/run/host-services/ssh-auth.sock
    
  2. 重启ddev服务:
    ddev restart
    
    这样容器会直接使用本地已加载YubiKey密钥的ssh-agent,无需在容器内执行ssh-add。

方法3:确保容器内支持YubiKey的PKCS#11认证

如果你的.ssh/config中配置了PKCS#11 Provider(比如使用OpenSC),需要让ddev-ssh-agent容器能访问YubiKey的硬件和对应模块:

  1. 先在本地确认.ssh/config的配置,类似:
    Host *
      PKCS11Provider /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
    
  2. 运行容器时挂载YubiKey设备和PKCS#11模块目录:
    docker run -it --rm --volumes-from=ddev-ssh-agent --user=1001 --entrypoint= --mount=type=bind,src=/home/<redacted>/.ssh,dst=/tmp/sshtmp --mount=type=bind,src=/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so,dst=/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so --device=/dev/ttyACM0 drud/ddev-ssh-agent:v1.20.0-built bash -c "cp -r /tmp/sshtmp ~/.ssh && chmod -R go-rwx ~/.ssh"
    
    注意:/dev/ttyACM0是YubiKey的设备路径,可能需要根据实际情况调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 12:10:45