Ubuntu 22.04 中安装 Docker并且搭建vulhub靶场

本文介绍了在Ubuntu系统上安装和配置Docker、docker-compose的方法,包括升级系统、安装Docker、设置国内镜像加速,以及如何使用Docker的基本操作和示例项目配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法一:

sudo apt-get upgrade
sudo apt-get install docker
sudo apt-get install docker-compose
sudo docker version
sudo service docker start

配置镜像加速:

docker官方镜像仓库网速较差,需要设置国内镜像服务。使用完方法二,也要配置加速
参考阿里云镜像加速文档

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://bmqd3wqd.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

方法二:(比较麻烦)

如果方法一失败,尝试方法二

1. 更新Ubuntu

sudo apt update
sudo apt upgrade

2. 添加docker库

  • 首先,安装必要的证书并允许 apt 包管理器使用以下命令通过 HTTPS 使用存储库:
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
  • 然后,运行下列命令添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

若出现如下类似报错,不用处理:

W: Target Packages (stable/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/archive_uri-https_download_docker_com_linux_ubuntu-jammy.list:1 and /etc/apt/sources.list.d/docker.list:1
W: Target Packages (stable/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/archive_uri-https_download_docker_com_linux_ubuntu-jammy.list:1 and /etc/apt/sources.list.d/docker.list:1
W: Target Translations (stable/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list.d/archive_uri-https_download_docker_com_linux_ubuntu-jammy.list:1 and /etc/apt/sources.list.d/docker.list:1
W: Target Translations (stable/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/archive_uri-https_download_docker_com_linux_ubuntu-jammy.list:1 and /etc/apt/sources.list.d/docker.list:1
  • 添加 Docker 官方库:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  • 使用命令更新 Ubuntu 源列表:
sudo apt update

3. 安装 Docker

  • 运行下列命令在 Ubuntu 22.04 LTS 服务器中安装最新 Docker CE
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  • (选做)也可以安装其他版本的
apt-cache madison docker-ce

会显示

 docker-ce | 5:24.0.6-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.5-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.4-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:24.0.3-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages

选择其中一个

sudo apt install docker-ce=5:24.0.6-1~ubuntu.22.04~jammy docker-ce-cli=5:24.0.6-1~ubuntu.22.04~jammy containerd.io
  • 安装完成后,验证是否成功运行
systemctl status docker

若没有成功运行,尝试systemctl start docker

  • 使 Docker 服务在每次重启时自动启动:
sudo systemctl enable docker

4.搭建vulhub

# Download project
wget https://github.com/vulhub/vulhub/archive/master.zip -O vulhub-master.zip
unzip vulhub-master.zip
cd vulhub-master

# Enter the directory of vulnerability/environment
cd flask/ssti

# Compile environment
docker compose build

# Run environment
docker compose up -d

5.灯塔ARL

git clone https://github.com/TophantTechnology/ARL
cd ARL/docker/
docker volume create arl_db
docker-compose pull
docker-compose up -d 

6. docker基本使用

sudo service docker start //启动
sudo service docker stop //停止
sudo service docker restart //重启
docker ps -a                        #查看在运行的docker进程   
docker images                    #查看所有Docker镜像
docker rmi -f                        #删除镜像
docker exec -it ID /bin/bash         #进入一个正在运行的容器的shell
docker compose logs | grep password  #可查看管理员密码
<think>好的,我需要帮助用户了解如何搭建帕鲁杯应急响应相关的靶场环境,特别是使用GZ:CTF这个工具。首先,我应该回忆一下之前提到的GZ:CTF的信息,用户之前提到过它比CTFD好用,适合网络安全学习者。 用户的问题涉及帕鲁杯应急响应靶场搭建,可能这个靶场是专门为某个比赛或培训设计的,可能包含特定的应急响应场景。我需要先确定GZ:CTF是否支持自定义场景,或者是否有相关的配置文档。根据之前的引用,GZ:CTF是一个开源靶场,所以可能需要从GitHub或其他平台获取源码。 接下来,我需要分步骤说明搭建过程。首先应该是系统环境的要求,比如操作系统、依赖项安装。然后可能涉及GZ:CTF的安装步骤,包括克隆仓库、安装依赖、配置数据库等。之后,可能需要指导用户如何导入或配置帕鲁杯应急响应的特定题目或场景,这可能包括Docker容器的配置、题目文件的设置等。 同时,用户提到了CTF和安全测试,所以可能需要涉及如何设置漏洞环境、网络配置、权限管理等。另外,应急响应靶场可能模拟了攻击后的环境,需要配置日志分析、入侵检测等模块,这部分可能需要额外说明。 还需要考虑可能的常见问题,比如端口冲突、依赖项版本问题,以及如何测试靶场是否正常运行。最后,应该建议用户参考官方文档或社区资源,以应对更复杂的需求。 需要确保回答结构清晰,步骤详细,并且引用之前的资料,比如GZ:CTF的优势。同时,根据用户的要求生成相关问题,可能涉及其他靶场工具的比较、应急响应场景的设计等。</think>### 帕鲁杯应急响应靶场搭建教程 #### 1. 环境准备 - **系统要求**: Ubuntu 20.04/22.04 或 Debian 10+(推荐使用纯净系统) - **依赖安装**: ```bash sudo apt update && sudo apt install -y docker.io docker-compose git python3-pip ``` #### 2. 部署GZ:CTF基础平台 1. **克隆仓库**: ```bash git clone https://github.com/CTF-Archives/GZCTF.git cd GZCTF ``` 2. **配置文件修改**: - 编辑`docker-compose.yml`,设置数据库密码和Redis配置 - 修改`.env`中的`SECRET_KEY`和域名信息 3. **启动服务**: ```bash docker-compose up -d ``` 等待约5分钟,访问`http://localhost:8000`完成初始化[^1]。 #### 3. 导入应急响应场景 1. **题目配置**: - 创建`palu_emergency`目录,包含: - `docker-compose.yml`(定义漏洞环境) - `flag`文件(设置动态flag) - `check.py`(验证脚本) 示例漏洞环境配置: ```yaml version: '3' services: web: image: vulhub/thinkphp:5.0.23 ports: - "8080:80" ``` 2. **场景打包**: ```bash tar -czvf palu_emergency.tar.gz palu_emergency ``` 通过GZ:CTF管理后台导入题目包。 #### 4. 网络配置 - 使用`--network=bridge`隔离容器 - 在平台设置中开启「动态端口分配」功能 #### 5. 验证测试 ```bash docker ps # 查看运行中的容器 curl http://localhost:8080 # 测试漏洞环境 ``` #### 6. 进阶配置 - 日志监控:部署ELK栈收集攻击日志 - 流量镜像:使用tcpdump捕获攻击流量 $$ Wireshark过滤表达式示例: \quad tcp.port == 8080 $$
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值