網頁訪問配置方法
目錄
ufida.p12證書庫導入D:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.kdb證書庫
ufida.p12證書導入D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\key.p12證書庫
ufida.p12證書庫導入D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\trust.p12證書庫
合成p12證書文件
客戶共提供三個文件
這三個文件中cer爲證書文件 key爲私鑰文件 jks爲加密庫文件。均可使用,簽名相同,但是需要進行轉化。
WAS支持p12格式。
首先拿到廠商給的cer和key。密碼爲123qwe
用openssl合成爲efivestar.com.p12
合成步驟
1. 下載win64的Openssl,可到http://slproweb.com/products/Win32OpenSSL.html下載,這裏下載1.0.1j版本
2. 下載Openssl源碼,去官網http://www.openssl.org/下載即可。如下圖
解壓openssl-1.0.1j.tar.gz,找到\openssl-1.0.1j\apps目錄,拷貝demoCA目錄和openssl.cnf文件到Openssl的安裝目錄下的bin目錄下(即D:\OpenSSL-Win64\bin\)。
3. 進行合成
合成後如下
Httpd.conf文件配置
文件位置\IBM\HTTPServer\conf\httpd.conf
修改httpd.conf文件增加如下內容(在原來標準配置文件的大約233行下增加)。
//其中SSLClientAuth Required參數是啓動客戶端雙重認證。
//如果客戶端不想導入證書,無需客戶端認證,那麼這個值Required設置成Optional
d:\ibm\HTTPServer是HTTPServer的安裝路徑。
javavag 是機器名稱
# SSL config
LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
Listen 0.0.0.0:443
<VirtualHost *:443>
ServerName javavag
SSLEnable
SSLClientAuth Optional
Keyfile "d:\ibm\HTTPServer\Plugins\config\webserver1\plugin-Key.kdb"
SSLStashfile "d:\ibm\HTTPServer\Plugins\config\webserver1\plugin-Key.sth"
</VirtualHost>
SSLDisable
導入用戶提供的證書到was的證書庫
用戶提供的證書庫文件的格式需要爲PKCS12, 該格式以p12爲後綴,在用友的安裝目錄下有一個默認的證書庫文件,如\nc55\bin\cert\ufida.p12。
下面的安裝案例以ufida.p12爲例。如果是用戶的證書庫文件,則凡是選擇ufida.p12文件的地方換爲對應的用戶庫文件即可。如果是WAS8.5,則對應的文件存在於C:\IBM8\WebSphere\Plugins\etc下。
ufida.p12證書庫導入D:\IBM\HTTPServer\Plugins\config\webserver1\plugin-key.kdb證書庫
- 執行
D:\IBM\HTTPServer\bin\ikeyman.bat
- 打開密鑰數據庫文件
- 輸入密碼,默認爲:WebAS
- 刪除plugin-key.kdb中默認的證書庫
- 導入用戶提供的證書庫
- 打開源密鑰數據庫
打開源密鑰數據庫的密碼efivestar.com.p12的密碼爲:123qwe
- 設置該證書爲缺省證書
雙擊上圖中選中的證書, 設置該證書爲缺省證書,如果只有一個證書,則默認爲缺省。
ufida.p12證書導入D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\key.p12證書庫
說明: javavag爲安裝WAS軟件所在的機器名
運行D:\IBM\AppServer\bin\ikeyman.bat
- 打開WAS中證書庫文件
密碼默認爲: WebAS
- 導入用戶提供的密鑰文件
- 打開源密鑰數據的密碼ufida.p12的密碼爲:123qwe
ufida.p12證書庫導入D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\trust.p12證書庫
說明: javavag爲安裝WAS軟件所在的機器名
運行D:\IBM\AppServer\bin\ikeyman.bat
- 打開WAS中證書庫文件
- 打開密鑰數據庫文件
密碼默認爲:WebAS
- 導入用戶提供的密鑰文件
- 打開源密鑰數據的密碼ufida.p12的密碼爲:123qwe
ufida.p12證書庫導入分別導入庫
D:\IBM\AppServer\profiles\AppSrv01\config\cells\javavagCell01\nodes\javavagNode01\key.p12
和
D:\IBM\AppServer\profiles\AppSrv01\config\cells\javavagCell01\nodes\javavagNode01\trust.p12
說明: javavag爲安裝WAS軟件所在的機器名,如果有多個Node,則需要在每個Node中都要
分別導入. 如 javavagNode01 ,如果還有Node, 應該爲javavagNode02 。
- 打開WAS中證書庫文件
運行D:\IBM\AppServer\bin\ikeyman.bat
打開WAS中證書庫文件,然後導入用戶提供的密鑰文件
同樣的方法打開WAS中證書庫文件,然後導入用戶提供的密鑰文件
如果集羣中還有其他節點,也要把證書倒入其中的庫中。文件位置類似下面。
D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\ trust.p12
D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\ key.p12
D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\nodes\javavagNode01\ trust.p12
D:\IBM\AppServer\profiles\Dmgr01\config\cells\javavagCell01\nodes\javavagNode01\ key.p12
D:\IBM\AppServer\profiles\AppSrv01\config\cells\javavagCell01\ trust.p12
D:\IBM\AppServer\profiles\ AppSrv01\config\cells\javavagCell01\ key.p12
D:\IBM\AppServer\profiles\AppSrv01\config\cells\javavagCell01\nodes\javavagNode01\ trust.p12
D:\IBM\AppServer\profiles\ AppSrv01\config\cells\javavagCell01\nodes\javavagNode01\ key.p12
導入NC證書
進入nchome/bin
執行wasCertcmd.bat IMP命令導入證書。
將NC證書導入到WAS的jdk受信任庫當中。
啓用WAS安全性
點擊安全配置嚮導。
WAS管理控制檯同步節點信息
作完上述操作後在was的控制檯的節點管理處選擇全部節點作全部再同步操作。
生成插件和傳播插件
需要手動生成webserver1
保存後提交,然後點擊nc63應用
- 管理模塊的映射
將<plunin-install>/bin/ configurewebserver1.bat文件拷貝到dmgr的<was-install>/bin目錄運行,進行管理模塊的映射。
重新導入plugin的證書
同導入用戶提供的證書到was的證書庫相同
重啓WAS
然後將WAS全部重新啓動。即可使用https://ip:443訪問
瀏覽器端安裝證書即可訪問
可以看到證書信息爲rapidssl sha256 ca
如果瀏覽器不能訪問,請清除緩存之後再試。
疑難問題
illegal key size
有時候導入證書的時候會提示,由於JRE的策略問題導致無法進行。由於WAS默認只支持128位的key,超過128位的key時候必須要求進行Policy的文件設置。會報告illegal key size,此時需要進行策略替換。將策略文件替換爲無強度文件。
以windows下,jdk1.6爲例,將jce_policy-6.zip下的兩個jar包複製到 jdk安裝目錄下
例x:\java\jdk1.6.0_10\jre\lib\security\
覆蓋原有文件即可,需要同時修改兩個地方。
D:\IBM\HTTPServer\java\jre\lib\security 和 D:\IBM\WebSphere\AppServer\java\jre\lib\security
- 下載地址
或者
http://download.csdn.net/download/java814483194/8722233
必須使用IBM的策略文件。oracle的無效!!!
通過IHS轉發的時候找不到頁面
打印出日誌可以看到
重新用ikeyman打開證書後發現,Plugin裏面的證書由於剛纔重新生成,被覆蓋掉了。重新導入證書。
同時可以發現,HIS conf的配置文件也有一些問題。需要改爲如下
LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
Listen 20.10.80.15:443
<IfModule mod_ibm_ssl.c>
Listen 443
<VirtualHost *:443>
SSLEnable
SSLClientAuth Optional
ErrorLog logs/erroryk_log
</VirtualHost>
</IfModule>
SSLDisable
Keyfile "D:\IBM\HTTPServer\Plugins\config\webserver1\plugin-Key.kdb"
SSLStashfile "D:\IBM\HTTPServer\Plugins\config\webserver1\plugin-Key.sth"
全部重啓後生效,發現仍然報錯。
查詢IBM官網,找到SSL0208E.
發現報錯爲接受的證書無法驗證檢查。
猜想可能是plugin和應用沒有進行綁定。於是再次進行configwebserver1.bat的運行。
全部重啓server和apache即可