為什麼使用 Certbot 安裝 SSL 憑證後無法存取我的網站? (運行 Ubuntu 和 Nginx)

為什麼使用 Certbot 安裝 SSL 憑證後無法存取我的網站? (運行 Ubuntu 和 Nginx)

我無法與 nginx 伺服器上的連接埠 443 建立連線。

我需要連接埠 443 來啟用 https 連接,我使用 certbot 來安裝 ssl 證書,並且我採用了預設安裝,以及此中的預設說明指導

儘管我已設置“nginx full”命令來打開 http 和 https 端口,但我通過運行以下命令仔細檢查以確保端口 443 確實打開sudo lsof -i -P -n | grep LISTEN,並且在響應中,我得到了正在使用的端口 443通過 nginx

我嘗試了 cURL 等工具來測試我的端口,端口 80 工作正常,但端口 443 沒有響應

我缺乏伺服器管理經驗,我嘗試檢查其他資源,但我不知道還能做什麼。

我的網站可用配置:

server {

        root /var/www/muhammed-aldulaimi.com/html;
        index index.html index.htm index.nginx-debian.html;

        server_name muhammed-aldulaimi.com www.muhammed-aldulaimi.com;

        location / {
                try_files $uri $uri/ =404;
        }

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/muhammed-aldulaimi.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/muhammed-aldulaimi.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot


}
server {
    if ($host = www.muhammed-aldulaimi.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = muhammed-aldulaimi.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


        listen 80;
        listen [::]:80;

        server_name muhammed-aldulaimi.com www.muhammed-aldulaimi.com;
    return 404; # managed by Certbot

}

UFW狀態:

22/tcp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)

答案1

在確認 ubuntu 的防火牆設定沒有問題後,我認為問題出在 Web 主機本身。我正在使用 AWS Lightsail,結果發現 Lightsail 只接受來自連接埠 22 和 80 的連接。解決了我的問題。

相關內容