Virtualmin + Nginx + Cloudflare 的 SSL 设置错误 521

Virtualmin + Nginx + Cloudflare 的 SSL 设置错误 521

操作系统:Ubuntu 20.04,安装了Virtualmin + Nginx + PHP-FPM

一切都设置得很好,但是,当我安装 SSL 证书 3 个月试用版(完全有效证书)时,不是来自 Letsencrypt(已达到限制),一切都运行正常,但是,当我切换到 Cloudflare 时,我的网站崩溃了,显示 521 服务器未找到。尝试切换到其他选项,如灵活、完整、完整(严格),但没有成功

命令

tail -f /var/log/nginx/error.log

日志文件中出现一堆错误。

root@server:~# tail -f /var/log/nginx/error.log

2020/12/29 21:59:05 [emerg] 6813#6813: bind() to 2xx.2xx.xx3.xxx:443 failed (98: Address already in use)

2020/12/29 21:59:05 [emerg] 6813#6813: bind() to [2xxx:a1xx:xxxx:8xxx::1]:443 failed (98: Address already in use)

2020/12/29 21:59:05 [emerg] 6813#6813: still could not bind()

2020/12/29 22:31:47 [emerg] 512#512: cannot load certificate “/home/example/ssl.cert”: BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(’/home/example/ssl.cert’,‘r’) error:2006D080:BIO routines:BIO_new_file:no such file)

2020/12/29 22:32:37 [emerg] 1986#1986: cannot load certificate “/home/example/ssl.cert”: BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(’/home/example/ssl.cert’,‘r’) error:2006D080:BIO routines:BIO_new_file:no such file)

2020/12/29 23:58:45 [alert] 12025#12025: *1168 open socket #17 left in connection 93

2020/12/29 23:58:45 [alert] 12025#12025: aborting

我很确定那些 SSL 文件就在那里,但是 nginx 却不这么认为 ;(

这是我得到的输出

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      678/mysqld          
tcp        0      0 0.0.0.0:587             0.0.0.0:*               LISTEN      1722/master         
tcp        0      0 0.0.0.0:110             0.0.0.0:*               LISTEN      787/dovecot         
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN      787/dovecot         
tcp        0      0 0.0.0.0:10000           0.0.0.0:*               LISTEN      19353/perl          
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      19330/nginx: master 
tcp        0      0 0.0.0.0:465             0.0.0.0:*               LISTEN      1722/master         
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      15079/systemd-resol 
tcp        0      0 207.244.253.107:53      0.0.0.0:*               LISTEN      575/named           
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      575/named           
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      630/sshd: /usr/sbin 
tcp        0      0 127.0.0.1:11000         0.0.0.0:*               LISTEN      1044/lookup-domain- 
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      1722/master         
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      575/named           
tcp        0      0 207.244.253.107:443     0.0.0.0:*               LISTEN      19330/nginx: master 
tcp        0      0 0.0.0.0:20000           0.0.0.0:*               LISTEN      19398/perl          
tcp        0      0 0.0.0.0:993             0.0.0.0:*               LISTEN      787/dovecot         
tcp        0      0 0.0.0.0:995             0.0.0.0:*               LISTEN      787/dovecot         
tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN      678/mysqld          
tcp        0      0 127.0.0.1:10023         0.0.0.0:*               LISTEN      542/postgrey --pidf 
tcp6       0      0 :::587                  :::*                    LISTEN      1722/master         
tcp6       0      0 :::2222                 :::*                    LISTEN      8361/proftpd: (acce 
tcp6       0      0 :::110                  :::*                    LISTEN      787/dovecot         
tcp6       0      0 :::143                  :::*                    LISTEN      787/dovecot         
tcp6       0      0 :::10000                :::*                    LISTEN      19353/perl          
tcp6       0      0 :::80                   :::*                    LISTEN      19330/nginx: master 
tcp6       0      0 :::465                  :::*                    LISTEN      1722/master         
tcp6       0      0 :::21                   :::*                    LISTEN      8361/proftpd: (acce 
tcp6       0      0 ::1:53                  :::*                    LISTEN      575/named           
tcp6       0      0 :::22                   :::*                    LISTEN      630/sshd: /usr/sbin 
tcp6       0      0 :::25                   :::*                    LISTEN      1722/master         
tcp6       0      0 ::1:953                 :::*                    LISTEN      575/named           
tcp6       0      0 :::993                  :::*                    LISTEN      787/dovecot         
tcp6       0      0 :::995                  :::*                    LISTEN      787/dovecot         
tcp6       0      0 ::1:10023               :::*                    LISTEN      542/postgrey --pidf 
root@server:~# 

是的,文件在那里并且权限设置为 chmod 600

谢谢

答案1

首先,有些程序正在监听 443 端口。您可以使用命令找到哪些程序正在监听 443 端口netstat -ltnp。如果 netstat 没有找到您的服务器,请安装 net-tools 包。

其次,nginx 无法访问您的证书。/home/example/ssl.cert 请检查这些证书是否存在?如果它们还在,请检查文件权限。

相关内容