Linux系統(tǒng)配置HTTPS詳細(xì)步驟
配置 HTTPS 的步驟:
1. 獲取 SSL/TLS 證書
你可以通過(guò)以下方式獲取 SSL/TLS 證書:
使用自簽名證書(適用于開發(fā)或內(nèi)部測(cè)試環(huán)境)
從受信任的證書頒發(fā)機(jī)構(gòu) (CA) 獲取證書(適用于生產(chǎn)環(huán)境)
使用 Let’s Encrypt 免費(fèi)獲取證書
1.1 生成自簽名證書(適合測(cè)試環(huán)境)
在 Linux 系統(tǒng)上,可以使用 openssl
來(lái)生成自簽名證書。
# 創(chuàng)建一個(gè)私鑰和證書簽名請(qǐng)求 (CSR) openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr ? # 使用私鑰簽署自簽名證書 openssl x509 -req -days 365 -in mydomain.csr -signkey mydomain.key -out mydomain.crt
此命令生成了 mydomain.key(私鑰)和 mydomain.crt(自簽名證書)。在實(shí)際配置時(shí),你需要提供證書和私鑰的路徑。
1.2 從 Let's Encrypt 獲取免費(fèi)證書(推薦用于生產(chǎn))
Let’s Encrypt 提供免費(fèi) SSL 證書,可以通過(guò)工具 Certbot 獲取和自動(dòng)配置證書。
安裝 Certbot
# Ubuntu / Debian 系統(tǒng) sudo apt-get update sudo apt-get install certbot python3-certbot-nginx
獲取證書
# 使用 Certbot 為你的域名獲取證書,并自動(dòng)配置 Nginx sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
Certbot 將自動(dòng)為你生成證書,并修改 Nginx 配置文件以啟用 HTTPS。
2. 配置 Nginx
2.1 配置 HTTPS 虛擬主機(jī)
編輯 Nginx 配置文件(通常位于 /etc/nginx/sites-available/default 或 /etc/nginx/nginx.conf),并添加如下配置:
server { listen 443 ssl; server_name yourdomain.com www.yourdomain.com; ? ssl_certificate /etc/ssl/certs/mydomain.crt; ssl_certificate_key /etc/ssl/private/mydomain.key; ? ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ? location / { root /var/www/html; index index.html index.htm; } } ? # 強(qiáng)制 HTTP 重定向到 HTTPS server { listen 80; server_name yourdomain.com www.yourdomain.com; ? return 301 https://$host$request_uri; }
ssl_certificate 和 ssl_certificate_key 指定 SSL 證書和私鑰的路徑。
ssl_protocols 和 ssl_ciphers 確保使用安全的加密協(xié)議和加密套件。
第二個(gè) server 塊用于將 HTTP 請(qǐng)求重定向到 HTTPS。
2.2 驗(yàn)證 Nginx 配置
編輯完成后,驗(yàn)證 Nginx 配置是否正確:
sudo nginx -t
如果配置正確,重啟 Nginx 服務(wù):
sudo systemctl restart nginx
3. 測(cè)試 HTTPS 配置
通過(guò)瀏覽器訪問(wèn) https://yourdomain.com
,確保 HTTPS 配置成功。如果你使用了自簽名證書,瀏覽器可能會(huì)警告該證書不受信任。
4. 自動(dòng)續(xù)期(Let’s Encrypt 證書)
Let’s Encrypt 的證書有效期為 90 天。你可以通過(guò)以下命令手動(dòng)續(xù)期證書:
sudo certbot renew
通常,Certbot 會(huì)自動(dòng)配置 cron 任務(wù)或系統(tǒng)計(jì)時(shí)器來(lái)自動(dòng)續(xù)期證書。
總結(jié)
配置 HTTPS 涉及獲取 SSL/TLS 證書并修改 Web 服務(wù)器配置文件,以確保服務(wù)器使用加密的 HTTPS 協(xié)議進(jìn)行通信。使用 Let’s Encrypt 是配置生產(chǎn)環(huán)境中 HTTPS 的簡(jiǎn)單且免費(fèi)的解決方案,而自簽名證書則適用于開發(fā)或測(cè)試環(huán)境。
以上就是Linux系統(tǒng)配置HTTPS詳細(xì)步驟的詳細(xì)內(nèi)容,更多關(guān)于Linux配置HTTPS的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用VSCode的Remote-SSH連接Linux進(jìn)行遠(yuǎn)程開發(fā)
這篇文章主要介紹了使用VSCode的Remote-SSH連接Linux進(jìn)行遠(yuǎn)程開發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08SSM項(xiàng)目頻繁打成war包部署,使用tomcat和maven實(shí)現(xiàn)熱部署配置
這篇文章主要介紹了SSM項(xiàng)目頻繁打成war包部署操作頻繁?使用tomcat和maven實(shí)現(xiàn)熱部署配置,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11Centos7下編譯安裝配置Nginx+PHP+MySql環(huán)境
這篇文章主要介紹了Centos7下編譯安裝配置Nginx+PHP+MySql環(huán)境,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02關(guān)于linux下core dump【總結(jié)】
下面小編就為大家?guī)?lái)一篇關(guān)于linux下core dump【總結(jié)】。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01LuManager VPS主機(jī)控制面板安裝和Eduvps免費(fèi)VPS測(cè)評(píng)
這篇文章主要介紹了LuManager VPS主機(jī)控制面板安裝和Eduvps免費(fèi)VPS測(cè)評(píng),需要的朋友可以參考下2016-04-04linux vi命令知識(shí)點(diǎn)用法總結(jié)
在本篇文章里小編給大家整理的是關(guān)于linux vi命令的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們參考學(xué)習(xí)下。2019-10-10