当前位置: 首页 > news >正文

ret2shell靶场运维学习:关闭registry镜像搜索模式

Ret2Shell 关闭 Registry 搜索模式完整流程

说明

Ret2Shell 的 registry 有两个概念:

registry 服务本身
registry 搜索模式

关闭 registry 搜索模式不会关闭 registry 服务。

关闭后:

  • 平台前端不会再自动列出 registry 中的镜像和 tag
  • 添加题目环境时需要手动填写完整镜像地址
  • 已经推送到 registry 的镜像仍然可以被 Kubernetes 拉取

例如仍然可以手动填写:

localhost:30310/phpserialize-labs:v1

目标效果

平台运行配置中应为:

[cluster.registry]
enabled = false
server = "ret2shell-registry:5000"
external = "localhost:30310"
insecure = true

这里的 enabled = false 只表示关闭平台 registry 搜索/选择模式。

1. 修改 Helm Chart 默认值

Chart 路径:

/root/ret2shell-src/deploy/helm/ret2shell

编辑:

/root/ret2shell-src/deploy/helm/ret2shell/values.yaml

registry: 下加入:

registry:mode: internalreplicaCount: 1search:enabled: false

2. 修改 Helm 模板

编辑:

/root/ret2shell-src/deploy/helm/ret2shell/templates/_config.tpl

找到:

[cluster.registry]
enabled = true

改为:

[cluster.registry]
enabled = {{ .Values.registry.search.enabled }}

这样以后 Helm 渲染出来的配置会跟随 registry.search.enabled

3. 修改 values schema

编辑:

/root/ret2shell-src/deploy/helm/ret2shell/values.schema.json

registry.properties 中加入:

"search": {"type": "object","properties": {"enabled": {"type": "boolean"}}
}

4. 可选:更新 Chart README

编辑:

/root/ret2shell-src/deploy/helm/ret2shell/README.md

在 registry 相关配置处加入:

registry.search.enabled=true|false controls the platform registry search mode

5. 如果当前运行环境不是重新 Helm 部署

当前平台容器挂载的运行配置来自主机路径:

/srv/ret2shell/backend/config/config.toml

需要直接修改这个运行配置。

编辑:

/srv/ret2shell/backend/config/config.toml

找到:

[cluster.registry]
enabled = true

改为:

[cluster.registry]
enabled = false

完整示例:

[cluster.registry]
enabled = false
server = "ret2shell-registry:5000"
external = "localhost:30310"
insecure = true

6. 重启平台

重启 Ret2Shell 平台 StatefulSet:

kubectl -n ret2shell-platform rollout restart statefulset/ret2shell-platform

等待滚动重启完成:

kubectl -n ret2shell-platform rollout status statefulset/ret2shell-platform --timeout=180s

7. 验证 Pod 状态

查看平台 Pod:

kubectl -n ret2shell-platform get pods -l app.kubernetes.io/component=platform -o wide

期望看到:

ret2shell-platform-0   1/1   Running

8. 验证容器内配置

查看容器内实际生效配置:

kubectl -n ret2shell-platform exec ret2shell-platform-0 -- sh -c 'sed -n "26,34p" /etc/ret2shell/config.toml'

期望看到:

[cluster.registry]
enabled = false
server = "ret2shell-registry:5000"
external = "localhost:30310"
insecure = true

9. 验证平台健康

检查 API:

kubectl -n ret2shell-platform exec ret2shell-platform-0 -- wget -qO- http://127.0.0.1:8080/api/ping

期望返回:

pong

10. 验证前端效果

进入平台题目环境配置页面。

关闭 registry 搜索模式后:

  • 不再显示 registry 镜像搜索/选择列表
  • 镜像字段需要手动输入完整镜像地址

例如:

localhost:30310/phpserialize-labs:v1

容器名称仍然单独填写:

phpserialize-labs

11. 回滚方法

如果需要重新开启 registry 搜索模式:

运行配置改回:

[cluster.registry]
enabled = true

或者 Helm values 改为:

registry:search:enabled: true

然后重启平台:

kubectl -n ret2shell-platform rollout restart statefulset/ret2shell-platform
kubectl -n ret2shell-platform rollout status statefulset/ret2shell-platform --timeout=180s

