The NoteBook of EricKong

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks
          https介紹:
             HTTPS
          (全稱:Hypertext Transfer Protocol over Secure Socket Layer),是以安全為目標(biāo)的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL。 它是一個URI scheme(抽象標(biāo)識符體系),句法類同http:體系。用于安全的HTTP數(shù)據(jù)傳輸。https:URL表明它使用了HTTPS,但HTTPS存在不同于HTTP的默認(rèn)端口及一個加密/身份驗證層(在HTTPTCP之間)。這個系統(tǒng)的最初研發(fā)由網(wǎng)景公司進(jìn)行,提供了身份驗證與加密通訊方法,現(xiàn)在它被廣泛用于萬維網(wǎng)上安全敏感的通訊,例如交易支付方面

          與http區(qū)別:

              一、https協(xié)議需要到ca申請證書,一般免費證書很少,需要交費。

          二、http是超文本傳輸協(xié)議,信息是明文傳輸,https 則是具有安全性的ssl加密傳輸協(xié)議。

          三、httphttps使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。       

          四、http的連接很簡單,是無狀態(tài)的;HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,比http協(xié)議安全。

          SSL協(xié)議:

            SSL安全套接層協(xié)議(Secure Socket Layer)

            為Netscape所研發(fā),用以保障在Internet上數(shù)據(jù)傳輸之安全,利用數(shù)據(jù)加密(Encryption)技術(shù),可確保數(shù)據(jù)在網(wǎng)絡(luò)上之傳輸過程中不會被截取及竊聽。目前一般通用之規(guī)格為40 bit之安全標(biāo)準(zhǔn),美國則已推出128 bit之更高安全標(biāo)準(zhǔn),但限制出境。只要3.0版本以上之IE.Netscape瀏覽器即可支持SSL

            當(dāng)前版本為3.0。它已被廣泛地用于Web瀏覽器與服務(wù)器之間的身份認(rèn)證和加密數(shù)據(jù)傳輸。

          SSL協(xié)議位于TCP/IP協(xié)議與各種應(yīng)用層協(xié)議之間,是一種國際標(biāo)準(zhǔn)的加密及身份認(rèn)證通信協(xié)議,TCP提供一個可靠的端到端的安全服務(wù),為兩個通訊個體之間提供保密性和完整性(身份鑒別)SSL協(xié)議可分為兩層:SSL記錄協(xié)議(SSL Record Protocol):它建立在可靠的傳輸協(xié)議(如TCP)之上,為高層協(xié)議提供數(shù)據(jù)封裝、壓縮、加密等基本功能的支持。SSL握手協(xié)議(SSL Handshake Protocol):它建立在SSL記錄協(xié)議之上,用于在實際的數(shù)據(jù)傳輸開始前,通訊雙方進(jìn)行身份認(rèn)證、協(xié)商加密算法、交換加密密鑰等。

          如何配置:
          1、生成服務(wù)器端證書文件
          可以使用Windows系統(tǒng)或者Linux系統(tǒng)
          (1)    Windows環(huán)境
          條件:已經(jīng)安裝JDK
          步驟:
          l  進(jìn)入%JAVA_HOME%/bin目錄
          l  執(zhí)行命令
          keytool -genkey -alias tomcat -keyalg RSA -keystore F:\tomcat.keystore -validity 36500
          參數(shù)簡要說明:“F:\tomcat.keystore”含義是將證書文件保存在F盤,證書文件名稱是tomcat.keystore ;“-validity 36500含義是證書有效期,36500表示100年,默認(rèn)值是90
          l  在命令行填寫必要的參數(shù):
          A、輸入keystore密碼:此處需要輸入大于6個字符的字符串
          B、“您的名字與姓氏是什么?”這是必填項,并且必須是TOMCAT部署主機的域名或者IP[如:gbcom.com 或者 10.1.25.251],就是你將來要在瀏覽器中輸入的訪問地址
          C、 “你的組織單位名稱是什么?”、“您的組織名稱是什么?”、“您所在城市或區(qū)域名稱是什么?”、“您所在的州或者省份名稱是什么?”、“該單位的兩字母國 家代碼是什么?”可以按照需要填寫也可以不填寫直接回車,在系統(tǒng)詢問“正確嗎?”時,對照輸入信息,如果符合要求則使用鍵盤輸入字母“y”,否則輸入“n”重新填寫上面的信息
          D、輸入<tomcat>的主密碼,這項較為重要,會在tomcat配置文件中使用,建議輸入與keystore的密碼一致,設(shè)置其它密碼也可以
          l  完成上述輸入后,直接回車則在你在第二步中定義的位置找到生成的文件
          (2)    Linux環(huán)境
          條件:安裝了JDK
          步驟:
          l  進(jìn)入$JAVA_HOME/bin目錄
          l  執(zhí)行命令
          ./keytool -genkey -alias tomcat -keyalg RSA -keystore /usr/local/ac/web/tomcat.keystore -validity 36500
          參數(shù)簡要說明:“/etc/tomcat.keystore”含義是將證書文件保存在路徑/usr/local/ac/web/下,證書文件名稱是tomcat.keystore ;“-validity 36500含義是證書有效期,36500表示100年,默認(rèn)值是90
          l  在命令行填寫必要的參數(shù):
          截圖如下:

          截圖部分說明:
          AEnter keystore password:此處需要輸入大于6個字符的字符串
          B、“What is your first and last name?”這是必填項,并且必須是TOMCAT部署主機的域名或者IP[如:gbcom.com 或者 10.1.25.251],就是你將來要在瀏覽器中輸入的訪問地址
          C、“What is the name of your organizational unit?”、“What is the name of your organization?”、“What is the name of your City or Locality?”、“What is the name of your State or Province?”、“What is the two-letter country code for this unit?”可以按照需要填寫也可以不填寫直接回車,在系統(tǒng)詢問“correct?”時,對照輸入信息,如果符合要求則使用鍵盤輸入字母“y”,否則輸入“n”重新填寫上面的信息
          DEnter key password for <tomcat>,這項較為重要,會在tomcat配置文件中使用,建議輸入與keystore的密碼一致,設(shè)置其它密碼也可以
          l  完成上述輸入后,直接回車則在你在第二步中定義的位置找到生成的文件
          2、配置TOMCAT服務(wù)器
          (1)    如果你是在Windows環(huán)境中生成證書文件,則需要將生成的證書tomcat.keystore拷貝到Tomcat將要引用的位置,假設(shè)tomcat的應(yīng)用證書的路徑是“/etc/tomcat.keystore”,則需要將證書文件拷貝到“etc/”下;如果是在Linux環(huán)境按照上述介紹的步驟生成證書文件的話,此時證書文件已經(jīng)在“etc/”下。
          (2)    配置Tomcat,打開$CATALINA_HOME/conf/server.xml,修改如下,
          <Connector port="8080" protocol="HTTP/1.1"
                         connectionTimeout="20000"
                         redirectPort="8443" />
          修改參數(shù)=>
          <Connector port="80" protocol="HTTP/1.1"
                         connectionTimeout="20000"
                         redirectPort="443" />
           
          <!--
          <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
                        maxThreads="150" scheme="https" secure="true"
                        clientAuth="false" sslProtocol="TLS"/>
           -->
          去掉注釋且修改參數(shù)=>
          <Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
                         maxThreads="150" scheme="https" secure="true"
                         clientAuth="false" sslProtocol="TLS" keystoreFile="/etc/tomcat.keystore" keystorePass="www.gbcom.com.cn"/>
          注釋:標(biāo)識為淡藍(lán)色的兩個參數(shù),分別是證書文件的位置和<tomcat>的主密碼,在證書文件生成過程中做了設(shè)置
          <!--
             <Connector port="8009" enableLookups="false" protocol="AJP/1.3" redirectPort="8443" />
          -->
          修改參數(shù)=>
          <Connector port="8009" enableLookups="false" protocol="AJP/1.3" redirectPort="443" />
          (3) 打開$CATALINA_HOME/conf/web.xml,在該文件末尾增加:
          2.強制https訪問

          在tomcat\conf\web.xml中的</welcome-file-list>后面加上這樣一段:
           
              1. <login-config>
              2. <!-- Authorization setting for SSL -->
              3. <auth-method>CLIENT-CERT</auth-method>
              4. <realm-name>Client Cert Users-only Area</realm-name>
              5. </login-config>
              6. <security-constraint>
              7. <!-- Authorization setting for SSL -->
              8. <web-resource-collection >
              9. <web-resource-name >SSL</web-resource-name>
              10. <url-pattern>/*</url-pattern>
              11. </web-resource-collection>
              12. <user-data-constraint>
              13. <transport-guarantee>CONFIDENTIAL</transport-guarantee>
              14. </user-data-constraint>
              15. </security-constraint>

          3、上述配置完成后,重啟TOMCAT后即可以使用SSLIE地址欄中可以直接輸入地址不必輸入http:// 或者 https:// ;也可以輸入 http:// ” 會跳轉(zhuǎn)成為 “https://” 來登錄
          4、注意事項:
          (1)    生成證書的時間,如果IE客戶端所在機器的時間早于證書生效時間,或者晚于有效時間,IE會提示“該安全證書已到期或還未生效”
          (2)    如果IE提示安全證書上的名稱無效或者與站點名稱不匹配,則是由生成證書時填寫的服務(wù)器所在主機的域名“您的名字與姓氏是什么?”/What is your first and last name?”不正確引起的
          posted on 2015-07-15 08:51 Eric_jiang 閱讀(270) 評論(0)  編輯  收藏 所屬分類: tomcat
          主站蜘蛛池模板: 安新县| 东乡| 鲜城| 奉贤区| 天柱县| 弥渡县| 苏尼特左旗| 博野县| 闸北区| 衡山县| 普安县| 黔南| 义乌市| 渝中区| 泸西县| 广元市| 云龙县| 米泉市| 正镶白旗| 乐陵市| 乐昌市| 桦川县| 林甸县| 兴安盟| 略阳县| 故城县| 玛纳斯县| 明光市| 邹平县| 射洪县| 南京市| 奎屯市| 灵山县| 澳门| 晴隆县| 财经| 会宁县| 金坛市| 华安县| 壶关县| 绿春县|