undertow 支持 https

3 篇文章 0 订阅
1 篇文章 0 订阅

undertow 支持 https


环境说明

生成证书需要 jdk 中的文件,在中标麒麟操作系统中内置的 jdk 没有尝试成功,后来使用上传新JDK的方式解决,现场可以灵活使用

生成秘钥证书

复制 keytool 文件

## 创建秘钥文件文件夹
mkdir /home/archser/services/keystore
## 进入文件夹
cd /home/archser/services/keystore
## 复制生成秘钥的文件
cp /home/archser/soft/jdk1.8.0_221/bin/keytool ./

生成证书

[root@MiWiFi-R3600-srv keystore]# keytool -genkey -alias tomcat -keyalg RSA -keystore   ./server.keystore

## 输入密码
输入密钥库口令:  
## 输入密码
再次输入新口令: 
您的名字与姓氏是什么?
  [Unknown]:  li
您的组织单位名称是什么?
  [Unknown]:  li
您的组织名称是什么?
  [Unknown]:  1
您所在的城市或区域名称是什么?
  [Unknown]:  1
您所在的省/市/自治区名称是什么?
  [Unknown]:  1
该单位的双字母国家/地区代码是什么?
  [Unknown]:  1
CN=li, OU=li, O=1, L=1, ST=1, C=1是否正确?
## 手动输入 是
  []:  是

输入 <tomcat> 的密钥口令
##直接回车
    (如果和密钥库口令相同, 按回车):   

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore ./server.keystore -destkeystore ./server.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

切换标准

keytool -importkeystore -srckeystore ./server.keystore -destkeystore ./server.keystore -deststoretype pkcs12

配置后端开启HTTPS

修改每个后端项目的 undertow.properties 配置文件

undertow.host=0.0.0.0
## 更换一个 http 端口,防止端口冲突,随便写,不重复就可以
undertow.port=21033
undertow.contextPath=/archser
server.undertow.accesslog.pattern=%h %l %u %t &quot;%r&quot; %s %b %D
undertow.ssl.enable=true
## 让HTTPS使用原始端口
undertow.ssl.port=11032
undertow.ssl.keyStoreType=PKCS12
undertow.ssl.keyStore=/home/archser/services/keystore/server.keystore
undertow.ssl.keyStorePassword=Hywd@1qaz
undertow.http.toHttps=false
undertow.http.toHttpsStatusCode=302
undertow.http.disable=false

修改每个服务的 AppConfig-pro.properties

## 将 aserver 的访问地址修改为 https
aserverUrl=https://127.0.0.1:11038

修改aserver 配置文件

## 将基础服务地址修改为 https
basic.url=https://127.0.0.1:11038

配置 Nginx 转发 https

以 aserver.conf 为例,将配置文件中的所有转发地址修改为 https

location /aserver {
                proxy_pass   https://127.0.0.1:11038/aserver;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection $connection_upgrade;
                proxy_set_header X-Real-IP $remote_addr;
        }

修改数据库信息

update AS_SYSTEM set service = replace(service,'http','https');
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值