在 VMware 中安装 PHP 和 DVWA 需要几个步骤。这里将详细介绍如何在一个 Linux 虚拟机中安装 DVWA 和 PHP 环境,以便进行 Web 安全测试。假设你已经在 VMware 上安装好了一个 Linux 发行版(如 Ubuntu)。
步骤 1:安装 VMware 和创建虚拟机
-
下载并安装 VMware Workstation Player(如果还没有安装):
- 到 VMware 官网 下载并安装 VMware Workstation Player。
-
创建一个新的虚拟机:
- 打开 VMware Workstation Player,点击
Create a New Virtual Machine
。 - 选择一个合适的 Linux 发行版 ISO 文件(例如 Ubuntu)。
- 根据提示创建虚拟机,设置硬盘、内存等参数。
- 打开 VMware Workstation Player,点击
步骤 2:更新虚拟机的系统和安装基础工具
-
启动虚拟机并登录。
-
更新系统:
- 打开终端,执行以下命令来更新包管理器和系统软件:
sudo apt update sudo apt upgrade
- 打开终端,执行以下命令来更新包管理器和系统软件:
步骤 3:安装 Apache、PHP 和 MySQL(LAMP 堆栈)
DVWA 依赖于 Apache 服务器、PHP 以及 MySQL 数据库,所以首先需要安装这些服务。
-
安装 Apache:
- 在终端中执行以下命令安装 Apache:
sudo apt install apache2
- 安装完成后,你可以在浏览器中输入
http://localhost/
,如果显示 Apache 的默认页面,说明安装成功。
- 在终端中执行以下命令安装 Apache:
-
安装 PHP:
-
安装 MySQL:
- 使用以下命令安装 MySQL:
sudo apt install mysql-server
- 安装完成后,运行以下命令来安全设置 MySQL:
sudo mysql_secure_installation
- 你会被要求设置 MySQL 的 root 密码,按照提示进行配置(Aaa123456789!)。
- 使用以下命令安装 MySQL:
-
安装 PHP 扩展(可选,根据需求安装):
步骤 4:下载并配置 DVWA
-
下载 DVWA:
- 进入
/var/www/html/
目录,该目录是 Apache 的根目录:cd /var/www/html/
- 使用
git
克隆 DVWA 仓库:sudo apt install git sudo git clone https://github.com/digininja/DVWA.git
- 进入
-
配置 DVWA:
-
设置目录权限:
- 给 Apache 用户授予 DVWA 目录的写权限:
sudo chown -R www-data:www-data /var/www/html/DVWA/ sudo chmod -R 755 /var/www/html/DVWA/
- 给 Apache 用户授予 DVWA 目录的写权限:
步骤 5:设置 MySQL 数据库
-
登录 MySQL:
sudo mysql -u root -p
-
创建 DVWA 数据库:
- 在 MySQL 中运行以下命令:
CREATE DATABASE dvwa; GRANT ALL PRIVILEGES ON dvwa.* TO 'dvwa_user'@'localhost' IDENTIFIED BY 'Aaa123456789!'; FLUSH PRIVILEGES; EXIT;
- 在 MySQL 中运行以下命令:
步骤 6:启动 DVWA
-
重启 Apache 服务:
sudo service apache2 restart
-
访问 DVWA:
- 在浏览器中打开
http://localhost/DVWA/setup.php
,根据提示配置 DVWA。 - 点击 “Create/Reset Database” 按钮来创建所需的数据库表。
- 在浏览器中打开
-
登录 DVWA:
- DVWA 默认的用户名是
admin
,密码是password
。 - 登录后,你就可以开始使用 DVWA 进行各种 web 安全测试了。
- DVWA 默认的用户名是
步骤 7:调整 DVWA 安全级别
- 配置安全级别:
- 登录 DVWA 后,你可以在右上角的 “DVWA Security” 选项中选择不同的安全级别(低、中、高或极高),以练习不同复杂度的攻击。
总结
通过这些步骤,你已经在 VMware 虚拟机上安装并配置了 Apache、PHP、MySQL 和 DVWA。现在你可以在这个环境中练习 Web 漏洞利用、渗透测试等安全技术。注意保持虚拟机的网络隔离,以防意外安全问题。