接入镜像仓库
对容器镜像进行安全扫描之前,您需要将镜像仓库接入到云安全中心。本文介绍如何将镜像仓库接入云安全中心。
背景信息
云安全中心支持接入的容器镜像仓包括:阿里云容器镜像服务ACR和第三方镜像服务(harbor、quay)。
前提条件
已开通镜像安全扫描功能。具体操作,请参见开通服务。
接入阿里云容器服务镜像仓库
阿里云容器镜像服务ACR包括企业版和个人版。目前云安全中心支持同步ACR企业版和个人版的镜像数据,但仅支持对企业版镜像进行镜像安全扫描。您只需为企业版实例添加专有网络,即可将企业版镜像仓库接入到云安全中心。相关操作,请参见配置专有网络的访问控制。
接入第三方镜像仓库(私有镜像仓库)
如果您的第三方镜像服务是通过线下IDC+云上VPC的混合云方式来部署的,您需要先配置流量的转发规则,再完成接入镜像仓库。具体操作,请参见混合云场景代理配置说明。
如果您的容器镜像仓库设置了访问控制策略,请确保已将镜像仓库对应的地域的地址池IP加入到访问控制白名单中。
地域 | 公网IP | 私网IP |
华东1(杭州) | 47.96.166.214 | 100.104.12.64/26 |
华东2(上海) | 139.224.15.48、101.132.180.26、47.100.18.171、47.100.0.176、139.224.8.64、101.132.70.106、101.132.156.228、106.15.36.12、139.196.168.125、47.101.178.223、47.101.220.176 | 100.104.43.0/26 |
华北1(青岛) | 47.104.111.68 | 100.104.87.192/26 |
华北2(北京) | 47.95.202.245 | 100.104.114.192/26 |
华北3(张家口) | 39.99.229.195 | 100.104.187.64/26 |
华北5(呼和浩特) | 39.104.147.68 | 100.104.36.0/26 |
华南1(深圳) | 120.78.64.225 | 100.104.250.64/26 |
中国香港 | 8.218.59.176 | 100.104.130.128/26 |
日本(东京) | 47.74.24.20 | 100.104.69.0/26 |
新加坡 | 8.219.240.137 | 100.104.67.64/26 |
美国(硅谷) | 47.254.39.224 | 100.104.145.64/26 |
美国(弗吉尼亚) | 47.252.4.238 | 100.104.36.0/26 |
德国(法兰克福) | 47.254.158.71 | 172.16.0.0/20 |
英国(伦敦) | 8.208.14.12 | 172.16.0.0/20 |
印度尼西亚(雅加达) | 149.129.238.99 | 100.104.193.128/26 |
- 登录云安全中心控制台。在控制台左上角,选择需防护资产所在的区域:中国或全球(不含中国)。
- 在左侧导航栏,选择 。
- 在容器资产页面的镜像页签下,定位到三方镜像仓接入区域单击接入。
- 在接入镜像仓面板,配置接入私有仓库的参数,然后单击确定。
配置项 说明 私有仓库类型 选择私有仓库类型。目前支持选择harbor、quay类型的仓库。 说明 请按照您容器镜像存储的镜像仓,选择对应的私有仓库类型。版本 选择第三方镜像仓库的版本。 - V1:镜像仓库版本为1.X.X时,选择该版本。
- V2:镜像仓库版本为2.X.X及以上时,选择该版本。
通信类型 选择云安全中心与第三方镜像仓库的通信协议。 网络类型 选择第三方镜像仓库的网络类型。 RegionId 选择第三方镜像仓库所在区域。 IP 输入第三方镜像仓库的IP地址。 说明 第三方镜像仓库部署在混合云环境中时,必须填写IP。域名 输入第三方镜像仓库的域名。 限速 选择每小时可接入的镜像个数。默认为10。 重要 如果每小时内接入的镜像过多,可能会影响您的正常业务的运行,建议您谨慎选择无限制。用户名 输入访问第三方镜像仓库时使用的具有管理员权限的用户名。 密码 输入访问第三方镜像仓库的密码。 Quay名称空间信息 仅私有仓库类型选择quay时需要配置该参数。 在镜像仓库组织文本框输入镜像仓库组织的名称,在Auth_token文本框输入镜像仓库组织对应的Auth_token。
您可以单击添加输入多条镜像仓库组织信息。
接入第三方镜像仓库后,您可以在镜像安全扫描页面的扫描设置面板中查看已接入的镜像仓库信息。
混合云场景代理配置说明
如果您的第三方镜像服务是通过线下IDC+云上VPC的混合云方式来部署的,您需要先配置流量的转发规则,再完成接入镜像仓库。操作流程如下:
- 指定一台ECS服务器,将其访问流量转发到第三方镜像服务所在的IDC服务器上。
示例:将执行转发任务的ECS服务器中A端口的流量,转发至第三方镜像服务所在的IDC服务器192.168.XX.XX的B端口。
- CentOS 7命令:
- 使用firewallcmd:
firewall-cmd --permanent --add-forward-port=port=<A端口>:proto=tcp:toaddr=<192.168.XX.XX>:toport=<B端口>
- 使用iptables:
- 开启端口转发。
echo "1" > /proc/sys/net/ipv4/ip_forward
- 设置端口转发。
iptables -t nat -A PREROUTING -p tcp --dport <A端口> -j DNAT --to-destination <192.168.XX.XX>:<B端口>
- 开启端口转发。
- 使用firewallcmd:
- Windows命令:
netsh interface portproxy add v4tov4 listenport=<端口A> listenaddress=* connectaddress=<192.168.XX.XX> connectport=<端口B> protocol=tcp
- CentOS 7命令:
- 将第三方镜像仓库接入到云安全中心。
接入第三方镜像仓库时,配置项IP必须填写您已配置了转发规则的ECS的IP地址。具体操作,请参见接入第三方镜像仓库(私有镜像仓库)。
镜像接入错误码
code | message | 解决方案 |
FailedToVerifyUsernameOrPwd | 用户名或密码验证失败 | 检查用户名、密码是否正确。 |
RegistryVersionError | 镜像仓库版本错误 | 检查镜像仓的版本是否选择正确。 |
UserDoesNotHaveAdminRole | 用户没有admin权限 | 前往harbor私服给用户添加管理员权限。 |
NetworkConnectError | 网络超时,请检查网络 | 检查网络是否联通、80或443端口是否开放。 |
后续步骤
将镜像仓库接入到云安全中心后,您可以在资产中心查看受到云安全中心防护的镜像信息。具体操作,请参见查看容器安全状态。
您还需要执行镜像安全扫描操作,才能通过云安全中心检测您的镜像是否存在风险。具体操作,请参见执行镜像安全扫描。