群晖NAS如何在内网部署HTTPS服务让浏览器信任证书
前言
最近在折腾内部部署Web服务。通过Vue实现一个H5的内部的管理服务。但在实际部署过程中由于种种原因,必须部署成Https服务。但在部署成Https服务后,由于没有HTTPS证书,每次进入页面都会被浏览器拦截。使用起来非常不便。于是开始各种Google折腾,终于实现了在导入证书的基础上部署HTTPS服务。接下来,和大家一起分享下整个部署过程。
前置条件
由于HTTPS证书必须和域名关联,所以我们必须有一个公网域名。具体大家就根据在各大域名运营商购买即可。
PS:公网域名仅仅是用于申请HTTPS证书。并不是说咱们的服务要部署到公网。
大致流程
- 购买公网域名。
- 在域名服务提供商申请免费的HTTPS证书。自己玩玩就没有必要买商业证书了。
- 在群晖上部署服务,通过WebStation部署。通过域名对外提供服务。
- 通过群晖的DNS将域名解析到群晖服务上。这样内网访问域名的时候才能够被解析
- 将群晖的DNS配置到路由器,作为其默认路由。实现内网域名解析。
- 将HTTPS域名证书导入到群晖证书管理中。
详细流程
域名准备
首先需要有个公网域名。如果没有,则去域名服务上购买吧。随便买一个普通的也很便宜。
因为HTTPS证书需要和域名绑定,且只能和公网域名绑定。所以公网域名是必须的。
这里咱们假设公网域名为:abc.com。后续都用这个域名讲解,方便大家理解。
HTTPS证书申请
拥有了公网域名之后。则需要到域名服务商申请相应的HTTPS证书。前面也说过了,证书就使用免费的得了。当然如果有商用证书肯定更好。因为免费证书都只有1年的有效期。过期之后需要重新申请证书,并重新导入群晖。
不同的域名服务商申请免费证书的方式不太相同,但大概都是在证书购买的位置去申请。具体大家可以根据自己不同的服务商(百度、阿里、腾讯等),自己搜索下如何免费或证书即可。
PS:在申请证书的时候,咱们需要基于咱们购买域名的子域名去申请,如果直接用二级域名申请证书,那后续域名就不能用作其他用处。所以这里我们使用子域名qunhui.abc.com去申请。
证书申请成功之后,将证书下载下来,待后续使用。
服务部署
在群晖上部署服务时,咱们有两种方式。如果是纯前端资源咱通过WebStation使用apache部署即可。如果是后端服务则需要通过tomcat等容器部署。
由于本文重点讲解HTTPS访问这一块,所以不会具体讲解如何部署。具体部署方式当家搜索下即可。
使用WebStation部署前端资源
通过WebStation部署的时候,咱们直接选择通过name对外提供服务。此处的name咱们填写二级域名qunhui.abc.com即可。
注意协议一定要开启HTTPS(至少要包含有HTTPS)。

使用Tomcat等容器部署服务
通过tomcat等容器部署都只能对外基于ip和端口提供服务。但我们需要通过域名对外提供服务。所以部署完成之后,我们需要在群晖的反向代理中进行配置。将域名映射到容器对应的端口上。具体操作如下:
图中来源的域名填写咱们的qunhui.abc.com(图中写错了,难得重新截图了)。协议一定要选择HTTPS。
目的地中的协议根据咱们后端tomcat的协议选择即可。通常都是HTTP。主机名则对应tomcat的主机名IP和端口。

在DNS配置解析
部署和域名访问都配置完成后,我们需要在群晖的DNS上配置上对应域名解析规则。即实现通过该DNS解析,当我们访问域名的时候,能解析到咱们群晖的IP地址上。具体配置如下:
PS:在配置群晖部署的DNS时,记得配置默认的DNS地址,即群晖DNS解析不了的域名就需要走该默认DNS进行解析。这个地址通常是运营商默认提供的地址(查看路由器上的配置即可),或者使用公用的DNS:114.114.114.114。
默认配置如下图:其中转发器中就是咱们路由上默认的DNS。

下图是配置qunhui.abc.com域名解析的方式。在DNS的区域中新增一个源记录做如下配置即可。其中IP就是NAS的IP。

