找回密碼
 註冊
搜索
查看: 78|回復: 0

[AlamLinux] AlmaLinux 9 如何在 Apache 伺服器上設定 SSL/TLS 並取得 Let's Encrypt 憑證

[複製鏈接]
發表於 昨天 15:14 | 顯示全部樓層 |閱讀模式
 
Push to Facebook
目錄
了解 SSL/TLS 和 Let's Encrypt

先決條件
步驟 1:在 AlmaLinux 9 上安裝 Apache

步驟 2:為 Let's Encrypt 安裝 Certbot

步驟 3:設定防火牆

步驟 4:取得 Let's Encrypt SSL/TLS 憑證

步驟 5:設定Apache以使用SSL / TLS憑證

步驟 6:自動續約 Let's Encrypt 證書


結論

1. 了解 SSL/TLS 和 Let's Encrypt
什麼是 SSL/TLS?

SSL(安全通訊端層)及其後繼者 TLS(傳輸層安全性)是一種旨在保護電腦網路通訊安全的加密協定。 SSL/TLS 憑證可驗證網站身分並啟用加密連線。擁有 SSL/TLS 憑證的網站,瀏覽器網址列中會顯示掛鎖圖標,網站的 URL 以「https」開頭,表示連線安全性。

什麼是 Let's Encrypt?

Let's Encrypt 是一個免費、自動化且開放的憑證授權單位 (CA),提供 SSL/TLS 憑證來加密網路流量。它透過自動化憑證頒發和續約流程簡化了 SSL/TLS 的設定流程,使網站管理員能夠快速輕鬆地保護其網站安全。

2. 先決條件
在開始之前,您需要確保滿足以下先決條件:

運行 AlmaLinux 9並具有 root 或 sudo 使用者存取權限的伺服器。

指向您伺服器的公共 IP 位址的網域名稱。

Apache Web 伺服器已安裝並正在執行。

允許 HTTP 和 HTTPS 流量的防火牆配置。

像Certbot這樣的工具,可以簡化取得和管理 Let's Encrypt SSL 憑證的過程。

3. 步驟 1:在 AlmaLinux 9 上安裝 Apache
如果您的伺服器上尚未安裝 Apache,則第一步是安裝它。操作方法如下:

安裝Apache:

  1. dnf install httpd
複製代碼

啟用並啟動 Apache:

安裝 Apache 後,使其在系統啟動時自動啟動並啟動服務。

  1. systemctl enable httpd
  2. systemctl start httpd
複製代碼

檢查Apache狀態:

若要確保 Apache 正在運行,請檢查其狀態:

  1. systemctl status httpd
複製代碼

如果服務處於活動狀態並且正在運行,那麼就可以開始了。

4. 第 2 步:為 Let's Encrypt 安裝 Certbot
接下來,您需要安裝 Certbot,工具可自動取得和更新 Let's Encrypt 憑證。

安裝所需的軟體包:

執行以下命令安裝 Certbot 和 Certbot Apache 外掛:

  1. dnf install certbot python3-certbot-apache
複製代碼

Certbot Apache 外掛程式將自動為您的 Apache Web 伺服器設定 SSL/TLS。

5. 步驟 3:設定防火牆
為了確保您的伺服器可以處理 HTTP 和 HTTPS 流量,您需要更新防火牆設定。

允許 HTTP 和 HTTPS 流量:

執行以下命令開啟必要的連接埠:

  1. firewall-cmd --permanent --add-service=http
  2. firewall-cmd --permanent --add-service=https
  3. firewall-cmd --reload
複製代碼

透過這樣做,您允許連接埠 80 上的 HTTP 流量和連接埠 443 上的 HTTPS 流量,這對於網路流量和安全通訊至關重要。

6. 步驟 4:取得 Let's Encrypt SSL/TLS 憑證
安裝 Apache 並設定防火牆後,下一步是從 Let's Encrypt 取得 SSL/TLS 憑證。

取得 SSL/TLS 憑證:

若要為您的網域取得 Let's Encrypt SSL 證書,請使用以下 Certbot 指令:

  1. certbot --apache -d yourdomain.com -d www.yourdomain.com
複製代碼

yourdomain.com將和替換www.yourdomain.com為您的實際網域。 Certbot 將處理以下操作:

範例
  1. certbot --apache -d tshopping.com.tw -d www.tshopping.com.tw
複製代碼

