gpg --receive-keys 超时但 Wireshark 确认已收到 http 响应

gpg --receive-keys 超时但 Wireshark 确认已收到 http 响应

我正在使用运行 Ubuntu 14.04 的虚拟机,尝试使用 apt-keys 为 nginx 添加密钥。

其中大部分是通过 puppet 自动完成的,但我正在手动完成该过程以查找故障所在。

该机器位于公司代理后面,因此所有流量都通过cntlm路由,这运行良好,到目前为止没有给我带来什么问题。

失败的命令如下:

gpg --debug-all -v --ignore-time-conflict --no-options --no-default-keyring --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62

其结果是:

gpg: requesting key 7BD9... from hkp server keyserver.ubuntu.com gpg: keyserver timed out gpg: keyserver recieve failed: keyserver error

使用 Wireshark 我可以看到实际的 HTTP 请求是

http://keyserver.ubuntu.com:80/pks/lookup?op=get&options=mr&search=0x573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62

对同一 URL 使用 wget 可立即下载所需密钥(无超时/故障)

查看 wireshark 日志,请求和响应看起来完全相同,两种情况下都有传出的 HTTP GET 和传入的 200 OK,每次都是后代理。

我不确定如何深入研究这个问题,并希望能够得到正确的指导以追踪这个问题!

相关内容