You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30-16Lines changed: 30 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -61,25 +61,39 @@ Requirements:
61
61
62
62
### ub1404 Development and Modification
63
63
64
-
Using Vagrant and a lightweight Ubuntu 14.04 vagrant cloud box image, you can quickly set up and customize ub1404 Metasploitable3 for development or customization.
65
-
To do so, install Vagrant and a hypervisor such as VirtualBox. Then, visit the `bento/ubuntu-14.04` page and find a version that supports
66
-
your hypervisor. For instance, version `v201808.24.0` is compatible with VirtualBox.
64
+
Using Vagrant and a lightweight Ubuntu 14.04 vagrant cloud box image, you can
65
+
quickly set up and customize ub1404 Metasploitable3 for development or
66
+
customization. To do so, install Vagrant and a hypervisor such as VirtualBox,
67
+
VMWare, or libvirt.
67
68
68
-
Install the vagrant virtualbox vbguest plugin:
69
+
Install the relevant provider plugin:
69
70
71
+
# virtualbox
70
72
vagrant plugin install vagrant-vbguest
71
-
72
-
Then, navigate to the `/chef/dev/ub1404` directory in this repository. Examine the Vagrantfile there. Metasploitable ub1404 uses the vagrant `chef-solo` provisioner.
73
-
To this Vagrantfile, add the metasploitable chef recipes that you desire -- you can browse them in the `/chef/cookbooks/metasploitable` folder. Or,
74
-
add or edit your own cookbook and/or recipes there.
75
-
76
-
From the `/chef/dev/ub1404` directory, you can run `vagrant up` to get a development virtual ub1404 instance. After the initial `up` build and provision,
77
-
when you edit the chef runlist or when you edit a chef recipe, run `vagrant provision` from the same directory. For faster development, you can comment-out
78
-
recipes that you do not need to rerun -- but even if they are all enabled, vagrant provisioning should not take longer one or two minutes.
79
-
Chef aims to be idempotent, so you can rerun this command often.
80
-
81
-
Consider taking a snapshot (e.g., `vagrant snapshot new fresh`) before modifying recipes, so that you can always return to an initial state (`vagrant restore fresh`).
82
-
If you want a _totally_ fresh snapshot, you can do the initialization with `vagrant up --no-provision`, then take a snapshot, followed by `vagrant provision`.
73
+
74
+
# libvirt
75
+
vagrant plugin install vagrant-libvirt
76
+
77
+
Then, navigate to the [chef/dev/ub1404](chef/dev/ub1404) directory in this repository.
78
+
Examine the Vagrantfile there. Select a base box that supports your provider.
79
+
80
+
Metasploitable ub1404 uses the vagrant `chef-solo` provisioner. Configure the
81
+
chef_solo block in the Vagrantfile with the metasploitable chef recipes that you
82
+
desire -- you can browse them in the [chef/cookbooks/metasploitable](chef/cookbooks/metasploitable)
83
+
folder. Or, add or edit your own cookbook and/or recipes there.
84
+
85
+
From the [chef/dev/ub1404](chef/dev/ub1404) directory, you can run `vagrant up`
86
+
to get a development virtual ub1404 instance. After the initial `up` build and provision,
87
+
when you edit the chef runlist or when you edit a chef recipe, run
88
+
`vagrant rsync && vagrant provision` from the same directory. For faster
89
+
development, you can comment-out recipes that you do not need to rerun -- but
90
+
even if they are all enabled, vagrant re-provisioning should not take longer than
91
+
one or two minutes. Chef aims to be idempotent, so you can rerun this command often.
92
+
93
+
Consider taking a snapshot (e.g., `vagrant snapshot save fresh`) before modifying
94
+
recipes, so that you can always return to an initial state (`vagrant restore fresh`).
95
+
If you want a _totally_ fresh snapshot, you can do the initialization with
96
+
`vagrant up --no-provision`, then take a snapshot, followed by `vagrant provision`.
0 commit comments