AlmaLinux Apache 伺服器 SSL/TLS Encrypt憑證

AlmaLinux   Apache 伺服器  SSL/TLS  Encrypt憑證


這時virtual.conf檔案複製並修出
virtual-le-ssl.conf檔案
virtual.conf
  1. /etc/httpd/conf.d/virtual.conf
複製代碼
  1. /etc/httpd/conf.d/virtual-le-ssl.conf
複製代碼



驗證網域的所有權。

自動取得並安裝 SSL 憑證。

配置您的 Apache 伺服器,使其透過 HTTPS 為您的網站提供服務。請依照 Certbot 提示操作:

Certbot 會提示您幾個問題,例如是否要將 HTTP 流量重新導向到 HTTPS(建議)。過程完成後,Certbot 將自動使用您的新 SSL/TLS 憑證設定 Apache。

驗證 SSL/TLS 憑證:

您可以使用 造訪您的網站來驗證 SSL 憑證是否已正確安裝https://yourdomain.com。您應該會在 URL 旁邊看到一個掛鎖圖標,這表示網站是安全的。

7. 步驟 5:設定 Apache 以使用 SSL/TLS 憑證
Certbot 通常會自動處理大部分設定。但是,如果您想要手動設定 SSL/TLS 設定或進一步自訂,則可以在 Apache 設定檔中進行操作。

SSL設定檔:
SSL 設定檔通常位於/etc/httpd/conf.d/ssl.conf或中/etc/httpd/conf.d/yourdomain-le-ssl.conf(如果 Certbot 建立了該檔案)。此檔案包含用於控制 Apache 如何使用 SSL 憑證的指令。

以下是一個範例配置(已經被自動修改好)

  1. <VirtualHost *:443>
  2.     ServerName yourdomain.com
  3.     ServerAlias www.yourdomain.com

  4.     DocumentRoot /var/www/html

  5.     SSLEngine on
  6.     SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
  7.     SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
  8.     Include /etc/letsencrypt/options-ssl-apache.conf
  9. </VirtualHost>
複製代碼

在此文件中,您將找到對 Certbot 已安裝的 Let's Encrypt SSL 憑證檔案的引用。這些包括:

SSLCertificateFile:SSL 憑證的位置。

SSLCertificateKeyFile:私鑰的位置。

包含 /etc/letsencrypt/options-ssl-apache.conf:此行確保 Apache 使用建議的安全設定。將 HTTP 重新導向到 HTTPS:

為了確保您網站的所有流量都使用 HTTPS,您可以在 Apache 設定中設定從 HTTP 到 HTTPS 的重定向
(已經被自動修改好)

  1. <VirtualHost *:80>
  2.     ServerName yourdomain.com
  3.     ServerAlias www.yourdomain.com

  4.     Redirect permanent / https://www.yourdomain.com
  5. </VirtualHost>
複製代碼

此配置會自動將訪客重新導向http://yourdomain.com至安全的網站https://yourdomain.com

8. 步驟 6:自動續訂 Let's Encrypt 證書
Let's Encrypt 憑證的有效期限為 90 天,但 Certbot 可以自動為您續約。為了確保您的 SSL 憑證在到期前續訂,Certbot 提供了續約腳本。

啟用自動續訂:

Certbot 會自動新增一個 cron 任務來處理憑證續約。不過,您可以手動測試續訂過程以確保其正常運作:

  1. certbot renew --dry-run
複製代碼

此命令會執行一次試運行,模擬續訂過程,而無需實際續訂證書。如果成功,Certbot 會在憑證即將到期時自動續約。

9. 結論
在 AlmaLinux 9 上使用 Let's Encrypt 設定 SSL/TLS 非常簡單,這得益於強大的 Certbot 工具及其與 Apache 的緊密整合。按照本指南中概述的步驟,您可以使用受信任的 SSL/TLS 憑證保護您的網站,確保使用者資料加密且安全。

SSL/TLS 不僅可以提升您網站的安全性,還能提升 SEO 排名並建立用戶信任。儘管 Certbot 已自動完成大部分憑證續約流程,但請務必留意憑證續訂,以確保您的網站持續受到保護。



文章出處
https://www.siberoloji.com/almalinux-9-how-to-configure-ssl-tls-and-obtain-lets-encrypt-certificates-on-apache-server/
 
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

Archiver|手機版|小黑屋|TShopping

GMT+8, 2025-8-16 23:41 , Processed in 0.023726 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表