WorkBuddySSL配置与HTTPS开启教程
时间:2026-05-02 10:11:39 310浏览 收藏
本文详细介绍了为WorkBuddy服务安全启用HTTPS访问的四种主流SSL证书配置方案:通过Nginx反向代理部署证书、在Java启动参数中直接集成HTTPS、利用Certbot自动获取并续期Let’s Encrypt免费证书,以及在Docker容器化部署中挂载证书并注入Spring Boot SSL配置;无论您是初学者还是运维老手,都能根据实际环境(如是否使用反向代理、是否容器化、是否面向公网)快速选择最适配、最可靠的方式,轻松实现端到端通信加密,兼顾安全性与可维护性。

如果您在安装WorkBuddy时需要启用HTTPS访问,则必须正确配置SSL证书以确保通信加密。以下是完成该配置的多种可行方法:
一、使用Nginx反向代理配置SSL证书
通过Nginx作为反向代理层,在其上部署SSL证书,使WorkBuddy后端服务仍以HTTP方式运行,而外部访问走HTTPS。此方式无需修改WorkBuddy源码或启动参数。
1、将SSL证书文件(如fullchain.pem和privkey.pem)上传至服务器的/etc/nginx/ssl/目录。
2、编辑Nginx配置文件,例如/etc/nginx/sites-available/workbuddy,添加server块并启用SSL监听443端口。
3、在server块中配置ssl_certificate指令指向fullchain.pem路径,ssl_certificate_key指向privkey.pem路径。
4、设置location / { proxy_pass http://127.0.0.1:8080; },将请求转发至WorkBuddy默认HTTP端口。
5、执行nginx -t验证配置语法,确认无误后运行systemctl reload nginx生效。
二、在WorkBuddy启动参数中直接启用HTTPS
WorkBuddy支持通过Java系统属性指定密钥库路径与密码,使其内置Tomcat直接启用HTTPS监听,适用于独立部署场景。
1、将PKCS#12格式证书(如workbuddy.p12)放置于WorkBuddy安装目录下的config/ssl/子目录中。
2、修改启动脚本start.sh,在java命令行中追加以下JVM参数:-Dserver.ssl.key-store=config/ssl/workbuddy.p12 -Dserver.ssl.key-store-password=changeit -Dserver.ssl.key-store-type=PKCS12 -Dserver.ssl.key-alias=tomcat。
3、确保-Dserver.port=8443参数已设置,避免与HTTP端口冲突。
4、执行./start.sh启动服务,验证https://your-domain:8443能否正常加载登录页。
三、使用Let’s Encrypt自动签发并部署证书
借助Certbot工具为WorkBuddy绑定的域名自动获取免费SSL证书,并配合Nginx实现自动续期,适合面向公网的生产环境。
1、安装certbot及nginx插件:apt install certbot python3-certbot-nginx(Ubuntu/Debian)。
2、确保WorkBuddy的Nginx配置中已正确设置server_name,并能响应HTTP 80端口的/.well-known/acme-challenge路径。
3、运行certbot --nginx -d your-workbuddy-domain.com,按提示选择重定向HTTP到HTTPS选项。
4、Certbot将自动更新Nginx配置,插入ssl_certificate和ssl_certificate_key指令,并重载服务。
5、验证证书有效期:openssl x509 -in /etc/letsencrypt/live/your-workbuddy-domain.com/fullchain.pem -text -noout | grep "Not After"
四、通过Docker容器挂载SSL证书并配置Spring Boot参数
当WorkBuddy以Docker方式运行时,可将宿主机证书文件挂载进容器,并通过环境变量注入HTTPS配置参数。
1、创建目录mkdir -p /opt/workbuddy/ssl,并将cert.pem与key.pem放入该目录。
2、编写docker run命令,使用-v参数挂载证书目录:-v /opt/workbuddy/ssl:/app/config/ssl。
3、通过-e参数传入Spring Boot SSL属性:-e SERVER_SSL_KEY-STORE=/app/config/ssl/keystore.p12 -e SERVER_SSL_KEY-STORE-PASSWORD=secret123 -e SERVER_SSL_KEY-STORE-TYPE=PKCS12。
4、确保镜像启动类路径下application.yml未覆盖server.ssl相关配置,或将其设为profile激活项。
5、执行docker run启动容器后,检查容器日志是否输出“Tomcat started on port(s): 8443 (https)”。
本篇关于《WorkBuddySSL配置与HTTPS开启教程》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于科技周边的相关知识,请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
187 收藏
-
454 收藏
-
293 收藏
-
248 收藏
-
451 收藏
-
310 收藏
-
130 收藏
-
201 收藏
-
243 收藏
-
334 收藏
-
449 收藏
-
287 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习