Linux版的google-chrome,為了"不重造輪子",使用第三方工具進行認證的驗證。
方法如下:
先決條件:安裝好第三方的認證管理工具:
yum install nss-tools
第一、從https網站,匯出CA認證,方法參考:
http://blog.avirtualhome.com/2010/02/02/adding-ssl-certificates-to-google-chrome-linux-ubuntu/
考慮到一些英文不太好的同學,我簡要解釋一下,例如有一個https網站名為www.abc.com,先按如下內容儲存到一個名為import-cert.sh的指令碼:
----------import-cert.sh-------------
#!/bin/sh
#
# usage: import-cert.sh remote.host.name [port]
#
REMHOST=$1
REMPORT=${2:-443}
exec 6>&1
exec > $REMHOST
echo | openssl s_client -connect ${REMHOST}:${REMPORT} 2>&1 |sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'
certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "$REMHOST" -i $REMHOST
exec 1>&6 6>&-
----------import-cert.sh-------------
然後使用這件匯出指令碼匯出CA認證(會得到一個與www.abc.com同名的CA認證):
import-cert.sh www.abc.com [port]
第二、把認證匯入第三方的認證資料庫:
certutil -d sql:$HOME/.pki/nssdb -A -t TC -n "CA-Name" -i www.abc.com
第三、對於互聯公司OA系統,通常還有私人認證,把這個匯入到第三方的認證資料庫:
首先,想辦法從IE裡把認證匯出來(匯出方法參考:http://orzl.com/weblog/export-cer-with-jailbreak),假設這個認證名為PrivateKey.pfx,匯入方法為:
pk12util -d sql:$HOME/.pki/nssdb -i PrivateKey.pfx
第四、以auto-ssl-client-auth選項啟動chrome:
google-chrome --auto-ssl-client-auth
註:google chrome 7.0.517.41以後,直接啟動就可以了。