一、基于docker搭建靶场

1、下载docker

#此步骤需要魔法
#从软件源中下载 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

在这里插入图片描述
检索仓库是否有此镜像,国外的镜像源不让访问

2、配置docker代理

 root@ub2-virtual-machine:/etc/systemd/system# 
mkdir docker.service.d

vim /etc/systemd/system/docker.service.d/http-proxy.conf

[Service]
#1.5为主机ip,7890是魔法端口
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"
 systemctl daemon-reload
 systemctl restart docker
 docker  search nginx

3、docker中下载nginx服务器镜像

从 Docker 镜像仓库(默认为 Docker Hub)下载 Nginx 服务器镜像、
查看本地 Docker 镜像库中所有镜像

docker pull nginx
docker images

指定镜像创建并启动容器,-d后台运行,-p 80:80 实现容器端口与宿主机端口的映射。 80:80 意味着将容器内部的 80 端口映射到宿主机的 80 端口。这样一来,外部就能够通过访问宿主机的 80 端口来使用容器内的服务,启动一个基于 9592f5595f2b 镜像的容器,让其在后台运行,并且把容器内部的 80 端口映射到 Ubuntu 宿主机的 80 端口


docker run -d -p 80:80 9592f5595f2b

在这里插入图片描述
在这里插入图片描述
在地址栏ip:80(前者)
在这里插入图片描述

4、下载靶场环境

Vulhub官网
Vulhub是一个面向安全研究人员和教育工作者的开源预构建漏洞Docker环境集合

# 克隆仓库
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搭建靶场

1、中间件

中间件是一种位于操作系统、数据库等系统软件和应用程序之间的独立软件,它能为不同的应用程序、系统或组件提供通用的服务和功能,帮助它们实现高效、可靠的通信、数据交换和协同工作,从而简化应用开发、增强系统兼容性和可扩展性。
Nginx、Apache
属于Web 中间件 ,处理 HTTP 请求,支持负载均衡、静态资源管理等

2、源码安装nginx

GitHub官方讲解

#安装依赖包
	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            #1、检查系统环境;2、配置编译选项;3、生成 Makefile

#指定安装路径执行
 #./configure --prefix=/home/centos/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module
 # 执行make命令
make        #根据Makefile的内容来编译软件
    
# 执行make install命令
 make install            #将编译好的软件安装到指定位置。

在这里插入图片描述

#启动nginx ,默认可执行文件(nginx 程序)通常放在 sbin 目录
    cd /usr/local/nginx/sbin   
 # 启动nginx 
  ./nginx

查看nginx是否安装完毕

在这里插入图片描述
访问nginx
在这里插入图片描述

3、安装php

#增加源地址
#执行三条命令,添加php的源地址,更新,安装
    sudo apt-get install software-properties-common
    sudo add-apt-repository -y ppa:ondrej/php    #如需特定版本PHP(如 PHP 8.0 或 8.1),可使用第三方仓库如 ondrej/php
    sudo apt-get update
#安装php
	sudo apt install php
    sudo apt-get install  php-mysql php-fpm php-curl php-xml php-gd php-mbstring php-memcached php-zip
    #其他版本
    #sudo apt-get install php7.3 php7.3-mysql php7.3-fpm php7.3-curl php7.3-xml php7.3-gd php7.3-mbstring php-memcached php7.3-zip

拓展详细功能

基础扩展(含 PHP-FPM,Nginx 需配合此模块运行 PHP)
sudo apt install php-fpm
数据库相关(MySQL/MariaDB 支持)
sudo apt install php-mysql
常用工具扩展
sudo apt install php-cli        # 命令行接口
sudo apt install php-common     # 公共文件
sudo apt install php-json       # JSON 支持
sudo apt install php-mbstring   # 多字节字符串处理(支持中文等)
sudo apt install php-zip        # ZIP 压缩/解压支持
sudo apt install php-gd         # 图像处理(验证码、图片裁剪等)
sudo apt install php-curl       # 网络请求(调用 API 等)
sudo apt install php-xml        # XML 解析支持
sudo apt install php-pear       # PHP 扩展管理工具
sudo apt install php-memcached  # Memcached 缓存支持
#查看php的版本
php -v
#切换不同版本的软件
update-alternatives --config php

#查看fpm是否启动
systemctl status php7.4-fpm

进行php测试

#写一个php测试文件
root@galaxy-virtual-machine:/usr/local/nginx/html# vim index.php
<?php
echo "hello,php"
?>

出现下图错误,nginx找不到php服务,需要更改配置
在这里插入图片描述
在这里插入图片描述

#配置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

在这里插入图片描述

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

#在/usr/local/nginx/sbin下
cd /usr/local/nginx/sbin/
 ./nginx -s reload

在这里插入图片描述

四、宝塔面板搭建

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

更多推荐