1. 概述
证书是单点登录认证系统中很重要的一把钥匙,客户端与服务器的交互安全靠的就是证书;本教程由于是演示所以就自己用 JDK 自带的 keytool 工具生成证书;如果以后真正在产品环境中使用肯定要去证书提供商去购买,证书认证一般都是由 VeriSign、GlobalSign 等国际公认的 CA 机构认证。
本文介绍在 Windows 系统中一种利用自带工具生成 SSL 证书及在 finetube 服务器中配置的方法。
版本要求:2020-09-16之后的jar
2. 操作步骤
2.1 创建p12证书
1)首先需要安装 JRE,然后运行 cmd 或者 Windows Powershell,右键以管理员身份运行,单击确定启动命令提示符窗口。切换到E盘根目录下,执行命令创建如下所示:
注:该 JRE 是finetube 服务器环境变量配置的JRE。
keytool -genkey -v -alias tomcat-servers -keyalg RSA -storetype PKCS12 -keystore server.p12 -storepass 123456 -keypass 123456

2.2 将证书移动至 finetube安装目录下
1)进入E盘根目录下,将新生成的 server.p12 文件复制添加到finetube\lib目录下的fine-data-web-2.0.RELEASE.jar,如下图所示:

2.3 应用证书到 Web 服务器
1)配置 datasource.properties 文件,以管理员身份运行文字编辑器,打开%FINETUBE_HOME%\resources\datasource.properties,修改server.port=14143,并添加以下几行:
#证书的路径. server.ssl.key-store=classpath:server.p12 #证书密码,请修改为您自己证书的密码. server.ssl.key-store-password=123456 #秘钥库类型 server.ssl.keyStoreType=PKCS12 #证书别名 server.ssl.keyAlias=tomcat-servers
修改完的配置文件如下图所示:

2)重启 finetube 服务,访问https://localhost:14143/dataway,如下图所示:

如果看到上面的界面,说明 finetube 的 SSL 配置成功。
3)若要兼容http模式的访问,在dataource.properties配置文件中添加:
server.http.port=14114
重启 finetube 服务,此时访问http://localhost:14114/dataway将会自动重定向到https://localhost:14143/dataway
3. 注意事项
1)如果配置完后启动不了 finetube 服务,则说明第 2.3 节配置不正确,仔细检查是否按上述步骤配置。
2)若访问链接提示「此网站的安全证书存在问题」,是由于使用 Java 生成的证书使用 https 访问时会提示证书风险,可以申请一个阿里云云盾的免费证书。
