所有使用SSL運行的網站都在預設連接埠443上使用了https協定。 SSL透過加密伺服器和客戶端之間的資料來提供安全的資料通訊。
在我們之前的文章中,我們已經介紹如何在CentOS/RHEL系統中安裝LightTPD和建立虛擬主機。本文將繼續介紹在LightTPD伺服器中設定SSL。對於本篇文章中的範例,我們使用的是自簽名憑證。
如果要在apache/httpd中尋找configure ssl,那麼可能需要閱讀這篇文章。
步驟1:建立證書簽章請求(CSR)
對於建立SSL證書,第一個要求是建立私密金鑰和CSR。 CSR是一個文件,其中包含有關網域的所有詳細信息,包括公鑰。首先建立一個目錄,在其中建立CSR和金鑰。
# mkdir /etc/lighttpd/ssl/ # cd /etc/lighttpd/ssl/
現在使用以下命令建立CSR和金鑰檔案。根據網域更改檔案名稱example.com.key和example.com.csr。此命令將要求輸入有關您的網域的資訊。了解有關創建CSR的更多資訊。
# openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
Generating a 2048 bit RSA private key ....+++ ...............+++ writing new private key to 'example.com.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:IN State or Province Name (full name) []:Delhi Locality Name (eg, city) [Default City]:Delhi Organization Name (eg, company) [Default Company Ltd]:TecAdmin Inc. Organizational Unit Name (eg, section) []:web Common Name (eg, your name or your server's hostname) []:example.com Email Address []:user@example.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: [Leave Blank] An optional company name []: [Leave Blank]
步驟2:從CA請求憑證
建立CSR後,從任意憑證提供者(如geotrust、comodo、digicert或godaddy等)請求一個SSL證書。
或建立供內部使用的自簽名憑證
# openssl x509 -req -days 365 -inexample.com.csr-signkeyexample.com.key-outexample.com.crt
將在名為example.com.crt的目前目錄中取得建立的憑證檔案。現在透過將金鑰檔案和憑證組合在一個檔案中來建立pem檔案
# cat example.com.key example.com.crt > example.com.pem
步驟3:使用SSL設定虛擬主機
編輯lighttpd設定檔/etc /lighttpd/lighttpd.conf並新增下列值。
$SERVER["socket"] == ":443" { ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd/ssl/tecadmin.net.pem" # ssl.ca-file = "/etc/lighttpd/ssl/CA_issuing.crt" server.name = "site1.tecadmin.net" server.document-root = "/sites/vhosts/site1.tecadmin.net/public" server.errorlog = "/var/log/lighttpd/site1.tecadmin.net.error.log" accesslog.filename = "/var/log/lighttpd/site1.tecadmin.net.access.log" }
步驟4:驗證設定並重新啟動lighttpd
#啟動lighttpd服務之前,請先驗證設定檔的語法。
# lighttpd -t -f /etc/lighttpd/lighttpd.conf Syntax OK
如果發現所有語法都正常,讓我們重新啟動服務。
# service lighttpd restart
【相關推薦:Linux影片教學】
以上是如何在Lighttpd Server中設定SSL的詳細內容。更多資訊請關注PHP中文網其他相關文章!