国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Nginx > 正文

詳解Nginx服務(wù)器中配置全站HTTPS安全連接的方法

2024-08-30 12:27:54
字體:
供稿:網(wǎng)友
這篇文章主要介紹了詳解Nginx服務(wù)器中配置全站HTTPS安全連接的方法,其中要點(diǎn)還是在于SSL證書的申請,需要的朋友可以參考下
 

HTTPS就等于HTTP加上TLS(SSL),HTTPS協(xié)議的目標(biāo)主要有三個(gè):

    數(shù)據(jù)保密性。保證內(nèi)容在傳輸過程中不會(huì)被第三方查看到。就像快遞員傳遞包裹時(shí)都進(jìn)行了封裝,別人無法知道里面裝了什么東西。
    數(shù)據(jù)完整性。及時(shí)發(fā)現(xiàn)被第三方篡改的傳輸內(nèi)容。就像快遞員雖然不知道包裹里裝了什么東西,但他有可能中途掉包,數(shù)據(jù)完整性就是指如果被掉包,我們能輕松發(fā)現(xiàn)并拒收。
    身份校驗(yàn)。保證數(shù)據(jù)到達(dá)用戶期望的目的地。就像我們郵寄包裹時(shí),雖然是一個(gè)封裝好的未掉包的包裹,但必須確定這個(gè)包裹不會(huì)送錯(cuò)地方。

啟用HTTPS之前需要有證書,而證書需要首先在自己服務(wù)器上創(chuàng)建CSR,對應(yīng)的公鑰和私鑰。這里我全部都拿Nginx服務(wù)器舉例,Apache也不會(huì)差太多,都是基于openssl的。因?yàn)槲抑挥幸粋€(gè)主機(jī)域名www.survivalescaperooms.com,所以證書方便選擇了COMODO的PositiveSSL,每年9刀。需要注意COMODO要求證書至少是2048位,見下面的命令。激活證書的時(shí)候需要注意common name那里要填寫自己的域名地址,我因?yàn)椴⒉皇褂胿evb.com,所以這里寫的就是www.survivalescaperooms.com,需要注意這兩個(gè)主機(jī)地址是不同的。其他的組織名公司名什么的如果沒有就寫NA,不要留空。下面簡單說一下步驟


1、以root登錄,升級服務(wù)器。這里是為了解決OpenSSL的一個(gè)大漏洞CVE-2014-0224,因?yàn)镃hangeCipherSpec消息的問題可能導(dǎo)致中間人攻擊,解密并修改被攻擊的服務(wù)器和客戶端之間的通信,從而獲得加密的數(shù)據(jù)。

查看OpenSSL版本,確認(rèn)至少在1.0.1h以上,

openssl version -a

如果沒有,升級服務(wù)器,以Debian為例

apt-get updateapt-get upgrade

2、創(chuàng)建CSR和私鑰

openssl req -new -newkey rsa:2048 -nodes -keyout www.survivalescaperooms.com.key -out www.survivalescaperooms.com.csr

得到2個(gè)文件,私鑰www.survivalescaperooms.com.key,CSR文件www.survivalescaperooms.com.csr,其中CSR里面的內(nèi)容在激活證書的時(shí)候需要提交

3、購買證書,完成激活,下載證書文件

下載的證書文件通常是一個(gè)壓縮包,有些是2個(gè)文件,有些是4個(gè)文件

如果是2個(gè)文件,是這樣的:

  • www_jb51_net.ca-bundle
  • www_jb51_net.crt

如果是4個(gè)文件,通常都是這樣的:

  • www_jb51_net.crt
  • COMODORSADomainValidationSecureServerCA.crt
  • COMODORSAAddTrustCA.crt
  • AddTrustExternalCARoot.crt

其中www_slyar_com.ca-bundle就是自動(dòng)合并了其他3個(gè)文件的產(chǎn)物,一個(gè)道理

4、合并證書,順序一定不能錯(cuò)

cat www_jb51_net.crt www_slyar_com.ca-bundle > www.survivalescaperooms.com.crt

或者

cat www_slyar_com.crt www_slyar_com.ca-bundle > www.survivalescaperooms.com.crt

最后產(chǎn)生的www.survivalescaperooms.com.crt是4個(gè)文件的合并,此文件與之前產(chǎn)生的www.survivalescaperooms.com.key一起組成了Nginx需要使用的證書

5、把www.survivalescaperooms.com.crt和www.survivalescaperooms.com.key復(fù)制到Nginx的conf目錄下,比如/usr/local/nginx/conf/

cp www.survivalescaperooms.com.crt www.survivalescaperooms.com.key /usr/local/nginx/conf/

6、修改Nginx配置文件或者vhost/下的虛擬主機(jī)配置文件,啟用https,配置加密方式等

#合并80和443配置文件也可以,一起配置,最后強(qiáng)制轉(zhuǎn)移80到443就可以了listen 80;listen 443;#指定證書文件ssl_certificate www.survivalescaperooms.com.crt;ssl_certificate_key www.survivalescaperooms.com.key;#禁用不安全的SSLv1 2 3,只使用TLSssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;#RC4也是不安全的了,只能去掉ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;#301轉(zhuǎn)移if ($server_port = 80) {return 301 https://$server_name$request_uri;}

7、測試Nginx配置文件并重新reload配置文件

Nginx -tservice nginx reload

這樣服務(wù)器的HTTPS就配置完了。

既然HTTPS非常安全,數(shù)字證書費(fèi)用也不高,那為什么互聯(lián)網(wǎng)公司不全部使用HTTPS呢?原因主要有兩點(diǎn):

HTTPS對速度的影響非常明顯。每個(gè)HTTPS連接一般會(huì)增加1-3個(gè)RTT,加上加解密對性能的消耗,延時(shí)還有可能再增加幾十毫秒。
HTTPS對CPU計(jì)算能力的消耗很嚴(yán)重,完全握手時(shí),web server的處理能力會(huì)降低至HTTP的10%甚至以下。

HTTPS為什么會(huì)嚴(yán)重降低性能?主要是握手階段時(shí)的大數(shù)運(yùn)算。其中最消耗性能的又是密鑰交換時(shí)的私鑰解密階段(函數(shù)是rsa_private_decryption)。這個(gè)階段的性能消耗占整個(gè)SSL握手性能消耗的95%。

然而隨著各大網(wǎng)站的相繼跟進(jìn)與硬件的摩爾定律下,為了安全而做這點(diǎn)性能犧牲還是值得的。



發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 招远市| 文昌市| 天长市| 邯郸市| 深州市| 新源县| 西安市| 象州县| 郎溪县| 岗巴县| 珲春市| 水城县| 策勒县| 林甸县| 江门市| 张家界市| 万源市| 古蔺县| 盈江县| 康定县| 鄯善县| 肥西县| 嘉义市| 固始县| 图木舒克市| 万载县| 云林县| 汶上县| 西宁市| 隆子县| 苍溪县| 贡觉县| 兴宁市| 宝应县| 宝坻区| 织金县| 华亭县| 澄城县| 正镶白旗| 宜川县| 日土县|