gpt4 book ai didi

linux - Varnish/Nginx 缓存的 SSL 证书之谜

转载 作者:太空狗 更新时间:2023-10-29 12:36:27 26 4
gpt4 key购买 nike

我有 Varnish 负载平衡三个前端 Rails 服务器,Nginx 充当 FastCGI worker 的反向代理。昨天,我们的证书过期了,我从 GoDaddy 获得了一个新证书,并安装了它。直接访问静态资源时,我看到更新后的证书,但是当从“虚拟子域”访问它们时,我看到的是旧证书。我的 nginx 配置只引用了我的新链接证书,所以我想知道旧证书是如何显示的。我什至已将其从目录中删除。

例子: https://www212.doostang.com/javascripts/base_packaged.js?1331831461 (SSL 没有证书问题) https://asset5.doostang.com/javascripts/base_packaged.js?1331831461 (正在使用旧证书!)(映射到 www212.doostang.com)

  • 我重新加载甚至停止并重新启动了 nginx,测试了 nginx 以确保它从正确的配置中读取,并使用新的缓存文件重新启动了 varnish。
  • 当我在 asset5.doostang.com curl 文件时,我收到证书错误:

    curl: (60) SSL 证书问题,验证 CA 证书是否正常。细节:错误:14090086:SSL 例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败更多详情:http://curl.haxx.se/docs/sslcerts.html

    curl 默认执行 SSL 证书验证,使用“bundle” 证书颁发机构 (CA) 公钥(CA 证书)。如果默认 捆绑文件不够用,您可以指定一个备用文件 使用 --cacert 选项。如果此 HTTPS 服务器使用由中表示的 CA 签名的证书 bundle ,证书验证可能由于以下原因而失败 证书有问题(它可能已过期,或者名称可能 与 URL 中的域名不匹配)。如果您想关闭 curl 的证书验证,请使用 -k(或 --insecure)选项。

  • 当我添加 -k 选项时,我得到了请求的文件,我可以在我的 nginx 访问日志中看到它。当我不提供 -k 时,我不会收到 nginx 错误; nginx 对证书错误保持沉默。

10.99.110.27 - - [20/Apr/2012:18:02:52 -0700] "GET /javascripts/base_packaged.js?1331831461 HTTP/1.0" 200 5740 "-" "curl/7.21.3 (x86_64-pc-linux-gnu) libcurl/7.21.3 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18"

我把我认为是 nginx 配置的相关部分放在下面:

server {
# port to listen on. Can also be set to an IP:PORT
listen 443;
server_name www.doostang.com, *.doostang.com;

passenger_enabled on;
rails_env production;

ssl on;
ssl_certificate /.../doostang_combined.crt;
ssl_certificate_key /.../doostang.com.key;
ssl_protocols SSLv3;

# doc root
root /.../public/files;

if ($host = 'doostang.com' ) {
rewrite ^/(.*)$ https://www.doostang.com/$1 permanent;
}
}


# Catchall redirect
server {
# port to listen on. Can also be set to an IP:PORT
listen 443;

ssl on;
ssl_certificate /.../doostang_combined.crt;
ssl_certificate_key /.../doostang.com.key;

rewrite ^(.*)$ https://www.doostang.com$1;
}

最佳答案

巴顿清。我的非标准化负载均衡器实际上运行了 nginx 以终止 SSL。我没有注意到这一点,但我认为我做的其他一切都是正确的。重点是,当您在收购时接管运营时,标准化和记录!那里有一些非常奇怪的工程师:)

关于linux - Varnish/Nginx 缓存的 SSL 证书之谜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10261974/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com