新聞發布
管理系統回顧一下前面兩篇文《老網站遷移步驟和相關問題分享》和《部署HTTPS對網站建設開發的意義》前者我們談到了網站建設數據的遷移里面涉及到了HTTPS搭建的問題,正好這個問題在第二篇文章里面完整的描述了HTTPS對網站建設的重要性。昨天跟技術軟磨硬泡總結了幾個現在比較流行的部署方法,基本上分類三大類:集成安裝簡單、自主安裝復雜、供應商一鍵開啟;下面咋們就具體分享一下這個三個安裝步驟;
一、集成安裝簡單
很多網絡工程師應該都部署過網站服務器,快便捷的方式就是使用第三方的集成安裝環境了,網絡上比較有名的集成環境有LAMP、WDlinux等一鍵安裝環境。我們就拿WDlinux看一下,這里我們就不講WDlinux的安裝過程請自行百度有很多文章,我們進去WDCP需要操作幾個地方需要這只的:
1、 選擇要開啟HTTPS的站點,點擊開啟。
2、 選擇SSL證書管理,我們可以上傳申請下來的證書注意crt和pem需要合并,文件名需對應站點域名。
3、 重啟一下WEB服務就可以訪問了。是不是很高大上!
二、自主安裝復雜
自主安裝就相對來說復雜一點需要配置的東西比較多,然而網頁發布器網絡上用的多的幾個是Apache、Nginx、IIS、Tomcat下面我們就挨個說說:
1.Apache 部署SSL證書 (只能應用一個證書, 如果多個不同站點都需要安裝不同的證書,請使用nginx)
1.1.查看apache是否開啟ssl (特別注意要在apache配置文件中添加Listen 443否則沒有443端口監聽)
打開 apache安裝目錄/conf/httpd.conf 文件,找到 里面兩行
#LoadModule ssl_module modules/mod_ssl.so
將行首的#去掉,保存文件
執行命令: apache安裝目錄/bin/httpd -M | grep ssl_module , 出現圖下結果說明apache已經支持ssl, 否則請先開啟apache的ssl模塊
1.2配置證書到對應的站點
編輯站點對應的站點配置文件,如:apache安裝目錄/conf/extra/httpd-ssl.conf, 修改內容如下
<VirtualHost www.domain.com:443> DocumentRoot "/var/www/html" ServerName www.domain.com SSLEngine on SSLCertificateFile 證書文件路徑/_www.domain.com.cer SSLCertificateKeyFile 證書文件路徑/_www.domain.com.key SSLCertificateChainFile 證書文件路徑/_www.domain.com_ca.crt </VirtualHost>
1.3.重啟apache生效
2. Nginx 部署SSL證書 (特別注意下面加紅內容,需要先合并.crt、.cer文件)
2.1. 查看nginx是否開啟ssl
執行命令: nginx安裝目錄/sbin/nginx -V, 查看命令結果中是否包含"--with-http_ssl_module",否則請先安裝ssl模塊
2.2. 配置證書到對應的站點
編輯站點對應的站點配置文件,新增或修改如下內容
server { listen 443 ssl; #將原來的80 修改為443 ... root /www/web/xxxx/public_html; ssl_certificate 證書文件路徑/_www.domain.com.crt; #需將_www.domain.com.cer 中的內容復制到這個文件頭部,中間不要有空行 ssl_certificate_key 證書文件路徑/_www.domain.com.key; #證書密鑰文件 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!LOW:!aNULL:!eNULL; ... }
3.IIS 部署SSL證書
3.1導入證書
打開IIS服務管理器,點擊計算機名稱,雙擊‘服務器證書
雙擊打開服務器證書后,點擊右則的導入
選擇證書文件,點擊確定
3.2站點開啟ssl
選擇證書文件,點擊確定
點擊網站下的站點名稱,點擊右則的綁定
打開網站綁定界面后,點擊添加
添加網站綁定內容:選擇類型為https,端口443和指定對應的SSL證書,點擊確定,添加完成后,網站綁定界面將會看到剛剛添加的內容
4. Tomcat 證書部署
4.1配置SSL連接器
將www.domain.com.jks文件存放到conf目錄下,然后配置同目錄下的server.xml文件, 新增如下內容
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="conf\www.domain.com.jks" keystorePass="changeit" clientAuth="false" sslProtocol="TLS" />
說明:
clientAuth如果設為true,表示Tomcat要求所有的SSL客戶出示安全證書,對SSL客戶進行身份驗證
keystoreFile指定keystore文件的存放位置,可以指定絕對路徑,也可以指定相對于 (Tomcat安裝目錄)環境變量的相對路徑。如果此項沒有設定,默認情況下,Tomcat將從當前操作系統用戶的用戶目錄下讀取名為 “.keystore”的文件。
keystorePass密鑰庫密碼,指定keystore的密碼。(如果申請證書時有填寫私鑰密碼,密鑰庫密碼即私鑰密碼)
sslProtocol指定套接字(Socket)使用的加密/解密協議,默認值為TLS
4.2http自動跳轉https的安全配置
到conf目錄下的web.xml。在</welcome-file-list>后面,</web-app>,也就是倒數第二段里,加上這樣一段
<web-resource-collection > <web-resource-name >SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint>
這步目的是讓非ssl的connector跳轉到ssl的connector去。所以還需要前往server.xml進行配置:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
redirectPort改成ssl的connector的端口443,重啟后便會生效。
三、供應商一鍵開啟
這個是簡單的,當然市場上的網絡服務器供應商也就阿里云做的好,用戶只要購買阿里云的空間就可以一鍵開啟而且有免費的,如下:
1、 選擇域名管理,點擊域名管理
2、 選擇要開開啟的域名,點擊免費證書,選擇同意點擊確認
3、 等待一會兒就可以了,是不是很簡單。
好了,到這樣為止總共三篇文章
將服務器的數據遷移和HTTPS的部署的方法分享到這里,希望通過這三篇文章不管是企業還是個人在日后的網站建設過程能有所幫助。