12. 常见问题

关闭搜索模式后还能用内置 registry 吗

可以。

关闭的是平台前端的搜索/选择模式,不是 registry 服务。

仍然可以使用:

docker push localhost:30310/phpserialize-labs:v1

然后在平台手动填写:

localhost:30310/phpserialize-labs:v1

为什么修改 Helm 文件后没有立即生效

因为当前运行中的平台使用的是已经挂载到 Pod 的配置:

/srv/ret2shell/backend/config/config.toml

只改 Helm Chart 源文件不会自动修改正在运行的 Pod 配置。

需要:

  • 直接修改运行配置并重启平台
  • 或重新执行 Helm upgrade 让配置重新渲染并下发

如何确认是否真的关闭

以容器内配置为准:

kubectl -n ret2shell-platform exec ret2shell-platform-0 -- sh -c 'grep -A4 "\\[cluster.registry\\]" /etc/ret2shell/config.toml'

看到:

enabled = false

即可。

http://www.jsqmd.com/news/845962/

相关文章:

  • 群晖NAS开机卡在‘找不到页面’?手把手教你修复lib文件缺失(附文件下载与权限设置)
  • 2026西安黄金回收靠谱商家推荐榜单(综合实力・权威测评) - 西安知道
  • Claude规格说明书生成器:提升大模型任务执行效率的工程化方法
  • 3分钟快速上手:Input Leap跨平台键鼠共享终极指南
  • 2026苏州黄金回收测评:5家实体老店资质、报价、服务全对比 - 奢侈品回收测评
  • 2026年宁夏银川B2B企业网络营销与AI-GEO推广服务商深度横评指南 - 精选优质企业推荐官
  • 从Stable Diffusion到DALL-E 3:深入聊聊Diffusion Model里‘前向过程’的设计哲学与工程权衡
  • 2026年北京短视频代运营与AI搜索优化企业选型指南:从冷启动到商机转化的完整闭环 - 企业名录优选推荐
  • 如何永久保存微信聊天记录:WeChatMsg开源工具的完整解决方案
  • 基于SpringBoot的共享雨伞_充电宝点位管理系统毕设源码
  • 用Python和罗技驱动DLL实现《穿越火线》红名自动检测与开枪(保姆级避坑指南)
  • MOBILE-灰签名回廊
  • 广州代理清关公司实力排行:合规与效率双重维度解析 - 互联网科技品牌测评
  • 博尚机械木材粉碎机智能防卡技术解析|新手也能24小时稳干,故障率≤0.5% - 会飞的懒猪
  • 深圳市老蚂蚁搬家服务:罗湖专业的居民搬家公司怎么联系 - LYL仔仔
  • 基于低代码平台与4G DTU的智能垃圾桶物联网开发实战
  • STM32新手避坑指南:用L298N驱动直流电机,PWM调速的完整配置流程(附源码)
  • AI+STEAM教育方案:基于边缘计算的智能硬件与算法部署实践
  • 【IEEE 出版】第六届控制与智能机器人国际学术会议(ICCIR 2026) - 爱搞科研的小刘
  • 2026年宁夏银川B2B企业获客与网络营销完全指南:从短视频到AI-GEO优化的全链路破局方案 - 精选优质企业推荐官
  • 联发科天玑700/720/900核心板选型指南:5G物联网与智能硬件性能功耗全解析
  • 足不出户变卖手表,郑州本地正规门店上门高价回收全攻略 - 奢侈品回收测评
  • 2026大学生学数据分析对求职的价值
  • LLM工程实践指南:从RAG到微调,构建高效应用知识体系
  • STM32F303CBT6资源够用吗?实测EtherCAT从站(IO+AD+DA)的内存与Flash占用分析
  • 终极免费解决方案:Pearcleaner如何彻底清理macOS应用残留文件
  • 聚焦汽车零部件质控,西恩士全自动清洁度检测设备筑牢汽车工业安全防线 - 精密仪器科技圈
  • ret2shell靶场运维学习:把docker上传到平台
  • 苏州5家黄金奢侈品回收机构实力评级,从报价到回款全程实测 - 奢侈品回收测评
  • 智能对象替换革命:Illustrator自动化工作流的核心引擎