ARTIFACTORY:如何在JFrog平台中启用TLS
左边图片:
当在负载平衡器上终止SSL通信时,客户机对JFrog平台部署(JPD)的请求将通过不安全的HTTP进一步发送到路由器或/和工厂。
此外,在此场景中,HA设置中的Artifactory节点将通过HTTP以及其他JFrog产品(例如Xray)进行通信。hth华体会最新官方网站
正确的图片:
在这个分步指南中,我们的主要目标是展示如何在JFrog平台中启用TLS,以便确保Xray和Artifactory等jpd之间以及负载平衡器和jpd之间的通信安全。
使用Access作为证书颁发机构
为了在JFrog平台中启用TLS,我们将遵循以下步骤:使用Access作为证书颁发机构.在此设置中,我们将使用Access作为证书颁发机构来生成自签名证书。为了简单起见,我们的设置将由两个Artifactory节点和一个Xray节点定义。
以下配置文件将被更新。
access.config.yaml
system.yaml
Artifactory-nginx.conf
示例设置:
- 2人工平台部署
- 1 x射线平台部署
- 一个负载均衡器(本例中是Nginx)
- 基于Nginx的TLS终止。
在Access中启用TLS
从集群中选择一个Artifactory节点。
B. $ mv access.config.latest.yml access.config.import.yml
c.在access.config.import.yml中添加以下代码段。
安全:
tls:真
e. ' tls: true '设置在所有Artifactory节点中传播。
在继续之前,检查它是否传播到其他节点。为了确保一切都按预期设置,请在每个Artifactory节点中验证access.config.yml是否已使用' tls:true '更新。对于Artifactory节点,根CA通过数据库自动分发,不需要手动复制Access根CA。
例如,在x射线中遵循以下步骤。
- 本根。从您的HA人工节点之一
- 根。$JFROG_HOME/artifactory/var/etc/access/keys
- 粘贴根。crt到x射线受信任文件夹:
- 可信文件夹位于:$JFROG_HOME/xray/var/etc/security/keys/trusted
- 重新启动x光
在Artifactory启用TLS
artifactory:
tomcat:
httpsConnector:
启用:真
注意:
缺省情况下,端口8443将用于TLS连接。如果您想更改它,请相应地更新artifactory.tomcat. httpconnector .port: 8443。
更新Artifactory. Tomcat . httpconnector .enabled并重启Artifactory后,下面的配置会自动添加到Tomcat server.xml中。
Server.xml位于$JFROG_HOME/artifactory/app/artifactory/tomcat/conf中
waitForSSLCertificateKeyFile = " / opt / jfrog / artifactory / var /数据/路由器/键/服务器。关键" / >
Artifactory-Nginx配置
最后一个需要更新的配置文件是artifactory-nginx.conf。
从“反向代理设置”界面生成Nginx配置后,需要更新以下内容:
- 上游artifactory-direct
- 修改端口:8081→8443
上游人工直接{
服务器FIRST_NODE_IP美元:8443;
服务器SECOND_NODE_IP美元:8443;
}
- 位置
- 修改proxy_pass: http://artifactory→https://artifactory。
- 修改的位置。Proxy_pass: http://artifactory-direct/→https://artifactory-direct/。
位置/ {
proxy_read_timeout 2400年代;
proxy_pass_header服务器;
proxy_cookie_path ~ * ^ /。* /;
proxy_buffer_size 128 k;
Proxy_buffers 40 128k;
proxy_busy_buffers_size 128 k;
proxy_pass https://artifactory;
Proxy_next_upstream错误超时non_幂等;
proxy_next_upstream_tries 1;
$http_x_forwarded_proto://$host:$server_port;
proxy_set_header X-Forwarded-Port $server_port;
$http_x_forwarded_proto;
proxy_set_header $http_host;
$proxy_add_x_forwarded_for;
add_header X-Content-Type-Options "nosniff" always;
add_header Strict-Transport-Security always;
位置~ ^/artifactory/ {
proxy_pass https://artifactory-direct;
}
}
在这些更改之后,请确保重新加载Nginx配置。
结论:
在本文中,我们在JFrog平台中配置了TLS。
这意味着,到JFrog平台的所有通信都需要使用TLS,包括平台内的服务到服务通信。
这是通过配置三个配置文件完成的:access.config。yml、系统。Yaml和artifactory-nginx.conf。
我们修改了access.config.yml,启用了tls:以在JFrog平台中强制安全通信。之后我们更新了Artifactory系统。在Tomcat级别打开HTTPS连接器。最后,我们更新了来自Nginx的请求,通过修改proxy_pass从HTTP→HTTPS来通过HTTPS到Artifactory。
