Skip to content

部署域名代理工具

本工具内置了nginx模块,部署此工具后即可通过域名访问服务

注意:本工具部署后仅支持https的方式访问

提示

域名代理-HTTPS自动证书-HTTPS使用的是同一个插件,场景不同故作拆分

特别说明

进行本工具部署前,请确保您已经具备了以下条件(缺一不可)

  1. 服务器的443端口可以访问
  2. 服务器安全组已允许443端口访问
  3. 443端口未被其他服务占用
  4. 域名已经进行了公安部备案,并且已经获取到了备案编号
  5. 本工具必须和私有化会众云平台部署在同一台服务器

华为云免费证书申请

免费证书安全性相对较低,建议当作初期测试和验证使用
⇲华为云证书申请流程

1.创建配置文件

参数说明

特别说明

IS_HTTPS_AGENT 必须设置,并且固定为 true
IS_HTTPS_AGENT 必须设置,并且固定为 true
IS_HTTPS_AGENT 必须设置,并且固定为 true

bash
# 参数说明
IS_HTTPS_AGENT            # 【必填】 固定为 true(表示使用https代理,而不是https证书自动签发)
VERIFY_FILE_NAME          # 【可选】 校验文件名(接入微信、企微、钉钉等开放平台时,需要进行域名校验)
VERIFY_FILE_TEXT          # 【可选】 校验文件值(校验文件的内容值,一般是一串字符)

1.1.shell一键创建

使用以下Shell命令,按需替换 参数后,将其复制粘贴至命令行界面,敲击回车键即可

bash
mkdir -p /etc/hzy && cat > /etc/hzy/https.json <<- EOF
{
  "IS_HTTPS_AGENT": true,
  "VERIFY_FILE_NAME": "test.txt",
  "VERIFY_FILE_TEXT": "xxxxxxxx"
}
EOF

如果验证执行结果?

输入 cat /etc/hzy/https.json 后敲击回车键,如果有如下输出,则为成功

json
{
  "IS_HTTPS_AGENT": true,
  "VERIFY_FILE_NAME": "test.txt",
  "VERIFY_FILE_TEXT": "xxxxxxxx"
}

1.1.手动操作创建

创建文件https.json

bash
# 必须创建文件!必须创建文件!必须创建文件!
# 创建文件
mkdir /etc/hzy
cd /etc/hzy
vim https.json

文件内容示例

json
{
  "IS_HTTPS_AGENT": true,
  "VERIFY_FILE_NAME": "test.txt",
  "VERIFY_FILE_TEXT": "xxxxxxxx"
}

2.设置校验文件

当接入企微、钉钉、飞书等开放平台时,开放平台一般都会要求进行域名归属权校验,校验的方式几乎都是:将指定的文件放到域名根目录下,然后可以通过域名获取到文件内容

如果存在这样的需求,可以将校验文件配置到https.json

示例

假设:有一个校验文件名字是itg2fyLtiupAWwOt.txt,校验文件内容是pAWwOtitg2fyLtiup

则配置如下:

https配置项配置值示例
VERIFY_FILE_NAME"itg2fyLtiupAWwOt.txt"
VERIFY_FILE_TEXT"pAWwOtitg2fyLtiup"

注意

如果有多个校验文件,单次只能配置一个,配置以后重启docker服务即可生效

3.上传证书

将已申请的https证书上传到主机目录/etc/hzy/下面

特别说明

需要将证书文件进行重命名,假设获取到证书文件如下:

  • test.domain.com.key
  • test.domain.com.pem

那么需要将以上文件重命名为:

  • key
  • pem

然后将文件keypem上传到主机目录/etc/hzy/下面即可

注意

部分云服务商下载的证书可能不是 pem 文件,有时候是 crt ,例如华为云申请的SSL证书。
简要说明: 通常情况下可以将 crt 直接作为 pem 使用,若使用异常,在考虑证书格式的转换。

4.运行HTTP服务

启动服务

注意

  • 必须使用 --network host 模式启动容器,否则nginx代理无法生效!

  • 插件每十秒会自动检查证书文件是否变更,如果变更则会自动重启插件服务,以生效新的证书

bash
docker run --privileged -e TZ=Asia/Shanghai -itd --restart always --network host -v /etc/hzy:/root/conf registry.cn-hangzhou.aliyuncs.com/hzy0code/hzy-utils:https.x86.1.2.0

重启服务

注意

修改了配置文件后,需要使用以下命令重启服务

[CONTAINER ID]表示容器ID,使用docker ps命令可以查看容器ID

示例:

bash
docker restart [CONTAINER ID]

访问服务

证书签发并且部署成功后,则可以使用域名的方式访问会众云平台,例如: