You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为单个JFrog Artifactory实例配置两个带独立SSL证书的DNS域名

单个JFrog Artifactory实例配置多域名独立证书的实现方案

方案1:前置反向代理实现(兼容性最高,最常用)

Artifactory内置的Tomcat服务原生仅支持单组证书配置,因此行业通用的解法是在Artifactory前端新增反向代理层,由反向代理处理SSL卸载、SNI多域名证书匹配,所有请求转发到同一后端Artifactory实例即可:

  • 提前准备两个域名对应的完整PEM证书链、KEY密钥文件,存放到反向代理服务器的专属证书目录,例如/etc/nginx/certs/下分别命名为domain1.crt、domain1.key、domain2.crt、domain2.key
  • 以Nginx反向代理为例,分别编写两个监听443端口的server配置块,每个块分别绑定对应域名、关联对应证书配置,所有location块的代理目标统一指向Artifactory的内部服务地址(默认内部HTTP端口为8082)
  • 每个server块中新增自定义请求头配置,指定对应域名的基础地址:proxy_set_header X-JFrog-Override-Base-Url https://你的对应域名;,该配置会让Artifactory返回的页面、仓库链接自动适配当前访问的域名,不会跳转至固定的单域名
  • 配置完成后重载反向代理服务,分别访问两个域名验证证书匹配度、页面加载、仓库推拉功能是否正常。

方案2:原生多域名配置(适用Artifactory 7.49及以上版本)

7.49版本之后Artifactory原生支持SNI多域名证书配置,无需额外部署反向代理:

  • 编辑Artifactory配置文件$JFROG_HOME/artifactory/var/etc/system.yaml,添加多组SNI主机配置,示例如下:
artifactory:
  tomcat:
    connector:
      https:
        enabled: true
        sni:
          enabled: true
          hosts:
            - serverName: "domain1.com"
              certificateKeyFile: "/绝对路径/domain1.key"
              certificateFile: "/绝对路径/domain1.pem"
            - serverName: "domain2.com"
              certificateKeyFile: "/绝对路径/domain2.key"
              certificateFile: "/绝对路径/domain2.pem"
  • 保存配置后重启Artifactory服务即可生效。

注意事项

  • 采用反向代理方案时,需要关闭Artifactory HTTPS端口的公网暴露权限,所有外部访问统一走反向代理的443端口,避免安全隐患
  • 配置完成后需分别测试Maven、Docker、Helm等各类私有仓库的推拉功能,确保仓库地址域名与访问域名一致,无证书不匹配报错。

内容的提问来源于stack exchange,提问作者user245011

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 20:18:01