
不少新手搭建Vulhub靶场时都会遇到Docker镜像拉取超时、连接被拒绝的问题。即便配置清华、中科大国内镜像源依旧拉取镜像失败这也是很多教程没有详细说明的实操难题。本人实测踩坑一下午总结出国内网络下Vulhub搭建的终极解决办法适配Kali虚拟机环境操作简单可直接复用。#报错图1.docker和vulhub靶场的搭建这里我就不详细解释了有好多别人的搭建教程比如Vulhub漏洞靶场搭建非常详细零基础入门到精通看这一篇就够了_vulhub搭建-CSDN博客vulhub | vulhub安装教程有这一篇就够了~详细图解-CSDN博客最后的结果就是运行之后能出现版本并且vulhub的文件解压完毕docker -v2.解决方法尝试更换镜像源我们发现是docker客户端在尝试连接官方镜像仓库的时候因为网络延迟阻断导致了请求超时这是Docker 镜像拉取超时错误具体报错为#报错代码 Error response from daemon: Get https://registry-1.docker.io/v2/: context deadline exceeded本质是 Docker 客户端在尝试连接官方镜像仓库时因网络延迟或阻断导致请求超时。第一步是先把镜像源换成国内的步骤 1创建 / 修改 docker 配置文件sudo nano /etc/docker/daemon.json步骤 2粘贴下面这段镜像配置{ registry-mirrors: [ https://docker.mirrors.ustc.edu.cn, https://mirrors.tuna.tsinghua.edu.cn/docker ] }CtrlO保存回车确认CtrlX退出编辑器步骤 3重启 Docker 服务加载配置sudo systemctl daemon-reload sudo systemctl restart docker步骤 4回到漏洞目录重新启动靶场sudo docker-compose up -d3.如果依旧错误只能使用最后的手段挂梯子当我们再次进行镜像的拉取发现这这次的报错变了#报错的内容是 dial tcp 199.16.158.12:443: connect: connection refuse这是Docker 镜像拉取连接被拒绝错误本质是 Docker 客户端在尝试连接官方镜像仓库时目标服务器主动拒绝了 TCP 连接请求。该问题在国内用户中同样非常普遍根本原因在于国内访问 Docker Hubregistry-1.docker.io的网络链路不稳定常出现高延迟、丢包或被防火墙拦截DNS 解析可能返回不可达 IP或 HTTPS 握手阶段超时本地 Docker 服务未配置镜像加速器直连境外服务器效率极低。解决方法因为我是在自己的虚拟机kali里面想要拉取镜像流量一定会经过我的主机因此我需要在windows和kali里面都进行操作其他的虚拟机也同理步骤一windows的配置查看自己的梯子的代理端口并打开局域网连接模式步骤二Windows CMD 查询 IP找到VMware Network Adapter VMnet8的 IPv4ipconfig /all知道IP地址和代理端口后就需要在kali上进行文件的配置步骤三关闭所有的防火墙步骤四kali写入代理配置使用NAT模式1. 创建目录sudo mkdir -p /etc/systemd/system/docker.service.d2. 写入代理配置sudo nano /etc/systemd/system/docker.service.d/proxy.conf粘贴下面全部内容[Service] EnvironmentHTTP_PROXYhttp://192.168.247.1:7890 EnvironmentHTTPS_PROXYhttp://192.168.247.1:7890 EnvironmentNO_PROXY127.0.0.1,localhost3. 重载并重启 dockersudo systemctl daemon-reload sudo systemctl restart docker4. 测试镜像拉取sudo docker pull hello-world正常下载代表代理生效这里发现没有问题了就代表可以正常拉取镜像了解决问题