您可以為 Rational DOORS Web Access 將 Apache HTTP Server 配置成反向 Proxy。反向 Proxy 伺服器提供額外的安全層,會保護網路中的 HTTP 伺服器,並改良 Secure Sockets Layer (SSL) 要求的效能。使用反向 Proxy 時,您可以之後再視需要來變更部署拓蹼。
開始之前
- 安裝 Rational DOORS Web Access,但是不啟動 Rational DOORS Web Access 元件或伺服器。
- 安裝 Apache HTTP Server。
關於這項作業
反向 Proxy 伺服器是特殊的 HTTP 伺服器,會阻止直接存取內容 HTTP 伺服器。對內容所提出的所有要求會行經一個公開可見的反向 Proxy 伺服器 URI,再重新導向至私密的 Rational DOORS Web Access 伺服器 URI。
使用反向 Proxy 伺服器的優點如下:
- 未來再變更部署拓蹼:當您在部署中使用反向 Proxy 時,不論應用程式部署在多少部機器和埠號上,在公用 URL 中可以只提供一個主機名稱。因此您可以之後再變更部署拓蹼。
- 安全:反向 Proxy 伺服器提供額外的安全層,並且可以保護通訊網路中的其他 HTTP 伺服器。如果您在反向 Proxy 伺服器和內容 HTTP 伺服器之間使用防火牆,可以將防火牆配置成只接受來自反向 Proxy 伺服器的 HTTP 要求。
- 效能:您可以為反向 Proxy 伺服器配備 SSL 加速硬體,以改良 SSL 要求的效能。
在本程序中,您將執行下列步驟:
- 準備 SSL 金鑰儲存庫。
- 修改 httpd.conf 和 httpd-ssl.conf 檔。
- 啟動 Apache HTTP Server。
- 啟動 Rational DOORS Web Access 元件。
- 啟動 Rational DOORS Web Access 伺服器。
程序
- 準備 SSL 金鑰儲存庫:
- 在所提供的 IBM 金鑰管理公用程式 (IKeyMan) SSL 工具中,建立或開啟您的 SSL 金鑰儲存庫。
- 在您儲存金鑰儲存庫時,請選取用來將密碼儲存到隱藏檔的選項。
- 記錄下列資訊:
- 預設 SSL 憑證標籤
- 金鑰儲存庫檔的路徑
- 隱藏檔的路徑
- 編輯位於 Apache 安裝架構 conf 目錄中的 httpd.conf 檔,以便將 Apache HTTP Server 配置成處理 SSL 要求。
- 解除註解下列模組:
- LoadModule proxy_module modules/mod_proxy.so
- LoadModule proxy_ajp_module
modules/mod_proxy_ajp.so
- LoadModule proxy_http_module modules/mod_proxy_http.so
- LoadModule ssl_module modules/mod_ssl.so
- 移至開頭是 #Secure (SSL/TLS) connections 的 SSL 配置區段。
- 在該區段中,新增下列項目:
#
# reverse proxy
#
SSLProxyEngine On
ProxyPreserveHost On
- 新增項目以識別主機網域:
ProxyPass / https://host_domain:DWA_Tomcat_port/
ProxyPassReverse / https://host_domain:DWA_Tomcat_port/
例如:ProxyPass / https://private_host.com:7443/
ProxyPassReverse / https://private_host.com:7443/
註: 在本例中,一般使用者可以看見的 Proxy 埠設為 8443,Proxy 要求會重新導向至 private_host 伺服器上的埠 7443。視您的環境而定,為了避免埠衝突,配置給 Proxy 伺服器和 Apache Tomcat 使用的埠可能設為不同值。
- 解除註解下列這一行:
Include conf/extra/httpd-ssl.conf
如需配置反向 Proxy 的相關資訊,請參閱 Apache Software Foundation 說明文件中的 Apache Module mod_proxy。
- 編輯 httpd-ssl.conf 檔,它位於 Apache 安裝架構中的 /conf/extra 目錄。
- 更新配置了 SSL 的主機名稱和埠。
- 視需要更新設定,包括下列設定:
- SSLCertificateFile
- SSLCertificateKeyFile
註: 如果 SSLCertificateKeyFile 金鑰檔受密碼保護,每當伺服器啟動時,必須輸入密碼。您可以移除密碼,但在這樣做之前,請先考量這個動作對您環境所帶來的安全隱憂。
如需編輯 HTTP SSL 檔的相關資訊,請參閱 Apache Software Foundation 說明文件中的 Apache Core Features 和 Apache Module mod_ssl。
- 啟動 Apache HTTP Server。任何錯誤都會寫入到 error.log 檔,這個檔案位於 Apache 安裝架構中的 /logs 資料夾。
- 啟動 Rational DOORS Web Access 元件。
- 啟動 Rational DOORS Web Access 伺服器。
- 輸入下列 dbadmin 指令,將 Rational DOORS Web Access 公用 URL 和埠設定給反向 Proxy 伺服器:
dbadmin -dwaHost reverse_proxy_url -dwaPort reverse_proxy_portnumber
如需 dbadmin 指令的相關資訊,請參閱配置 Rational DOORS 資料庫伺服器。