一、基于docker搭建靶场
bash
#此步骤需要科学上网
#从软件源中下载 docker.io 和 docker -compose 软件包及其依赖项。
sudo apt-get install docker.io docker-compose
#查看docker版本
docker -v
#查看docker信息
docker info
#重启docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker

检索仓库是否有此镜像,国外的镜像源不让访问
配置docker代理
bash
root@ub2-virtual-machine:/etc/systemd/system#
mkdir docker.service.d
vim /etc/systemd/system/docker.service.d/http-proxy.conf
bash
[Service]
Environment="HTTP_PROXY=http://192.168.1.5:7890"
Environment="HTTPS_PROXY=http://192.168.1.5:7890"
Environment="NO_PROXY=localhost,127.0.0.1"
bash
systemctl daemon-reload
systemctl restart docker
docker search nginx
从 Docker 镜像仓库(默认为 Docker Hub)下载 Nginx 服务器镜像、
查看本地 Docker 镜像库中所有镜像
bash
docker pull nginx
docker images
指定镜像创建并启动容器,-d后台运行,-p 80:80 实现容器端口与宿主机端口的映射。 80:80 意味着将容器内部的 80 端口映射到宿主机的 80 端口。这样一来,外部就能够通过访问宿主机的 80 端口来使用容器内的服务,启动一个基于 9592f5595f2b 镜像的容器,让其在后台运行,并且把容器内部的 80 端口映射到 Ubuntu 宿主机的 80 端口在这里插入代码片
bash
docker run -d -p 80:80 9592f5595f2b
在地址栏ip:80(前者)
搭建靶场
Vulhub是一个面向安全研究人员和教育工作者的开源预构建漏洞Docker环境集合
bash
# 克隆仓库
cd /
git clone --depth 1 https://github.com/vulhub/vulhub.git
# 进入任何一个漏洞目录
cd /vulhub/webmin/CVE-2019-15107
ls
#查看shell文件
vim docker-compose.yml
# 启动环境
#可能docker-compose的版本过低,参考问题手册4
docker-compose up -d

二、小皮面板搭建靶场



三、lnmp搭建靶场
源码安装nginx
shell
#安装依赖包
apt-get install gcc
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g zlib1g-dev
sudo apt-get install openssl
sudo apt-get install libssl-dev
tar -xvf nginx-1.21.6.tar.gz
#编译nginx
cd nginx-1.21.6
#执行
./configure
#指定安装路径执行
#./configure --prefix=/home/centos/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module
# 执行make命令
make
# 执行make install命令
make install

shell
#启动nginx
cd /usr/local/nginx/sbin
# 启动nginx
./nginx
查看nginx是否安装完毕
访问nginx
安装php
shell
#增加源地址
#执行三条命令,添加php的源地址,更新,安装
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ondrej/php
sudo apt-get update
#安装php
sudo apt-get install php7.4 php7.4-mysql php7.4-fpm php7.4-curl php7.4-xml php7.4-gd php7.4-mbstring php-memcached php7.4-zip
#查看php的版本
php -v
#切换不同版本的软件
update-alternatives --config php
#查看fpm是否启动
systemctl status php7.4-fpm
进行php测试
shell
#写一个php测试文件
root@galaxy-virtual-machine:/usr/local/nginx/html# vim index.php
<?php
echo "hello,php"
?>
出现下图错误,nginx找不到php服务,需要更改配置
shell
#配置php-fpm 配置文件是www.conf
find /etc -name "www.conf"
vim
#把监听端口改掉
;listen = /run/php/php7.4-fpm.sock
listen = 127.0.0.1:9000
#启动php-fpm
sudo service php7.4-fpm start
#查看9000端口
netstat -lnt | grep 9000
#帮助你监控网络活动、排查网络故障、查看端口占用情况等。
lsof -i:9000

shell
#到nginx的配置文件中
cd /usr/local/nginx/conf
vim nginx.conf
#列出行号
:set nu
#将65到71的#替换成空格
:65,71 s/#/ /g
#在/usr/local/nginx/sbin下
./nginx -s reload

宝塔面板搭建

安装完成后,你会得到一个面板访问地址(通常是你的服务器IP地址加上端口,如:http://你的IP:8888
)。