CloudFlare 无效的 SSL 证书
问题:CloudFlare 无效的 SSL 证书 我有一个 Laravel 8 应用程序。 我不知道我错过了什么。我正在尝试在我的服务器中部署一个站点。 我不断得到: 无效的 SSL 证书 https://mybabies.app/ server { listen 443; ssl_certificate /etc/nginx/ssl/mybabies.app.crt; ssl_certifica
问题:CloudFlare 无效的 SSL 证书
我有一个 Laravel 8 应用程序。
我不知道我错过了什么。我正在尝试在我的服务器中部署一个站点。
我不断得到:
无效的 SSL 证书
https://mybabies.app/
server {
listen 443;
ssl_certificate /etc/nginx/ssl/mybabies.app.crt;
ssl_certificate_key /etc/nginx/ssl/mybabies.app.key;
server_name mybabies.app www.mybabies.app;
root /home/bheng/mybabies/public;
index index.html index.htm index.php;
charset utf-8;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
client_max_body_size 500M;
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log on;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error;
error_page 404 /index.php;
# Media: images, icons, video, audio, HTC
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|mp3|ogg|ogv|webm|htc|woff2|woff)$ {
expires 1M;
access_log off;
add_header Cache-Control "public";
}
# CSS and Javascript
location ~* \.(?:css|js)$ {
expires 1y;
access_log off;
add_header Cache-Control "public";
}
location / {
#limit_req zone=one burst=2 nodelay;
try_files $uri $uri/ /index.php?$query_string;
add_header 'Access-Control-Allow-Origin' '*';
}
}
我已经在 CloudFlare 中创建了crt
+pem
密钥并在以下两行中进行了配置:
ssl_certificate /etc/nginx/ssl/mybabies.app.crt;
ssl_certificate_key /etc/nginx/ssl/mybabies.app.key;
编辑
当我暂停时
当我点击View Certificate
时,我看到了
更新
我创建了证书
解答
要在 Cloudflare 和您的服务器之间建立安全连接,您需要在 Origin Certificates 页面中生成 Origin CA Certificate,但您是在 Client Certificates 中执行此操作的,这就是您收到错误的原因。
它们是完全不同的事物,具有不同的目的。阅读说明。
客户端证书
使用客户端证书保护和验证您的 API 和 Web 应用程序。使用 mTLS 规则阻止来自没有有效客户端 SSL/TLS 证书的设备的流量。
原产地证书
生成由 Cloudflare 签名的免费 TLS 证书以安装在您的源服务器上。原始证书仅对 Cloudflare 和您的原始服务器之间的加密有效。
生成 PEM 和 KEY 后,您需要将它们放入 .crt 和 .key 并加载到 nginx 配置中,就像以前一样。
listen 443;
ssl_certificate /etc/nginx/ssl/mybabies.app.crt;
ssl_certificate_key /etc/nginx/ssl/mybabies.app.key;
现在连接 Full (strict) 应该可以工作了。
如果您想改用自签名证书,但仍利用 CF 和服务器之间的安全连接,请改用选项 Full(不严格)。通过使用灵活,您的访问者仍将使用 HTTPS,但 CF 和服务器之间将没有 SSL 连接,服务器会将其视为 HTTP 连接,因此不建议使用此选项。
更多信息:https://support.cloudflare.com/hc/en-us/articles/200170416-What-do-the-SSL-options-mean-
更多推荐
所有评论(0)