Nat*_*ate 5 linux ssh ssh-agent windows-10 windows-subsystem-for-linux
我正在尝试在 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
Run Code Online (Sandbox Code Playgroud)
提示输入密码然后显示指纹和相关变量
在提示符(或单独的脚本)运行之后直接
ssh-add -l
echo "SSH_AGENT_PID is" $SSH_AGENT_PID
echo "SSH_AUTH_SOCK is" $SSH_AUTH_SOCK
Run Code Online (Sandbox Code Playgroud)
给
Could not open a connection to your authentication agent.
SSH_AGENT_PID is
SSH_AUTH_SOCK is
Run Code Online (Sandbox Code Playgroud)
(整理可读性)
代理仍在使用原始 pid 运行(在顶部检查)也尝试eval $(ssh-agent ) > /dev/null
并eval $(ssh-agent -s)
结合使用
为什么这些会被抹掉?ssh-agent 工作正常,直到 Windows 更新 1709“秋季创作者更新”
信息:linux 版本 4.4.0-43-Microsoft (Microsoft@Microsoft.com)(gcc 版本 5.4.0 (GCC))#1-Microsoft Wed Dec 31 14:42:53 PST 2014
尝试添加-s
参数,如:
eval $(ssh-agent -s)
Run Code Online (Sandbox Code Playgroud)
该参数描述为:
-s在标准输出上生成 Bourne shell 命令。如果 SHELL 看起来不像是 csh 风格的 shell,则这是默认设置。
我正在复制另一个类似线程中给出的答案(/sf/answers/3565996031/)。
尝试调整会话设置是没有用的。
完整答案:https : //github.com/Microsoft/WSL/issues/3183
简短版本:ssh-agent 转发被 wsl/ubuntu 18.04(或我能想象的任何其他 linux)中的 getsockopt 错误破坏。
归档时间: |
|
查看次数: |
14075 次 |
最近记录: |