基于Raspbian(树莓派)搭建web安全练习环境(一)

来源:互联网 发布:2017淘宝活动大全 编辑:程序博客网 时间:2024/06/07 12:08

树莓派 DVWA WooYun-DVWA bWAPP

前言

​ 本文主要记录的的是基于树莓派(一代B型)raspbian-jessie-lite系统搭建的web安全练习环境,其中包括树莓派的基本设置、树莓派服务器的搭建和DVWA的配置等内容。限于篇幅,本文将分成两大部分,第一部分是关于树莓派的一些设置,第二部分是关于环境的搭建。

​ 本人早已对树莓派的大名有所耳闻,看着网上大神们的各种鼓捣,心里有些痒痒,但我就是不买:sweat_smile:。。。。因为冷静一想,这东西最大的可玩性在于GPIO,对我来说用处不是很大。但在去年无意中得到一块一代B型,这可让我纠结了——”食之无味,弃之可惜“,只好利用起来了。想了一想,就拿来搭建一个网页服务器吧,正好学习web安全等知识,并以此博客记录和总结,也希望能帮助到各位。

​ 本文大部分资料来源于网络,使用某度搜索出来的结果大同小异,故不贴出全部链接了,在此感谢各位作者的分享和帮助,侵删!由于本人才疏学浅,时间和精力有限,若文章中出现不妥与错误之处,恳请读者批评指正。

树莓派基础教程

硬件准备

树莓派、网线、高速SD卡或TF卡(老型号派用的是SD卡,新用的是TF卡)、多功能读卡器、Micro USB数据线(安卓流行的数据线)、一个普通的手机充电插座(5V)、壳和散热器随意。

因为卡的速度和容量会直接影响树莓派的运行速度和存储空间,搭建的又是无桌面web服务器,可以通过SSH连接,所以笔者建议是Class4以上、4G以上的卡,也不需要准备HDMI线、多余的键盘和鼠标,通过网线接入与自己所用的电脑的局域网即可。一般的笔记本是带有SD插槽,有笔记本用SD卡的同学可以不用准备读卡器。

软件准备(win环境下)

连接树莓派和FTP的软件笔者选择的是Xshell(非商业用途免费)和FileZilla(开源免费),烧写系统用的软件是Win32 Disk Imager(usbit等也行),科学上网工具(非必须)。

系统的选择和安装

以官方的raspbian为例,其他系统安装方法差(mei)不(shi)多(guo)。

下载系统

树莓派官网:https://www.raspberrypi.org/

树莓派各个系统下载地址:http://downloads.raspberrypi.org/ 在网站中的os_list.json、os_list_v2.json、os_list_v3.json 和系统命名的文件夹中os.json的有关于树莓派的系统相关描述。

树莓派各系统

既然是玩Linux服务器,那命令行才是经典。raspbian官方镜像完整版4G左右,而精简版1G左右,基于硬件支持和系统稳定性等方面的考虑,在这我选择的是树莓派的新的精简版官方系统raspbian-jessie-lite。

安装系统

  1. 解压raspbian-jessie-lite.zip,里面有raspbian-jessie-lite.img镜像文件

    解压压缩包

  2. 打开Win32 Disk Imager,选择刚才解压出的img文件,Device(设备) 选项下选择SD/TF卡的盘符,然后选择Write(写),选择Yes后,等几分钟便完成。

    烧写镜像
    烧写镜像2

  3. 安装成功后会弹出完成对话框,提示写入成功。烧录烧录完成后,在Windows下显示卡只有几十兆,这是因为在装Linux系统的时候给卡分了Windows无法识别的分区。系统分区

  4. 如果不成功,确认一下镜像是否完整(官方下载的地方有哈希值)?读卡器是否接触良好?连接正常?SD/TF卡是否烧坏了?烧写软件没问题的情况下再试一下把卡拔下来重新烧录一次,如果还不行,看一下是不是把卡格式化成FAT32格式?是不是路径有中文名的问题?要不把杀毒软件关一下?还是不行?要不重启试试?换别的电脑试试?笔者就遇到过因为笔记本的南桥有问题而没有刷成功:dizzy_face:。。。

启用树莓派

把系统烧录好了之后就进行接下来的工作。

激活SSH

注意:2016年11月25日的官方的release notes中表明之后的Raspbian系统默认禁用了SSH。激活的方法是在卡的根目录下新建一个名为ssh的空白文件然后把卡插回派即可,否则在使用SSH连接时会提示Connection refused。SSH登录的默认账号是pi,密码是raspberry

2016-11-25:  * SSH disabled by default; can be enabled by creating a file with name "ssh" in boot partition  * Prompt for password change at boot when SSH enabled with default password unchanged

