在Debian系統上安裝Nginx SSL證書,可以按照以下步驟進行:
如果你還沒有安裝Nginx,可以使用以下命令進行安裝:
sudo apt update
sudo apt install nginx
你可以從Let’s Encrypt免費獲取SSL證書。使用Certbot工具可以方便地完成這個過程。
sudo apt install certbot python3-certbot-nginx
運行Certbot來獲取SSL證書。假設你的域名是example.com
,你可以使用以下命令:
sudo certbot --nginx -d example.com -d www.example.com
Certbot會自動配置Nginx以使用SSL,并創建一個臨時文件來測試配置是否正確。如果一切正常,它會自動重載Nginx并啟用SSL。
Certbot會自動修改Nginx配置文件(通常位于/etc/nginx/sites-available/default
),添加SSL相關的配置。你可以手動檢查并編輯這個文件,確保配置如下:
server {
listen 80;
server_name example.com www.example.com;
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
root /var/www/html;
index index.html index.htm;
location ~ /\.ht {
deny all;
}
}
保存配置文件后,重啟Nginx以應用更改:
sudo systemctl restart nginx
你可以使用瀏覽器訪問你的網站,查看是否顯示了安全的鎖圖標,并且地址欄顯示了https://
。你也可以使用以下命令來驗證證書是否正確安裝:
sudo openssl s_client -connect example.com:443 -servername example.com
Let’s Encrypt的證書有效期為90天,Certbot會自動設置一個cron任務來定期檢查并續期證書。你可以手動運行以下命令來測試續期過程:
sudo certbot renew --dry-run
如果一切正常,Certbot會自動續期證書并重新加載Nginx。
通過以上步驟,你就可以在Debian系統上成功安裝并配置Nginx SSL證書。