我是在windows10下创建的,build环境注意powershell的版本一定要高于2.0,请升级安装补丁。
首先打开powershell,但是系统安全策略默认是不允许powershell执行脚本的,所以需要命令打开功能。
set-ExecutionPolicy RemoteSigned
安装powershell下的包管理器Chocolatey。
iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
用前面配置的choco管理器安装packer,packer用于创建虚拟机镜像。
choco install packer
本地安装vagrant。
安装好vagrant后开始配置插件,然后安装vagrant reload插件,基于ruby的工具。创建和部署虚拟化开发环境。之后的搭建使用oracle的vbox,chef创建自动化虚拟环境。
vagrant plugin install vagrant-reload
下载一个virtualbox安装到本地,然后一定将virtualbox加入系统环境变量。
https://www.virtualbox.org 到此前期的环境准备工作就完成了,下面开始build
把github上的metasploitable3项目下载到本地。https://github.com/rapid7/metasploitable3
git clone https://github.com/rapid7/metasploitable3.git
准备一个msdn上下载的win2008镜像文件丢进iso文件夹内,放进去后这里需要把名字改一下。
75e529d96d6b175622512cf0a1bc55a5d1677e6a9d3b913fe95c65b6aa41770d.iso
在项目文件根目录下powershell直接执行自动脚本。
./build.ps1
本来是我自己下载的Win2k8的镜像,按照ps1脚本中的内容改了名字放在iso里了 奈何他不读,结果又开始重新从官网下载镜像了。没有关系慢慢等吧,大概其八分钟的样子下载好了。
下载好后就会开始自动用virtualbox创建虚拟机进行部署。居然是脚本自己在网站上慢慢下载到虚拟机里面的,它早就不能把软件都打个包在项目文件里面吗?之后就是长达好几个小时的等待了,国内就是慢慢慢。这个build的过程中各种错误,有意思的时只要一出错误脚本就会把前面的进度都删除包括虚拟机文件!我开了四台电脑一起整夜跑都没一个完完整整成功的,第二天最后终于有一台出完整的box文件了。
幸好出文件了,后面就好弄了。
把生成出来的box文件增加到vagrant中。
vagrant box add .\windows_2008_r2_virtualbox_0.1.0.box --name=metasploitable3
之后在用户文件夹.vagrant.d\boxes\metasploitable3文件夹中就生成出虚拟磁盘了。
查看一下刚刚添加的box,可以看到存在list中说明添加成功了。
之后编辑一下vagrantfile配置文件,需要将名字改成你之前加到vagrant自定义的文件名字。
这里如果和你本地的vagrant list中的名字对不上就会去网上搜索下载。
开始最后步骤了用vagrant部署环境,vagrant他会启动所有配置脚本设置好一切。
vagrant up
后面因为我win10的virtualbox网卡出现了问题连不上网络了所以我后面换了win7去vagrant up完成最后部署,之后就是等待vagrant启动vm了。
之后就可以在VirtualBox中打开VM并登录, 默认账号密码都是:vagrant。