Artifactory OSS启用TLS遇阻及HTTP端口8082禁用求助
解决Artifactory OSS 7.98.10禁止外部HTTP访问8082端口的问题
方法1:修改Access服务监听地址为本地回环
Artifactory 7.x中,Access服务的配置文件位于$JFROG_HOME/artifactory/var/etc/access/access.config.json,将其中的listen配置项绑定地址改为127.0.0.1,让端口仅接受本地请求:
"listen": { "http": { "port": 8082, "host": "127.0.0.1" } }
修改后重启Artifactory服务:
systemctl restart artifactory
外部用户无法直接访问8082端口,Nginx作为本地代理仍能正常转发请求。
方法2:通过防火墙限制8082端口的外部访问
无需修改配置文件,直接用防火墙规则禁止外部IP访问8082,仅允许本地回环访问:
Linux(iptables)
# 允许本地访问8082 iptables -A INPUT -i lo -p tcp --dport 8082 -j ACCEPT # 拒绝外部访问8082 iptables -A INPUT -p tcp --dport 8082 -j DROP # 保存规则(不同发行版命令可能有差异) iptables-save > /etc/iptables/rules.v4
Linux(firewalld)
# 添加本地访问允许规则 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="127.0.0.1" port port="8082" protocol="tcp" accept' # 移除8082端口的公开访问规则(若存在) firewall-cmd --permanent --remove-port=8082/tcp # 重新加载防火墙规则 firewall-cmd --reload
方法3:补全官方Option1的TLS配置(启用Access服务HTTPS)
之前TLS配置未生效,可能是未同步配置Access服务的加密规则。按官方要求补全配置:
- 将SSL证书和密钥放置到
$JFROG_HOME/artifactory/var/etc/security/keys目录,确保artifactory用户拥有读取权限。 - 修改Access配置文件
$JFROG_HOME/artifactory/var/etc/access/access.config.json,添加HTTPS监听:
"listen": { "http": { "port": 8082, "host": "0.0.0.0" }, "https": { "port": 8443, "host": "0.0.0.0", "tls": { "certificate": "/opt/jfrog/artifactory/var/etc/security/keys/your-cert.crt", "privateKey": "/opt/jfrog/artifactory/var/etc/security/keys/your-key.key" } } }
- 修改Artifactory系统配置文件
$JFROG_HOME/artifactory/var/etc/artifactory/artifactory.system.properties,指定Access的HTTPS地址:
access.url=https://localhost:8443/access
- 重启Artifactory服务,之后可结合方法1/2禁用8082的外部HTTP访问,或直接删除
http监听配置彻底关闭HTTP端口。
内容的提问来源于stack exchange,提问作者kristyna
相关产品推荐
相关产品推荐

