我怎样才能让LWPvalidation我所连接的服务器的证书是由受信任的机构签署的,并发布给正确的主机? 据我所知,它甚至不检查证书声称是为我连接到的主机名称。 这似乎是一个主要的安全漏洞(特别是最近的DNS漏洞)。 更新:原来我真正想要的是HTTPS_CA_DIR ,因为我没有一个ca-bundle.crt。 但是HTTPS_CA_DIR=/usr/share/ca-certificates/有窍门。 我无论如何都认为答案是可以接受的,因为它已经足够接近了。 更新2:事实certificate, HTTPS_CA_DIR和HTTPS_CA_FILE只适用于如果您使用Net :: SSL作为基础的SSL库。 但是LWP也可以和IO :: Socket :: SSL一起工作,它将忽略这些环境variables,并且很乐意与任何服务器通信,不pipe它提供了什么证书。 有更通用的解决scheme吗? 更新3:不幸的是,解决scheme仍然不完整。 Net :: SSL和IO :: Socket :: SSL都没有根据证书检查主机名。 这意味着某人可以获得某个域名的合法证书,然后冒充任何其他域名而无需LWP抱怨。 更新4: LWP 6.00终于解决了这个问题。 查看我的答案了解详情。