
给 Dockur Windows 容器的 VNC 端口上锁改 1 个 PROTECT 变量 1 条重启命令【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows按默认 compose.yml 起容器浏览器打开 8006 的 Web VNC 查看器谁都能直接控制 Windows 桌面没人拦一下。改完之后这个端口会先要密码RDP 3389 也换成你自己的强口令。改动前确认这套容器跑在带 KVM 的 Linux 宿主上靠 Docker 拉起装 Windows 至少要 2G 内存、32G 空盘见 readme.md 的 Requirements。你只改访问方式不重装系统容器里那 32G 磁盘数据也不动。会碰到这几个文件compose.yml —— 部署配置PROTECT和PASSWORD都加在它的environment段里。docs/environment.md —— 环境变量全表PROTECT、PASSWORD、WEB_PORT的说明出处。readme.md —— 默认端口 8006 / 3389 与 RDP 账号 Docker/admin 的说明。默认 compose.yml 只发布了 8006Web VNC 查看器和 3389RDP两个端口原生 VNC 5900 并没有映射出来。其中 8006 默认PROTECTN也就是免密直连这正是你要堵的口子。改这件事只动宿主上的 compose.yml磁盘数据在./windows卷里不受影响。核心改动注入 PROTECT 开关给 Web 查看器加密码门只要把PROTECT打开。它默认是 N改成 Y 就堵住 8006 的免密访问打开后浏览器那个 noVNC 查看器在握手阶段就会拦下来要不到密码看不到桌面。environment: VERSION: 11 # before: 未设置默认 PROTECTN8006 免密直连 # after: PROTECT: Y # 为 Web/VNC 查看器开启密码保护收紧 Windows 账户口令PASSWORD同时管着 RDP3389和 Web 查看器的登录。默认值是 admin必须换成你自己的强口令别再用 Docker/admin 这套。USERNAME保持默认的 Docker 也行真正要换的是PASSWORD这一侧。environment: VERSION: 11 # before: 未设置默认账户 Docker / admin # after: PASSWORD: S0me-Str0ng!Pass # RDP 与 Web 界面共用此口令生效与验证改完 compose.yml 后重建容器让新变量进容器docker compose up -d重建一般几十秒就好不会重新下载 ISO——磁盘数据都在./windows卷里。确认锁住有两个抓手。浏览器打开http://容器所在机器IP:8006/应看到密码输入框而不是直接进桌面输错拒绝、输对进系统。再在宿主上查运行时的变量docker exec -it windows printenv PROTECT # 预期输出 # Y回显若是N说明容器还是旧配置up -d没真正重建。想退回把PROTECT改回N再跑一次docker compose up -d就还原成免密状态。踩坑速查8006 还是免密直连→ 根因PROTECT没进容器compose 没写对或没重建→ 修复docker compose up -d后docker exec -it windows printenv PROTECT确认是Y。输密码总提示错误→ 根因把 Web 查看器密码和 RDP 密码搞混两者其实是同一个PASSWORD→ 修复输入与 compose 里PASSWORD一字不差的字符串。改了 PROTECT 仍像没锁→ 根因浏览器缓存了旧的 noVNC 会话 → 修复用无痕窗口重开:8006或清掉该端口的 Cookie 再试。RDP 3389 连不上→ 根因只开了 Web 保护却忘了换 RDP 口令或宿主防火墙拦了 3389 → 修复确认PASSWORD已改并放行宿主防火墙的3389/tcp。上生产前加固端口映射绑到内网或本机如127.0.0.1:8006:8006别把 8006/3389 直接挂到公网。PASSWORD至少 12 位、含大小写数字符号且 Web 与 RDP 用同一套。用 SSH 隧道或带 TLS 的反向代理转发 8006而不是裸开端口。定期轮换PASSWORD轮换后立即docker compose up -d生效。不用的原生 VNC 5900 保持不映射端口缩小暴露面。端口和密码都锁好了变量细节看 docs/environment.md。【免费下载链接】windowsWindows inside a Docker container.项目地址: https://gitcode.com/GitHub_Trending/wi/windows创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考