修改路由器的DNS
咱们配置完成DNS解析后,接下来就需要解决在访问的时候网络如何找到我们群晖上部署的DNS的问题。我们只需要将路由器中的DNS修改为群晖的DNS即可。通常路由器配置界面如下。直接修改为群晖的IP地址即可。
如下图在路由的LAN设置下的DHCP服务中修改。将原来的DNS地址(已经配置到群晖DNS Server的转发中了)修改为咱们的群晖地址即可(图中的首选DNS服务器)。

HTTPS证书导入
所有都完成后,我们访问域名应该就能正常访问咱们部署的服务。但是还是会提示HTTPS证书不安全。因为咱们上面的证书还没有导入到群晖呢。接下来我们需要将商家下载的证书导入到群晖的证书管理中。
导入完成后,需要选择哪些服务需要使用咱们的新证书。因为默认还是使用群晖的自签证书。
完成之后,咱们再次访问服务将不会再提示证书问题。
如下图,选择点击新增然后,弹出框选择新增证书,然后选择导入证书会进入如下界面。
将自己上面下载的证书解压出来导入即可。其中私钥是以key结尾的文件,证书是为cert结尾的文件。中间证书可以不填。

证书导入正常之后,咱们在点击选择刚刚导入的证书,然后选择设置按钮会弹出如下界面。
在界面中的服务一列选择咱们之前的配置的业务域名(即qunhui.abc.com)。右边证书列选择咱们刚刚导入的证书即可。

到此咱们就完成了HTTPS在内网的部署。此时当你在内网访问https://qunhui.abc.com下的服务时,浏览器就会显示一把锁,标识证书有效。从此再也不会弹出证书不合法的页面了。

