在Debian服務器上配置Nginx以支持SSL(Secure Sockets Layer)涉及多個步驟,包括安裝必要的軟件包、獲取和安裝SSL證書,以及配置Nginx。以下是詳細的要求和步驟:
確保系統是最新的,并安裝Nginx和必要的軟件包:
sudo apt update
sudo apt upgrade
sudo apt install nginx curl gnupg2 ca-certificates lsb-release debian-archive-keyring
你可以從Let’s Encrypt免費獲取SSL證書。使用Certbot工具可以自動化這個過程:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
將yourdomain.com
和www.yourdomain.com
替換為你的域名。Certbot會自動配置Nginx并重啟服務。
Certbot已經自動更新了Nginx配置文件,以使用SSL證書。但是,如果你需要手動進行更改,可以編輯/etc/nginx/sites-available/yourdomain.com
文件(將yourdomain.com
替換為你的域名)。確保以下配置已添加到server塊中:
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
保存更改并退出編輯器。
為了提高安全性,你可以選擇推薦的加密套件和啟用HSTS:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384';
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
在重啟Nginx之前,先測試配置是否有效:
sudo nginx -t
如果一切正常,重啟Nginx使更改生效:
sudo systemctl restart nginx
通過以上步驟,你可以在Debian系統上配置Nginx以支持SSL,提高網站的安全性和性能。記得定期更新你的證書,因為Let’s Encrypt的免費證書有效期通常為90天。