具体步骤如下(以demo为例)
1) ./ca.sh : 使用默认的服务器192.168.1.1的证书
./ca.sh IP : 使用IP设置的证书
2) 以上运行后把 gen/demo.cer 导入到浏览器的客户端中,Windows下导入的步骤:
IE/Chrome: 双击demo.cer,导入到“受信任的根证书颁发机构”下
FireFox:工具/选项/高级 下点击“查看证书”,在“证书机构”选项卡中导入demo.cer,然后选择“IP“的证书项,点击“编辑信任”,选择信任即可
3) 重启tomcat[仅此设置时执行1次]
以上设置完成后,使用https://IP 访问web服务器,此时就不会再提示“证书信任”问题了
#!/bin/bash
#命令运行方式 ./ca.sh IP 或 ./ca.sh
#默认的web服务器地址
IP=192.168.1.1
if [ $# = 1 ] ; then
IP=$1
fi
echo "https trust ip: $IP "
if [ -d gen ]; then
rm -r -f gen
fi
mkdir -p gen
KEY=gen/demo.keystore
PASSWD=demo
if [ -f $KEY ]; then
rm -f $KEY
fi
#server
keytool -genkey -v -alias csbit -keyalg RSA -keypass $PASSWD -keystore $KEY -storepass $PASSWD -validity 3650 -dname "CN=$IP,OU=demo,L=beijing,ST=china,C=cn"
#client
keytool -keystore $KEY -keypass $PASSWD -storepass $PASSWD -export -alias demo -file gen/demo.cer
#证书拷贝到tomcat需要的地方
cp -f $KEY ???
echo "all done, restart tomcat for access!"
echo