close
CentOS 8.1支援的網頁伺服器是 apache,但程式名稱為httpd。
安裝 apache網頁伺服器,執行指令:
yum install httpd
安裝好之後啟動httpd
systemctl start httpd
預設開機後執行:
systemctl enable httpd
現在的網頁伺服器與瀏覽器都支援SSL加密的傳輸協定來提高網路安全性,
我們自己架設的網站就必須自己簽署一份金鑰才能進行加密傳輸。
首先先安裝相關需要的工具,執行以下指令安裝網頁伺服器的SSL模組與 openssl 認證工具:
yum install mod_ssl openssl
舊版需要自己生成一個私人金鑰等認證憑證,新版已經內建 localhost.crt localhost.pey 與 localhost.ca 這三個憑證檔,
所以只需要重新啟動httpd:
systemctl restart httpd
剛才的設定即可生效。
這時可以利用瀏覽器開啟網頁,記得要用 https:// 這樣的開頭,表示這是ssl安全連線,
預設的port是443,如果你有使用防火牆,記得要將對應的port做設定,否則會連不到,
因為 port 被擋住了。
附註一下,如果要用自己產生的憑證仍然可行,下面描述如何產生並安裝憑證在網頁伺服氣上。
要建立金鑰,你必須是 root 用戶。
先進入憑證所需的目錄,執行:
cd /etc/pki/tls/certs
產生私鑰
openssl genrsa -out ca.key 2048
產生 CSR
openssl req -new -key ca.key -out ca.csr
產生自我簽署的金鑰
openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
將key檔案搬到 /etc/pki/tls/private/ ,執行指令:
cp ca.key /etc/pki/tls/private/ca.key
範例中例的ca.key ca.csr ca.crt 只是示範,檔名可以隨自己喜好,例如bell.ley bell.csr bell.crt,
只要後面設定時能正確對應即可。
這時候相關憑證已正確l建立完畢,接下來修改ssl設定檔,
編輯 /etc/httpd/conf.d/ssl.conf
修改
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
這裡的設定必須對應你前面所製造出來的認證金鑰名稱,如果你改用別的名字,
就要相對修改正確的路徑與檔案名稱。
預設憑證有效日期是365天,也就是一年,如果覺得憑證效期太短,可以改成:
openssl x509 -req -days 3650 -in ca.csr -signkey ca.key -out ca.crt
這樣可以改成10年,3650天,應該很夠用了。
底下就是我自製憑證在chrome瀏覽器上的樣子,有效日期我改為36500天:
文章標籤
全站熱搜