geoServer 地图服务选用了 Jetty服务容器,默认没有添加 https 和 ssl 这两个模块
(1)在geoServer服务安装目录下检查版本号,可以从lib目录里查看jetty版本,然后下载jetty的完整版。
https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/
(2)把压缩包解压到geoServer安装目录下,手动添加https和 ssl这两个模块。
java -jar start.jar --add-to-start=ssl
java -jar start.jar --add-to-start=https
java -jar start.jar --list-modules # 查看当前模块加载情况
(3)准备ssl证书,在腾讯云制作,一年免费期。
(4)生成jetty容器使用的 keystore 格式证书,需要在服务器上运行一下指令
domain.com.cn_bundle.pem 为证书文件,domain.com.cn.key为密钥,输出 out.pk12 文件,命令执行后需要输入两遍证书密码。
openssl pkcs12 -export -in domain.com.cn_bundle.pem -inkey domain.com.cn.key -out out.pk12
keytool -importkeystore -deststorepass domain@123 -destkeypass domain@123 -destkeystore domain.keystore -srckeystore out.pk12 -srcstoretype PKCS12 -srcstorepass domain@123
domain@123为证书密码,把out.pk12文件转成 domain.keystore 文件,生成的文件拷贝到etc目录下,替
换原有的keystore文件。
(5)修改启动文件</