簡體   English   中英

這是Apache + Tomcat之間的錯誤SSL連接嗎?

[英]Is this a false SSL connection between Apache + Tomcat?

我正在查看本指南,使用SSL設置tomcat + apache: http//www.mulesoft.com/tcat/tomcat-ssl

在“何時使用SSL與Tomcat”一節下,它說:

“...換句話說,如果您使用Web服務器將Tomcat作為應用程序服務器或Tomcat servlet容器使用它,那么在大多數情況下,您應該讓Web服務器充當所有SSL請求的代理”

由於我已經使用SSL設置了網絡服務器,因此我決定保持懶惰。 我用默認設置安裝了tomcat,並啟動了它。 在我的httpd.conf中,我將所有80個流量重定向到443,然后將proxypass和proxypassreverse重定向到ajp://hostname.com:8009。 我重新啟動了httpd,它“似乎”通過ssl重定向到tomcat服務器。 這完全被打破了還是我真的設法做了我想要的第一次去? 任何測試建議都非常感謝。

<VirtualHost *:80>
        ServerName hostname_DNS_alias.com
        Redirect / https://hostname_DNS_alias.com
</VirtualHost>

<VirtualHost *:443>
        SSLEngine On
        SSLCertificateFile /etc/pki/tls/certs/thecrt.crt
        SSLCertificateKeyFile /etc/pki/tls/private/thekey.key
        SSLCertificateChainFile /etc/pki/tls/certs/CA.crt
        ServerName hostname_DNS_alias.com
        DocumentRoot /var/www/html

        <Proxy *>
                AddDefaultCharset off
                Order deny,allow
                Allow from all
        </Proxy>

        ProxyPass          /    ajp://hostname.com:8009/
        ProxyPassReverse   /    ajp://hostname.com:8009/
</VirtualHost>

我想你已經知道了,但你可以查看HTTPD和Tomcat上的訪問日志來確認請求被代理。 您應該在兩個系統上都看到訪問日志條目。

幾個快速筆記......

  • 如注釋中所述,您可以從Tomcat中刪除HTTP連接器。 但這不是必須的。 有時為了測試目的而保持開放是很好的(即你可以直接點擊服務器)或者如果你想在其上運行管理器應用程序。 如果您確實保留它,特別是如果您使用它來運行Manager應用程序,您應該限制對它的訪問。 兩種簡單的方法是將HTTP連接器上的address屬性設置為localhost或者配置RemoteAddressFilter

  • 請記住,從HTTPD服務器到Tomcat的AJP連接未加密(SSL在HTTPD處終止),因此您要確保流量永遠不會通過不安全的網絡(如Internet)。

  • 由於您已經在混合中使用了HTTPD,因此您也可以使用它來提供靜態文件。 如果將它們部署到文檔根目錄,則可以添加“ProxyPass!”。 指令將該路徑排除在代理之外的Tomcat。 這將在請求上提供稍微減少的延遲,因為HTTPD確實需要從Tomcat獲取靜態文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM