tomcat与tomee_Apache TomEE(和Tomcat)的自签名证书
tomcat與tomee
可能在大多數Java EE項目中,您將擁有具有SSL支持( https )的部分或整個系統,因此瀏覽器和服務器可以通過安全連接進行通信。 這意味著在處理數據之前,已發送的數據已加密,傳輸并最終解密。
問題在于,有時官方的“密鑰庫”僅可用于生產環境,而不能在開發/測試機器中使用。 然后,一個可能的步驟是由團隊的一個成員創建一個非官方的“密鑰庫” ,并將其共享給所有成員,以便每個人都可以使用https在本地進行測試,并且對于測試/ QA環境也是如此。
但是使用這種方法會遇到一個問題,那就是,當您要運行該應用程序時,您會收到一條警告/錯誤消息,表明證書不受信任。 您可以忍受這一點,但是我們可以做得更好,并且可以通過創建自簽名SSL證書來避免這種情況。
在本文中,我們將看到如何使用自簽名證書在Apache TomEE (和Tomcat )中創建和啟用SSL 。
首先要做的是安裝openssl。 此步驟將取決于您的操作系統。 就我而言,我使用Ubuntu 14.04運行。
然后,我們需要使用Triple-DES算法生成1024位RSA私鑰,并以PEM格式存儲。 我將使用{userhome} / certs目錄生成所有必需的資源,但是可以對其進行更改而沒有任何問題。
生成私鑰
openssl genrsa -des3 -out server.key 1024在這里,我們必須引入一個密碼,在這個示例中,我將使用apachetomee (請在生產中不要這樣做)。
產生企業社會責任
下一步是生成CSR (證書簽名請求)。 理想情況下,將生成此文件并將其發送給Thawte或Verisign等證書頒發機構,后者將驗證身份。 但是在我們的情況下,我們將使用先前的私鑰對CSR進行自簽名。
openssl req -new -key server.key -out server.csr提示之一是“公用名(例如,服務器FQDN或您的姓名)”。 重要的是,要使用SSL保護的服務器的標準域名填寫該字段。 如果是開發機,則可以設置“ localhost”。
現在已經有了私鑰和csr,我們可以通過運行以下命令來生成有效期為一年的X.509自簽名證書:
生成自簽名證書
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt要在Apache TomEE (和Tomcat)中安裝證書,我們需要使用密鑰庫。 該密鑰庫是使用keytool命令生成的。 要使用此工具,證書應為PKCS12證書。 因此,我們將使用openssl通過運行以下命令將證書轉換為PKCS12格式:
準備Apache TomEE
openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12 -name test_server -caname root_ca 我們差不多完成了,現在我們只需要創建密鑰庫。 我已使用與其他所有資源一樣的密碼來保護密鑰庫,這是
阿帕切米 。
現在,我們在{userhome} / certs中創建了一個keystore.jks文件。
將密鑰庫安裝到Apache TomEE中
在http://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html中描述了將密鑰庫安裝到Apache TomEE (和Tomcat)中的過程。 但總而言之,唯一要做的是打開$ {TOMEE_HOME} /config/server.xml并定義SSL連接器。
<Service name="Catalina"><Connector port="8443" protocol="HTTP/1.1"maxThreads="150" SSLEnabled="true" scheme="https" secure="true"keystoreFile="${user.home}/certs/keystore.jks" keystorePass="apachetomee"clientAuth="false" sslProtocol="TLS" /> </Service>請注意,在我的案例中,您需要設置密鑰庫位置{userhome} /certs/keystore.jks以及用于打開名為apachetomee的密鑰庫的密碼。
準備瀏覽器
在啟動服務器之前,我們需要在瀏覽器中將server.crt添加為有效的Authority。
在Firefox中: Firefox首選項->高級->查看證書->權限(選項卡),然后導入server.crt文件。
在Chrome中:設置-> HTTPS / SSL->管理證書…->權限(標簽),然后導入server.crt文件。
現在,您準備啟動Apache TomEE (或Tomcat),并且可以使用https和端口8443導航到任何已部署的應用程序。
就是這樣,現在我們可以運行測試(使用Selenium ),而不必擔心不受信任的證書警告。
翻譯自: https://www.javacodegeeks.com/2015/01/self-signed-certificate-for-apache-tomee-and-tomcat.html
tomcat與tomee
總結
以上是生活随笔為你收集整理的tomcat与tomee_Apache TomEE(和Tomcat)的自签名证书的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓孤胆车神维加斯(安卓孤胆车神)
- 下一篇: 只能备案本人驾驶证(只能备案)