在2017年2月16日的release notes中有

2017-02-16:  * Detection of SSH enabled with default password moved into PAM  启用默认密码的SSH检测已移已至PAM  //笔者不太明白这句话的意思,但在使用2017-3-2的镜像时还是要新建文件激活SSH

开机

通过网线接入与电脑所连接的路由器(同一局域网),连接电源后一会儿派的灯就亮起,有些在闪烁。

LED指示灯状态相关解释——官方论坛

LED指示灯状态相关解释——树莓派实验室

LED 颜色 功能解释 状态解释 ACT 绿色 card status卡的状态 闪烁:正在访问SD卡 PWR 红色 power电源 常亮:正常 FDX 橙 full duplex全双工 亮:全双工/不亮:半双工 LNK 橙 link/activity网络活动情况 亮:网络连接成功 100/10M 橙 ethernet以太网状态 亮:100 Mbps/不亮:10 Mbps

连接

​ 为了方便每次重新开机连接树莓派,笔者建议设置固定树莓派的IP,在树莓派中设置固定IP不(wo)仅(lan)麻(de)烦(nong),而且有可能会造IP地址冲突,所以笔者在采用的是在路由器端设置树莓派的静态IP。如果读者由于各种原因没有办法登录路由器的管理界面,则要扫描局域网的设备的软件,用于查找树莓派的IP,并要在树莓派中设置固定IP地址,具体方法请读者自行搜索。

​ 登录路由器管理界面后,找到IP和MAC地址绑定的相关选项,设置并绑定树莓派的IP,拔掉(小心点==)树莓派的电源再插上重启一下树莓派,看一下树莓派的地址是不是刚才设置绑定的IP,如果不是可以多试一下重启树莓派或者重启路由器即可。

找到raspberry的ip

绑定树莓派IP

​ 设置好树莓派的静态IP后,使用Xshell连接就好。在linux中输入密码是一般看不见*号的==

链接树莓派

​Xshell的默认配色看久差点瞎了笔者的四眼==以下是笔者根据网上的资料设置的配色,读者可以将文中的代码保存到SolarizedDarkModify.xcs的文件中,然后在Xshell的配色方案 -> 浏览-> 导入,导入刚才的文件即可。

[SolarizedDarkModify]text=839496cyan(bold)=00fffftext(bold)=e9e9e9magenta=c000c0green=80ff00green(bold)=3c5a38background=042028cyan=00c0c0red(bold)=ff0000yellow=c0c000magenta(bold)=ff00ffyellow(bold)=ffff00red=ff4500white=c0c0c0blue(bold)=1e90ffwhite(bold)=fdf6e3black=000000blue=00bfffblack(bold)=808080[Names]name0=SolarizedDarkModifycount=1

设置

修改root密码

​ 在进行一些操作时需要用到管理员权限,以后使用FTP软件对树莓派的站点文件夹进行上传、删除等操作也需要用root用户登录。

sudo passwd root #为root设置密码,根据提示输入两次相同的即可。记住密码
su root #从当前用户pi切换为root,需要密码,验证root是否可以使用su pi #从root切换当前用户为pi,不需要密码
设置允许root远程登录
sudo nano /etc/ssh/sshd_config 

ctrl+w搜索 PermitRootLogin

# 将PermitRootLogin without-password 修改为PermitRootLogin yes

修改完成之后重启一下即可

sudo reboot
修改更新源

​ 树莓派的官方服务器在国外,所以我们更新、下载软件比较慢,因此我们设置软件源地址为国内的镜像服务器,以加快软件下载速度。BUT,这不是绝对的,笔者发现用默认官方源更新下载的比自己设置的阿里云的源还要快,应该是官方会自动定向国内源。这是树莓派官方的镜像列表。

sudo nano /etc/apt/sources.list #使用nano编辑更新源文件,若不使用sudo,则无法对文件进行有效修改

将文件中的之前的用#注释掉,添加以下其中的一组内容,其中jessie是对应的系统版本,本机安装的是jessie版本的系统

#阿里云的源(已亲测)deb http://mirrors.aliyun.com/raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main contrib non-free#以下未亲测==#中科大的源deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie main contrib non-free#清华大学的源deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ jessie main contrib non-free#重庆大学的源deb http://mirrors.cqu.edu.cn/Raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirrors.cqu.edu.cn/Raspbian/raspbian/ jessie main contrib non-free#中山大学的源deb http://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirror.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free#浙江大学的源deb http://mirrors.zju.edu.cn/raspbian/raspbian/ jessie main contrib contrib non-freedeb-src http://mirrors.zju.edu.cn/raspbian/raspbian/ jessie main contrib contrib non-free#大连东软的源deb http://mirrors.neusoft.edu.cn/raspbian/raspbian/ jessie main contrib non-freedeb-src http://mirrors.neusoft.edu.cn/raspbian/raspbian/ jessie main non-free contrib

