久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

同一臺云服務器部署的網(wǎng)站如何綁定多個SSL證書,?

 92讀書 2019-10-30

隨著現(xiàn)階段流量入口已經(jīng)從PC端轉移到移動端,,其中微信小程序是一個流量極大的入口。但其要求必須是1.2以上的SSL,,所以把Windows2003這種老古董直接排除在外,。

當然有人通過端口號進行區(qū)分,不過新睿云小編覺得自己用隨意,,要是放出去基本沒戲,。大家都用443或80端口,你搞特殊化網(wǎng)站不符合用戶操作習慣,。所以這里給出的解決方案,,都是新睿云小編這里親手試了的。

1,、使用win2012版本的服務器

Windows2003與Windows2008這兩個系統(tǒng)新睿云小編這里試了一下,,確實沒有辦法實現(xiàn)一個服務器多個ssl證書,不過確實有不一樣的,,比如Windows2012 r2這個系統(tǒng)就不同,,可以跟綁定http域名一樣綁定證書,,可能微軟也自己意識到這個問題。

服務器多站點多域名HTTPS實現(xiàn)

服務器多站點多域名HTTPS實現(xiàn)

假設有這樣一個場景,,我們有多個站點(例如site1.xinruiyun.cn,,site2.xinruiyun.cn和site3.xinruiyun.cn)綁定到同一個IP:PORT,并區(qū)分不同的主機頭,。我們?yōu)槊恳粋€SSL站點申請并安裝了證書,。在瀏覽網(wǎng)站時,用戶仍看到證書不匹配的錯誤,。

1. IIS中實現(xiàn)

問題原因

當一個https的請求到達IIS服務器時,,https請求為加密狀態(tài),需要拿到相應的服務器證書解密請求,。由于每個站點對應的證書不同,,服務器需要通過請求中不同的主機頭來判斷需要用哪個證書解密,然而主機頭作為請求的一部分也被加密,。最終IIS只好使用第一個綁定到該IP:PORT的站點證書解密請求,,從而有可能造成對于其他站點的請求失敗而報錯。

解決方案

第一種解決方案將每個https站點綁定到不同的端口,。但是這樣的話客戶端瀏覽網(wǎng)頁時必須手動指定端口,,例如 https://site.xinruiyun.cn:444

第二種解決方案是為每個站點分配一個獨立的ip,這樣沖突就解決了,,甚至主機頭也不用添加了,。

第三種解決方案是使用通配證書,。我們采用通配證書頒發(fā)給.xinruiyun.cn,,對于我們的示例中,應該采用頒發(fā)給.xinruiyun.cn的證書,,這樣任何訪問該domain的請求均可以通過該證書解密,,證書匹配錯誤也就不復存在了。

第四種解決方案是升級為IIS8,,IIS8中添加的對于SNI(Server Name Indication)的支持,,服務器可以通請求中提取出相應的主機頭從而找到相應的證書。

SNI開啟方式請參考http://www./learn/get-started/whats-new-in-iis-8/iis-80-server-name-indication-sni-ssl-scalability

2. Nginx中實現(xiàn)

打開 Nginx 安裝目錄下 conf 目錄中打開 nginx.conf 文件,,找到

server {

listen 443;

server_name domain1;

ssl on;

ssl_certificate 磁盤目錄/訂單號1.pem;

ssl_certificate_key 磁盤目錄/訂單號1.key;

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;

ssl_prefer_server_ciphers on;

location / {

root html;

index index.html index.htm;

}

}

在上述基礎上,,再添加另一段配置

server {

listen 443;

server_name dommain2;

ssl on;

ssl_certificate 磁盤目錄/訂單號2.pem;

ssl_certificate_key 磁盤目錄/訂單號2.key;

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;

ssl_prefer_server_ciphers on;

location / {

root html;

index index.html index.htm;

}

}

通過上述配置在Nginx中支持多個證書

Apache配置HTTPS虛擬主機共享443端口

Listen 443

NameVirtualHost *:443

……

ServerName www.example1.com

SSLCertificateFile common.crt;

SSLCertificateKeyFile common.key;

SSLCertificateChainFile ca.crt

……

……

ServerName www.example2.com

SSLCertificateFile common2.crt;

SSLCertificateKeyFile common2.key;

SSLCertificateChainFile ca2.crt

……

IIS6上實現(xiàn)多域名證書

檢查WINDOWS2003是否已經(jīng)升級到SP1以上版本,如果沒有升級SP1,,則后續(xù)步驟將無法完成確保使用的證書是多域名,,或者是通配符證書,兩個網(wǎng)站必須都使用這個證書,,如果這個證書的CN和SAN不包含著2個網(wǎng)站的域名,,就會報警告首先按正常的流程,,為站點1,安裝SSL證書,,并將SSL端口配置為443,。對站點2,選擇分配證書,,并選擇站點1使用的證書,,并將SSL端口配置為其他端口號(444,445,,446...)

綁定SSL1

綁定SSL2

綁定SSL3

IIS SNI 4請用本機管理員登入系統(tǒng),,啟動命令行程序“cmd”。運行以下指令:

cscript.exe c:/inetpub/adminscripts/adsutil.vbs set /w3svc/站點標識符/SecureBindings ":443:主機頭"

回到IIS6控制臺,,刷新,,可以發(fā)現(xiàn)網(wǎng)站2的SSL端口已經(jīng)改成443了。

IIS服務器多域名SSL證書綁定443端口解決方案

默認情況一個服務器的IIS只能綁定一個HTTPS也就是443端口

要實現(xiàn)多個站點對應HTTPS只能更改IIS配置

1,、默認情況一個服務器的IIS只能綁定一個HTTPS也就是443端口

要實現(xiàn)多個站點對應HTTPS只能更改IIS配置

首先把每個站點分配個不同端口,,如443.444.445…(一定要是多域證書)

2、然后在:C:/Windows/system32/inetsrv/config/applicationHost.config

找到

<binding protocol="https" bindingInformation="*:443" />

<binding protocol="https" bindingInformation="*:444" />

<binding protocol="https" bindingInformation="*:445" />

修改成:

<binding protocol="https" bindingInformation="*:443:www.xinruiyun.cn" />

<binding protocol="https" bindingInformation="*:443:www.xinruiyun.cn" />

<binding protocol="https" bindingInformation="*:443:www.xinruiyun.cn" />

切記需要對應的每個站點都修改,。

然后在iis的站點上重新選擇下證書,,重啟iis站點。

至此就實現(xiàn)我們當初的目的,,同一個服務器下綁定多個SSL證書,,當然可能會有更好的辦法,如果您有更好的辦法可以給我們留言反饋,。謝謝每一位支持的小伙伴,!

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多