Skip to content

Running the StratoCyberLab on Apple Mac M1

Veronica Valeros edited this page Sep 1, 2024 · 2 revisions

Requirements

The StratoCyberLab runs using docker and docker-compose. To install Docker on Mac, follow the latest instructions at the Docker Official Page.

:~$ # Check that the docker version is >20.10
:~$ docker --version

Git is the next requirement. To install Git on Mac M1, check the Git Installation Guide.

:~$ # Check git is installed
:~$ git --version

Clone the repository

To get started, clone the repository to your favourite destination:

:~$ git clone https://github.com/stratosphereips/stratocyberlab.git
:~$ cd stratocyberlab

Build and Pull the Docker images

There are three components of the StratoCyberLab:

  1. HackLab: docker image with the tools to run tools and solve the challenges
  2. LLM Assistant: uses ollama docker image to assist in resolving the challenges and exercises
  3. Dashboard: web app to manage the challenges, access the hacklab through WebSSH, and load the LLM Assistant

Overall, make sure you have around 8-10GB of free space (3GB of docker images, and 5GB of LLM model):

:~$ # Build the docker images
:~$ docker compose build
:~$ 
:~$ # Download the external docker images
:~$ docker compose pull
:~$ 
:~$ # Check images were build. Output is only an example and can differ.
:~$ docker image ls
REPOSITORY                 TAG       IMAGE ID       CREATED         SIZE
stratocyberlab-dashboard   latest    c77be5a8a6e5   6 minutes ago   650MB
ollama/ollama              latest    9815c203ae53   18 hours ago    1.82GB
stratocyberlab-hackerlab   latest    c349febdbaad   2 days ago      294MB

Start the StratoCyberLab

We use docker compose to start the containers:

:~$ docker compose up

When the dockers are up, a banner should be shown on the terminal:

dashboard  |
dashboard  |  ____  _             _         ____      _               _          _
dashboard  | / ___|| |_ _ __ __ _| |_ ___  / ___|   _| |__   ___ _ __| |    __ _| |__
dashboard  | \___ \| __| '__/ _` | __/ _ \| |  | | | | '_ \ / _ \ '__| |   / _` | '_ \
dashboard  |  ___) | |_| | | (_| | || (_) | |__| |_| | |_) |  __/ |  | |__| (_| | |_) |
dashboard  | |____/ \__|_|  \__,_|\__\___/ \____\__, |_.__/ \___|_|  |_____\__,_|_.__/
dashboard  |                                    |___/
dashboard  |         |  RUNNING, NAVIGATE TO http://127.0.0.1/ IN YOUR BROWSER |
dashboard  |         +----------------------------------------------------------+

Accessing the StratoCyberLab Dashboard

The dashboard should be accessible at the address specified in the banner, as shown above. Upon opening the web page, you should see the dashboard. The challenges are on the left. The LLM assistant is on the right. Access the HackLab docker by clicking on the arrow at the bottom of the page. The following screenshot is illustrative and may change in future versions.

image

Hello World Challenge

To ensure things are working, head to the Hello World challenge and click on Start, and complete the submission test: image

Did we miss something?

If we miss some instructions, please open an issue or do a PR. Thanks for helping the StratoCyberLab grow and be better!