Skip to main content

Development Environment Overview

This page provides a quick overview of the tools you’ll need for HackerOps labs. Each tool has its own detailed setup guide linked below.

Tip

Recommended Order: Follow the setup guides in the order listed below for the smoothest experience.

Essential Tools Setup

  1. Ubuntu/Linux Environment - Set up your Unix/Linux environment using pre-configured VMs with VirtualBox/VMware or WSL on Windows

  2. Visual Studio Code - Install your primary code editor with SSH remote development capabilities and essential extensions for Terraform and Ansible

  3. Infrastructure Tools - Install Terraform for Infrastructure as Code and Ansible for configuration management automation

  4. Cloud Platform Setup - Configure AWS, Azure, and DigitalOcean accounts with proper CLI access and credentials

  5. Advanced Lab Tools - Install Packer for image building automation and set up a domain name for DNS automation labs (required for specific advanced labs)

Info

Setup Priority: Steps 1-4 are needed for most labs and should be completed first. Step 5 tools can be installed when you reach the specific labs that require them (typically Labs 8+ for advanced scenarios).

Quick Setup Commands

If you prefer command-line installation, here are the key commands:

macOS (Homebrew)

Terminal window
# Install essential tools
brew install git terraform ansible
brew install --cask visual-studio-code
brew install awscli azure-cli

Windows (Chocolatey)

Terminal window
# Install essential tools
choco install git terraform ansible vscode
choco install awscli azure-cli

Linux (Ubuntu/Debian)

Terminal window
# Install essential tools
sudo apt update
sudo apt install git openssh-client
# Follow individual guides for Terraform, Ansible, cloud CLIs

Workspace Setup

Create Your Lab Directory

  1. Create Workspace Directory - Run mkdir ~/hackerops-labs to create your dedicated lab workspace

  2. Navigate to Directory - Use cd ~/hackerops-labs to move into your new workspace

  3. Clone All Labs - Get all lab repositories at once with the HackerOps main repository:

    Terminal window
    git clone https://github.com/hacker-ops-class/HackerOps
    cd HackerOps
    git submodule init
    git submodule update
  4. Verify Structure - Run ls -la to confirm all lab directories (lab1-lab16) were created successfully

Tip

Efficient Setup: Using the main HackerOps repository downloads all 16 labs at once through git submodules, saving time compared to cloning each lab individually.

Verify Your Installation

  1. Check Git - Run git --version to confirm Git is installed and accessible

  2. Check Terraform - Run terraform --version to verify Terraform installation

  3. Check Ansible - Run ansible --version to confirm Ansible is working

  4. Check VS Code - Run code --version to verify VS Code command line access

Getting Help

Info

Each tool’s detailed guide includes troubleshooting sections. If you run into issues, check the specific guide for that tool.

Common Issues

  • PATH problems: Restart your terminal after installations
  • Permission errors: Use sudo on Linux/macOS, run as Administrator on Windows
  • Missing dependencies: Each guide lists prerequisites

Next Steps

  1. Start with Ubuntu setup - If you need a Linux environment, set up your VM or WSL first

  2. Install VS Code - Configure your primary editor with SSH remote development capabilities

  3. Set up Infrastructure Tools - Install Terraform and Ansible for automation

  4. Configure Cloud Platforms - Set up AWS, Azure, and DigitalOcean as needed for specific labs

  5. Begin with Lab 1 - Start your hands-on learning journey once everything is ready (all labs are now available in your HackerOps directory)

Caution

Security Reminder: Never commit API keys, passwords, or sensitive data to GitHub repositories. Each cloud setup guide includes security best practices.