后续
最后咱们还需要注意如下几点:
- 免费证书只有一年有效期,一年到期后需要重新申请申请并导入。
- 咱们的域名下所有的子域名都可以通过这种方式在内网提供HTTPS服务。
- 在群晖DNS上一定要记得配置啊。。。。。
惯例
如果你喜欢本文或觉得本文对你有所帮助,欢迎一键三连支持,非常感谢。
如果你对本文有任何疑问或者高见,欢迎添加公众号lifeofcoder共同交流探讨(添加公众号可以获得楼主最新博文推送以及”Java高级架构“上10G视频和图文资料哦)。
相关文章:
群晖NAS如何在内网部署HTTPS服务让浏览器信任证书
前言 最近在折腾内部部署Web服务。通过Vue实现一个H5的内部的管理服务。但在实际部署过程中由于种种原因,必须部署成Https服务。但在部署成Https服务后,由于没有HTTPS证书,每次进入页面都会被浏览器拦截。使用起来非常不便。于是开始各种Goo…...
crAPI靶场学习记录
靶场搭建 [靶场下载地址](我fork了一份) docker安装,笔者是用的wsldocker. [lab0:**初始账户 **] 注册一个账户,邮箱为[APIqq.com],密码为Admin123 登陆后访问对应IP的8025端口,接收邮件获取车辆信息。 [lab1:**访问其它用户车…...
知识图谱实战应用28-基于py2neo的ICD-11疾病分类的知识图谱的查询与问答实战应用
大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用28-基于py2neo的ICD-11疾病分类的知识图谱的查询与问答实战应用。使用基于py2neo的ICD-11疾病分类知识图谱,我们能够像探索一座生物医学宇宙般,穿梭在各种疾病之间。这个神奇的图谱可以帮助我们揭示各种疾病之间复杂而…...
20.Xaml GroupBox控件 ---->带标题的内容控件
1.运行效果 2.运行源码 a.Xaml源码 <Window x:Class="testView.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mic…...
基于CycleGAN的山水风格画迁移
基于CycleGAN的山水风格画迁移 1、简介 1.1 研究背景及意义 绘画是人类重要的一种艺术形式,其中中国的山水画源远流长,具有丰富的美学内涵,沉淀着中国人的情思。游山玩水的大陆文化意识,以山为德、水为性的内在修为意识&#x…...
@Cacheable 注解
1. 功能说明 Cacheable 注解在方法上,表示该方法的返回结果是可以缓存的。也就是说,该方法的返回结果会放在缓存中,以便于以后使用相同的参数调用该方法时,会返回缓存中的值,而不会实际执行该方法。 注意,这…...
vue3+ts项目打包后的本地访问
注意:打包之后不可直接点击html访问,需要给项目安装本地服务! 1、安装servenpm i -g serve 2、打包项目npm run build 生成dist文件夹 3、本地访问serve dist 运行service dist之后的控制台 可复制下方的地址运行打包后的项目,运行…...
探索程序员需要掌握的算法?
文章目录 一:引言二:常见算法介绍三:重点算法总结 🎉欢迎来到数据结构学习专栏~探索程序员需要掌握的算法? ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博客🎈该系列文章…...
性能测试 —— Jmeter定时器
固定定时器 如果你需要让每个线程在请求之前按相同的指定时间停顿,那么可以使用这个定时器;需要注意的是,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间 1、使用固定定时器位置在http请求中…...
mp4视频太大怎么压缩?几种常见压缩方法
mp4视频太大怎么压缩?科技的飞速发展使得视频成为人们生活中不可或缺的一部分。然而,随着视频质量的不断提高,视频文件的大小也与日俱增,给我们的存储和传输带来了巨大的挑战和困扰。特别是MP4格式的视频,由于其出色的…...
论文复制ChatGPT按钮被发表,撤回后再曝多个类似案例;Midjourney 生成大师级的人像
🦉 AI新闻 🚀 论文复制ChatGPT按钮被发表,撤回后再曝多个类似案例 摘要:一篇物理论文复制了ChatGPT按钮内容,经过两个月同行评审并在杂志上发表。这一现象被知名打假人发现后,发表商决定撤回该论文。此外…...
Python自动化测试 史上最全的进阶教程
Python自动化测试就是把以前人为测试转化为机器测试的一种过程。自动化测试是一种比手工测试更快获得故障反馈的方法。 随着时代的变革,也许在未来测试这个职位的需求会越来越少甚至消失,但是每一个组织,每一个客户对软件质量的要求是永远不…...
centos pip失效
在 CentOS 上安装和配置 pip3 可能需要以下步骤: 确保 Python 3 已正确安装:请确保您已经正确地安装了 Python 3。在 CentOS 上,Python 3 可能默认安装在 /usr/bin/python3 路径下。您可以通过运行以下命令来验证 Python 3 是否正确安装&…...
Java——》ThreadLocal
推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…...
如何做好利益相关方的期望管理?
利益相关方对项目而言非常重要,有效管理利益相关方的期望可以帮助项目团队更好地满足利益相关方的需求,助于建立良好的合作伙伴关系,提高项目的可持续性和成功率。 如果项目团队无法满足利益相关方的需求,可能会引发冲突、争议或其…...
【K8S系列】深入解析k8s网络插件—Canal
序言 做一件事并不难,难的是在于坚持。坚持一下也不难,难的是坚持到底。 文章标记颜色说明: 黄色:重要标题红色:用来标记结论绿色:用来标记论点蓝色:用来标记论点 在现代容器化应用程序的世界中…...
从单页面应用角度去解决不跳转页面,也能更改浏览器url地址
正常来说不刷新页面,也能更改浏览器url地址的方法有很多,我们在网上搜的话可以看到有pushState、replaceState、popstate等方法,那还有没有其他方法呢? 答案是有的! 最近做一个vue商城项目的时候,用户点击支…...
Linux:keepalived + ipvsadm
介绍 Linux:keepalived 双热备份(基础备份web)_鲍海超-GNUBHCkalitarro的博客-CSDN博客https://blog.csdn.net/w14768855/article/details/132815057?spm1001.2014.3001.5501 环境 一台 centos7 keepalived ipvsadm (主…...
Linux基础命令(示例代码 + 解释)
查看目录下文件 ls [-a -l -h] [路径] -a(全部) -l(细节) -h(大小) ls ls / ls -a ls -l ls -h ls -alh ls -l -h -a ls -lah /切换目录 cd [路径] change di…...
巨人互动|Google企业户Google“自动采纳建议”应该如何使用
在数字化时代,Google已经成为了人们获取信息的主要渠道之一。而在使用Google搜索时,你可能会发现下拉框中自动提供的搜索建议。这些搜索建议是基于用户搜索行为和相关数据进行推测,旨在使用户更快速地找到所需信息。而Google还提供了一项名为…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
Docker拉取MySQL后数据库连接失败的解决方案
在使用Docker部署MySQL时,拉取并启动容器后,有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致,包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因,并提供解决方案。 一、确认MySQL容器的运行状态 …...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
