1.虚拟机这种基本安装就不做过多介绍了,不会自己去学习相关的内容。
2.centos镜像建议选择使用7-everything版的,live版和精简版的亲测会有服务未安装。
3.记住装完一定拍快照,装的环境中会出现各种报错和你无法预知的错误,如果没拍快照就跟我一样不停重装虚拟机吧。
4.镜像的挂载,修改安装源。(借用Linux的思路,但不要用所学照搬,不懂得变通,那样你也会跟我一样两个下午服务装不上,各种报错,排除各种原因到崩溃。)
这里以CentOS-7-x86_64-Everything-1503-01.iso为例
mkdir -p /media/CentOS7
mount /dev/sr0 /media/CentOS7
vi /etc/fstab
/dev/sr0 /media/CentOS7 iso9660 defaults,ro,loop 0 0
vi /etc/yum.repos.d/centos7-media.repo
[centos7-media]
name=centos7
baseurl=file:///media/CentOS7
enabled=1
gpgcheck=0
gpgkey=file:///media/CentOS7/RPM-GPG-KEY-CentOS-7
mv CentOS-Base.repo CentOS-Base.repo.bak
这里CentOS-Base.repo文件主要是去网络上找相应的包,修改为从本地源读取 (这点很重要)
总结:
1.以上操作顺畅的话就可以安装相应的Apache和MySQL服务,准备搭建dvwa
2.如果存在报错的坏,一种是只加载相关插件,安装依赖关系包失败的。另一种“vi /media/centos7”相关错误,被回收的。最后一种是在 /bin 或者相关文件查询不到、无法读取的。这些都是原因都归于挂载安装源的问题,不成功就回上面看看吧。
配置ssh
编辑ssh配置文件
vi /etc/ssh/sshd_config
把下面两行取消注释
设置
不限制root用户登录ssh
PermitRootLogin yes
重启ssh
systemctl restart sshd.service
设置开机启动
systemctl enable sshd.service
添加防火墙策略(可选)
firewall-cmd –permanent –zone=public –add-service=ssh
firewall-cmd–reload
我们先更新一下cache(可选操作)
yum makecache
升级一下(可选操作)
yum update
安装Apache的服务器
然后启动Apache
service httpd start
查看Apache状态
设置httpd在运行级别为2、3、4、5的情况下都是on的状态(如果发现测试php时网页显示源代码,尝试把此代码来一遍)
chkconfig –level 2345 httpd on firewall-cmd –permanent –zone=public
–add-service=httpd
安装MySQL
//因为最新版的linux系统开始,默认的是Mariadb
而不是mysql~//
检查系统是否装有mysql,返回空值则说明没有安装
rpm -qa |grep mysql
//yum install虽然可执行,但是只是用来更新Mariadb的//
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
安装mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装mariadb(新版本的mysql已经改成mariadb,使用mysql也可以,要去找安装包)
安装完成后再次查看mariadb
service mysqld restart(这里装的是mariadb,但是数据库的重启停止还是mysql)
如果重启含有如下报错
解决办法一:使用MariaDB代替mysql数据库(MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。)#yum install mariadb-server -y //如果已安装可以省略
systemctl start mariadb.service //启动服务
#systemctl enable mariadb.service //开机启动服务
mysql -u root -p //登录mysql解决办法二:这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在
/etc/systemd/system/mysqld.service下添加如下内容[Unit] Description=MySQL Server After=network.target [Service]
ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf
–datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql Group=mysql WorkingDirectory=/usr [Install]
WantedBy=multi-user.target然后运行
systemctl daemon-reload 使用重启命令:
service mysql start
重启Mysq服务
service mysqld restart
下载DVWA
1.去官网下载dvwa
2.cp到 /var/www/html 下
3.解压压缩包
安装PHP
将虚拟机配置成桥接模式后,访问测试网页
http://x.x.x.x/dvwa/setup.php 根据下面配置内容提示,设置环境
vim /etc/php.ini
配置内容
编辑配置文件
cd /var/www/html/dvwa-master/config
cp config.inc.php.dist config.inc.php.dist.bak #备份一下
vim config.inc.php
$_DVWA[ ‘db_server’ ] = ‘127.0.0.1’; $_DVWA[ ‘db_password’ ] =
‘mysqlpassword’; $_DVWA[ ‘recaptcha_public_key’ ] =
‘6LePqhAUAAAAAH6Bn2okO9-8G-zNw46PNhotV4Q6’; $_DVWA[
‘recaptcha_private_key’ ] =
‘6LePqhAUAAAAAMVqhBbFr1NVA9H13FKyfAgBeZYx’;
然后给予权限可写
cd /var/www/html/dvwa/hackable/ chmod 777 uploads cd
/var/www/html/dvwa/external/phpids/0.6/lib/IDS/tmp chmod 777
phpids_log.txt
如果最后还有问题调整一下安全级别
cd /var/www/html/dvwa/config vim config.inc.php $_DVWA[
‘default_security_level’ ] = ‘low’;
最后访问网页出现404的错误解决方法如下:
1.文件名没有写错。
2.桥接成功。
3.权限给所有。
4.ip设置正确
5.httpd.conf配置正确。
6。查看80端口没被占用。
上面操作正确你会看到如下画面(注意所标记的内容)
打开php服务器,输入http://localhost/DVWA-master/,可以看到没有警告了,点击create/reset database完成DVWA的安装。
之后在DVWA Security模块,设置安全级别为Low,点Submit,完成DVWA的配置。之后也能在这里设置各种级别来对网络攻防的学习。
至此,DVWA安装完毕,就可以愉快在上面的各种网络常见漏洞进行网络安全、网络攻防的学习了。