【问题标题】:ssh-agent reset in Windows Subsystem for linux (WSL)用于 linux (WSL) 的 Windows 子系统中的 ssh-agent 重置
【发布时间】:2018-07-09 04:15:47
【问题描述】:

我正在尝试在 WSL 下使用 ssh-agent,但脚本运行后 SSH 参数被擦除

来自 .bashrc(精简版)

eval $(ssh-agent)
ssh-add

ssh-add -l
echo "SSH_AGENT_PID is" $SSH_AGENT_PID
echo "SSH_AUTH_SOCK is" $SSH_AUTH_SOCK

提示输入密码,然后显示指纹和相关变量

在提示符(或单独的脚本)运行后立即

ssh-add -l
echo "SSH_AGENT_PID is" $SSH_AGENT_PID
echo "SSH_AUTH_SOCK is" $SSH_AUTH_SOCK

给予

Could not open a connection to your authentication agent.
SSH_AGENT_PID is
SSH_AUTH_SOCK is

(为了可读性而整理)

代理仍在使用原始 pid 运行(签入顶部) 还尝试了eval $(ssh-agent ) > /dev/nulleval $(ssh-agent -s) 并结合使用

为什么这些会被擦除? ssh-agent 工作正常,直到 Windows 更新 1709 “fall creators update”

信息: linux 版本 4.4.0-43-Microsoft (Microsoft@Microsoft.com) (gcc 版本 5.4.0 (GCC) ) #1-Microsoft Wed Dec 31 14:42:53 PST 2014

从这里转发:https://superuser.com/questions/1278539/ssh-agent-reset-in-windows-subsystem-for-linux-wsl

【问题讨论】:

    标签: windows-subsystem-for-linux ssh-agent


    【解决方案1】:

    对于任何到达这里的人来说,这是一个迟到的答案:https://github.com/Microsoft/WSL/issues/3183

    短版:ssh-agent 转发被 wsl / ubuntu 18.04(或我能想象的任何其他 linux)中的 getsockopt 错误破坏。

    【讨论】:

    • 在 #3183 中报告该问题已在内部人员构建中得到修复。它将在 2018 年秋季推出到常规 Windows。与此同时,解决方法是从 16.04 检索 ssh-agent 二进制文件。在这个问题中有一个如何做到这一点的秘诀。
    【解决方案2】:

    这个问题可以在 Ubuntu 18.04 4.4.0-19041-Microsoft 上通过here 解决:

    [ -x /usr/bin/ssh-agent ] && eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/yourseckey
    

    将其添加到您的.bashrc

    【讨论】:

      猜你喜欢
      • 2021-05-05
      • 2019-07-03
      • 1970-01-01
      • 1970-01-01
      • 2019-06-27
      • 1970-01-01
      • 2017-03-20
      • 2021-12-31
      • 2019-04-20
      相关资源
      最近更新 更多