修更新源

然后使用快捷键 Ctrl+O回车后保存文件,Ctrl+X退出然后执行

 sudo apt-get update && apt-get upgrade -y #更新系统软件并更新已安装应用,-y是不提示是否安装直接安装更新

更新软件

在更新时若出现获取(get)的连接都不是自己设置的更新源,下载很慢,可以尝试重启树莓派后再更新。

如果遇到使用临时管理员sudo更新出现权限不够的问题,请切换至root用户执行命令。

su root#切换搭配root用户#输入root密码apt-get update && apt-get upgrade -y#更新

切换到root用户再更新

raspi-config详解

树莓派装系统初次启动会出现raspi-config设置,也可以使用一下命令调出

sudo raspi-config #打开树莓派的设置界面

树莓派的设置界面

使用上下键上下移动光标,Tab键是切换焦点,左右键左右选择下边的SelcectFinishBack等选项,空格是勾选或者取消选中,回车键则选择中这个选项。

  1. Change User Password :更改默认用户(pi)的密码(建议修改,使用弱口令是一个坏习惯)

  2. Hostname:设置树莓派在在网络可见中的名称

  3. Boot Options:设置启动选项

    1. Desktop / CLI:选择启动时是进入桌面环境还是命令行模式
      • Console:文本控制台,需要用户登录。(作为服务器,我们选择这一项)
      • Console Autologin:自动登录文本控制台
      • Desktop Desktop GUI:需要用户登录图形用户界面
      • Desktop Autologin Desktop GUI:自动登录图形用户界面
    2. Wait for Network at Boot :等待网络在开机选择是否等待网络连接再引导
    3. Choose graphical splash screen or text boot:启动时选择进入图形界面或命令行
  4. Localisation Options:本地设置,设置语言和时区,快捷命令sudo dpkg-reconfigure locales

    1. Change Locale:更改语言和区域。想要显示中文,先安装了中文字体再选择设置。如果不安装中文字体系统是不会自动安装,所以看见的一些显示是方块方框。安装中文字体的方法

      sudo apt-get install ttf-wqy-zenhei #安装文泉驿中文字库

      回车后上下移动光标,page down / up 翻页,按空格选中en_US.UTF-8 UTF-8、zh_CN.UTF-8 UTF-8、zh_CN.GBK GBK(选中选项[]里会有一个*号)选中中文

      然后使用Tab键选择确定后再确定zh_CN.UTF-8为系统环境默认字符集,树莓派重启即可。

      选择默认字符集

    2. Change Timezone:时区设置,主要是用来显示树莓派的时间。选择Asia(亚洲)再选择Chongqing(重庆)即可。

    3. Change Keyboard Layout :键盘布局(在初始设置时有,好像是在设置后语言区域和时区后,重启就没有了==)
      关于键盘布局:我们是通过SSH连接树莓派的,所以不需要安装中文输入法,但直接在Xshell输入时键盘的一些符号不对或者对调,那就使用复制粘贴来解决吧。
    4. Change Wi-fi Country:设置wifi的连接频道
  5. Interfacing Options:接口设置

    1. Camera:设置启用或者禁用树莓派的相机
    2. SSH:设置启用或者禁用SSH远程连接树莓派,开启或者禁用SSH服务器
    3. VNC:设置启用或者禁用RealVNC远程连接树莓派,确认开启树莓派会自动下载RealVNC
    4. SPI:设置启用或者禁用在内核模式中自动加载SPI
    5. I2C:设置启用或者禁用在内核模式中自动加载I2C
    6. Serial:设置启用或者禁用串行连接的Shell和内核消息
    7. 1-Wire:设置启用或者禁用一线接口
    8. Remote GPIO:设置启用或者禁用远程连接GPIO针脚
  6. Overclock:设置超频,更多超频设置信息

  7. Advanced Options:高级设置

    1. Expand Filesystem:扩展文件系统,将分区扩展到整张卡(建议选中,方便后期工作)
    2. Overscan:设置是否全屏显示
    3. Memory Split:设置给GPU分配多少内存(我们不使用图形界面,建议分配16M
    4. Audio:设置声音默认输出到3.5mm接口还是HDMI口
    5. Resolution:设置屏幕分频率
    6. GL Driver:设置启用或者禁用实验的桌面GL驱动
  8. Update:升级这个树莓派设置工具到最新版

  9. About raspi-config:关于 raspi-config

设置好了之后重启设置就生效了,到此树莓派的基本安装完成了,这是我第一次写博客。读者如果有什么问题或者建议欢迎留言评论。

1 0