我一直在努力让LAMP开发服务器在公司防火墙(McAfee Web Gateway)后面运行。我在通过Vagrant配置的虚拟机VM上有一个Ubuntu / Trusty64映像。我无法为正确的sudo apt-get update
加载“某些”{大多数}存储库。我在所有'security.ubuntu.com trusty-security / *'来源和'archive.ubuntu.com可信赖/ *'来源上收到401认证所需的错误并且都无法获取。因此,大多数sudo apt-get install {whatever}
都失败了,我无法添加必要的PPA存储库来安装我想要的LAMP环境。
我可以为某些事情关闭SSL验证,并且可以安装许多东西 - 但我需要SSL在此环境中正常工作。
深入挖掘,我发现如果我curl -v https://url.com:443
,我会得到
curl(60):ssl证书错误:无法获得本地颁发者证书。
我在/ usr / local / share / ca-certificates /中本地安装了通用软件包'ca-bundle.crt',并运行了sudo update-ca-certificates
,这似乎更新了etc / ssl /中的ca-certificates.crt证书/.
我运行了strace -o stracker.out curl -v https://url.com:443
并按照No-Bugs_Hare here中的建议搜索了失败的stat(),发现curl
在/ etc中寻找'c099e901.0' / ssl / certs /并且它不在那里。谷歌搜索特定的HEXID并不是一件令人高兴的事情。
接下来我尝试strace -o traceOppenSSL.out openssl s_client -connect url.com:443
看看我是否可以获得更多详细信息,但看不出是什么导致
验证错误:num = 20:无法获得本地颁发者证书
后面跟着另外两个错误(我确定所有错误都与第一个错误有关),然后在BEGIN / END块中显示“Server Certificate”,然后是一堆其他元数据。整个会话以
结束验证返回码:21(无法验证第一张证书)。
所以,这不是我的强项,我正在尽我所能尝试让这个VM运行起来。就像我之前说过的那样,我一直在尝试很多事情并且理解大部分问题是我在公司结构中支持迈克菲防火墙。我不知道如何解决问题比我上面解释的更多,但我愿意深入挖掘。
我有几个问题。为什么curl会查找特定的十六进制ID以及我在哪里可以找到或生成野兽?我应该尝试其他故障排除步骤吗? VM是服务器级的Ubuntu安装,所以我只有一个SSH CLI终端,没有WindowManager GUI可以使用它。