如何使用OpenSSL生成和配置Nginx的SSL/TLS證書(shū)
海外云服務(wù)器 40個(gè)地區可選 亞太云服務(wù)器 香港 日本 韓國
云虛擬主機 個(gè)人和企業(yè)網(wǎng)站的理想選擇 俄羅斯電商外貿虛擬主機 贈送SSL證書(shū)
美國云虛擬主機 助力出海企業(yè)低成本上云 WAF網(wǎng)站防火墻 為您的業(yè)務(wù)網(wǎng)站保駕護航
OpenSSL是一個(gè)開(kāi)源的軟件項目,用于安全套接層和傳輸層安全性協(xié)議(SSL/TLS)證書(shū)的創(chuàng )建、管理和驗證,以下是如何使用OpenSSL生成SSL/TLS證書(shū)并配置Nginx的基本步驟:,1. **安裝OpenSSL**:首先確保在服務(wù)器上已安裝了OpenSSL。,2. **生成私鑰文件**:使用openssl genpkey
命令為您的服務(wù)器生成一個(gè)私鑰文件。,3. **生成證書(shū)請求文件**:使用openssl req -new
命令生成一個(gè)包含域名信息的證書(shū)請求文件。,4. **創(chuàng )建自簽名證書(shū)**:通過(guò)openssl x509
命令創(chuàng )建一個(gè)自簽名的SSL證書(shū)。,5. **配置Nginx**:將生成的SSL證書(shū)和私鑰文件添加到Nginx的虛擬主機配置中,并設置正確的證書(shū)路徑。,這些步驟可以幫助您在服務(wù)器上部署SSL/TLS證書(shū),從而保護網(wǎng)站數據的安全性。
確保您的系統上已安裝 OpenSSL,如果沒(méi)有,請訪(fǎng)問(wèn) OpenSSL 官方網(wǎng)站并下載適用于您操作系統的最新版本。
wget https://slproweb.com/download/Win32OpenSSL-1_1_1f.zip unzip Win32OpenSSL-1_1_1f.zip -d C:\Program Files\OpenSSL-Win64
解壓后,需要將 C:\Program Files\OpenSSL-Win64
目錄添加到系統的環(huán)境變量中,以便在命令行中直接調用 OpenSSL 命令。
步驟 2: 創(chuàng )建自簽名證書(shū)
自簽名證書(shū)是一種簡(jiǎn)便的方法,在開(kāi)發(fā)或測試環(huán)境中提供基本的加密功能而無(wú)需實(shí)際獲取第三方證書(shū)頒發(fā)機構(CA)的證書(shū)。
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mycert.key -out mycert.crt
這會(huì )生成兩個(gè)文件:mycert.key
和 mycert.crt
, 分別包含私鑰和證書(shū)信息。
步驟 3: 編輯 Nginx 配置文件
打開(kāi) Nginx 的主配置文件 /etc/nginx/nginx.conf
(或 /usr/local/nginx/conf/nginx.conf
),找到類(lèi)似于以下的服務(wù)器塊定義:
server { listen 80; server_name example.com www.example.com; location / { root /var/www/html; index index.html index.htm; } }
我們需要添加 SSL 相關(guān)的部分來(lái)啟用 HTTPS 支持,通過(guò)添加新的 <listen>
指令來(lái)指定特定端口(443),然后加上 SSL 密鑰和證書(shū):
server { listen 80; server_name example.com www.example.com; location / { root /var/www/html; index index.html index.htm; } # SSL Configuration listen 443 ssl; # Listen on port 443 for HTTPS traffic ssl_certificate /etc/ssl/certs/mycert.crt; # Path to your certificate file ssl_certificate_key /etc/ssl/private/mycert.key; # Path to your key file }
請根據實(shí)際情況調整路徑名,確保與之前創(chuàng )建的證書(shū)和密鑰文件一致。
步驟 4: 測試 SSL 設置
為了驗證 Nginx 是否正確設置了 SSL,嘗試從外部地址連接到你的服務(wù)器,看看是否能通過(guò) HTTPS 訪(fǎng)問(wèn)你的網(wǎng)站,如果一切正常,你應該能看到瀏覽器的安全警告提示,但確認沒(méi)有顯示任何錯誤信息即可。
步驟 5: 實(shí)際部署
完成以上步驟后,您可以在本地主機上進(jìn)行測試以確認一切工作正常,如果一切順利,下一步就是在生產(chǎn)環(huán)境中部署 Nginx 配置文件,通常的做法是在生產(chǎn)環(huán)境中的 nginx.conf
文件中添加相同的 <listen>
和 <ssl>
指令。
步驟 6: 更新防火墻規則
確保防火墻允許 HTTP (80) 和 HTTPS (443) 端口的流量,編輯防火墻配置文件(如 iptables
或 ufw
),添加相應的規則:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT sudo ufw enable # 對于 UFW 用戶(hù)
最后一步是重啟 Nginx 服務(wù)以使更改生效:
sudo systemctl restart nginx
您已經(jīng)成功配置了 OpenSSL 生成 SSL/TLS 證書(shū),并且這些證書(shū)已經(jīng)被集成到了 Nginx 配置中,通過(guò)上述步驟,您可以確保所有請求都經(jīng)過(guò)加密處理,從而增強安全性。
掃描二維碼推送至手機訪(fǎng)問(wèn)。
版權聲明:本文由特網(wǎng)科技發(fā)布,如需轉載請注明出處。