Skip to content

Getting started with SecGen

Cliff, of the East edited this page Jun 17, 2022 · 11 revisions

Table of Contents

Clone the repository
Install the dependencies
Run Bundler
Running SecGen
More information

Clone the repository

The most active repository for SecGen development is here at github.com/cliffe/secgen and can be downloaded with:

git clone https://github.com/cliffe/secgen

Install the dependencies

SecGen requires the following pieces of software to run:

Ruby: https://www.ruby-lang.org/en/
Vagrant: http://www.vagrantup.com
VirtualBox: https://www.virtualbox.org
Nokogiri: http://nokogiri.org/tutorials/installing_nokogiri.html
Puppet: http://puppet.com

Example of an install on ubuntu:

sudo apt-get install ruby-dev zlib1g-dev liblzma-dev build-essential patch vagrant virtualbox

Run bundler

Some of the dependencies can be installed using ruby's bundler, a gem / version management tool. A full list of the ruby dependencies can be found in the Gemfile. Install and run bundler with the following commands:

gem install bundler  
bundle install  

Create necessary vbox directory

When creating a virtual machine, VirtualBox will need to have a file with which to generate IP addresses:

cd /etc/
sudo mkdir vbox
cd vbox
# Create a file called networks.conf within this folder that contains the following
* 0.0.0.0/0 ::/0

Running SecGen

When all software prerequisites have been installed you can run SecGen with the following command:

ruby secgen.rb run

This will run SecGen with the default scenario and will generate a randomised virtual machine.

More information

For more information on using SecGen and its arguments visit the page Command line arguments.
For information on how to generate new and custom scenarios please visit the page SecGen scenarios.