README.md 2.67 KB
Newer Older
1
# Cyber Sandbox Creator
Jan Vykopal's avatar
Jan Vykopal committed
2

3
Cyber Sandbox Creator is a tool, which can generate portable input files for building lightweight virtual environments using Vagrant and Ansible from a simple YAML definition of topology. The combination of these three tools makes possible to build virtual machines connected with virtual networks even on a desktop computer.
Attila Farkas's avatar
Attila Farkas committed
4

Attila Farkas's avatar
Attila Farkas committed
5
## Installation
Attila Farkas's avatar
Attila Farkas committed
6

Jan Vykopal's avatar
Jan Vykopal committed
7
**Note:** This is just a quick guide how to install and generate files with this tool. For full description of how to prepare the host device to be able run the generated environments and how to build the virtual machines check our [wiki page](https://gitlab.ics.muni.cz/cs4eu/sandbox-creator/-/wikis/Installation-and-Usage).
Attila Farkas's avatar
Attila Farkas committed
8

Jan Vykopal's avatar
Jan Vykopal committed
9
### Linux (Ubuntu/Debian)
Attila Farkas's avatar
Attila Farkas committed
10
11
12
13
14
15
16
17

1. Install git using the command `$ sudo apt-get install git`.
2. Clone the project with `$ git clone https://gitlab.ics.muni.cz/cs4eu/sandbox-creator.git` to an arbitrary directory.
3. Navigate to the project directory (`$ cd sandbox-creator`).
4. Install pip using `$ sudo apt-get install python3-pip`.
5. Install setuptools with `$ pip3 install setuptools`.
6. Install dependencies with the command `$ pip3 install -r requirements.txt`.

Attila Farkas's avatar
Attila Farkas committed
18
### Windows 10
Attila Farkas's avatar
Attila Farkas committed
19
20
21
22

1. Install [Python 3](https://www.python.org/downloads/windows/). At the beginning of the installation mark the "Add Python to PATH" option.
2. Install [git](https://git-scm.com/downloads).
3. Clone the project with `git clone https://gitlab.ics.muni.cz/cs4eu/sandbox-creator.git` to an arbitrary folder.
Attila Farkas's avatar
Attila Farkas committed
23
24
4. Navigate to the project folder (`cd sandbox-creator`).
5. Install Python dependencies using the command `python -m pip install -r .\requirements.txt`.
Attila Farkas's avatar
Attila Farkas committed
25

Attila Farkas's avatar
Attila Farkas committed
26
## Usage
Attila Farkas's avatar
Attila Farkas committed
27

Jan Vykopal's avatar
Jan Vykopal committed
28
### Linux (Ubuntu/Debian)
Attila Farkas's avatar
Attila Farkas committed
29

30
1. After the installation simply run the command `$ python3 create.py topology.yml` to generate files.
Attila Farkas's avatar
Attila Farkas committed
31
32
2. Navigate to the newly created directory `sandbox` and run `$ vagrant up` to build the virtual environment.
3. The built environment can be deleted using the command `$ vagrant destroy -f`.
Attila Farkas's avatar
Attila Farkas committed
33

Attila Farkas's avatar
Attila Farkas committed
34
### Windows 10
Attila Farkas's avatar
Attila Farkas committed
35

36
1. Generate files using the command `python create.py --ansible_local topology.yml`.
Attila Farkas's avatar
Attila Farkas committed
37
38
2. Navigate to the newly created folder `sandbox` and run the command `vagrant up` to build the virtual environment.
3. The built environment can be deleted using the command `vagrant destroy -f`.
Attila Farkas's avatar
Attila Farkas committed
39

Attila Farkas's avatar
Attila Farkas committed
40
## Credits
Attila Farkas's avatar
Attila Farkas committed
41

42
**Cybersecurity Laboratory**\
Attila Farkas's avatar
Attila Farkas committed
43
**Faculty of Informatics**\
Attila Farkas's avatar
Attila Farkas committed
44
**Masaryk University**
Attila Farkas's avatar
Attila Farkas committed
45

Attila Farkas's avatar
Attila Farkas committed
46
**Lead developer**: Attila Farkas
Attila Farkas's avatar
Attila Farkas committed
47

Attila Farkas's avatar
Attila Farkas committed
48
**Technology lead**: Daniel Tovarňák (KYPO cyber range platform)
Attila Farkas's avatar
Attila Farkas committed
49

Attila Farkas's avatar
Attila Farkas committed
50
**Supervisor**: Jan Vykopal
Jan Vykopal's avatar
Jan Vykopal committed
51

Attila Farkas's avatar
Attila Farkas committed
52
**Contributors**:
Jan Vykopal's avatar
Jan Vykopal committed
53

Attila Farkas's avatar
Attila Farkas committed
54
- Valdemar Švábenský
55
- Kamil Andoniadis (KYPO cyber range platform)
Attila Farkas's avatar
Attila Farkas committed
56
57
58
- Michal Staník
- Zdeněk Vydra
- Adam Skrášek
Jan Vykopal's avatar
Jan Vykopal committed
59

Jan Vykopal's avatar
Jan Vykopal committed
60
61
62
## License

This project is licensed under the MIT License - see the LICENSE file for details.