How to Connect to Selfmade Ninja Labs with WireGuard (Mac)

Start Your journey with SNA Labs

Are you ready to connect Ninja Labs with WireGuard on your Mac? This comprehensive guide walks you through every step needed to establish a secure and seamless connection. By following these instructions, you’ll gain efficient access to Selfmade Ninja Labs, the perfect cloud lab environment for coding, development, and IT training. Whether you’re an aspiring IT professional or an experienced developer, this guide will make it easy to connect Ninja Labs with WireGuard and start exploring the possibilities.


Selfmade Ninja Labs extends that capability even further. Instead of just coding locally, you can connect directly to cloud-hosted learning environments designed for real-world IT training. Through SSH and WireGuard, your Mac becomes an entry point into SNA Labs.


SNA Labs offers a wide range of practical, cloud-based learning environments designed to build real technical skills:

  • Machine Labs for Linux and development practice
  • Challenge Labs for cybersecurity and CTF missions
  • Database and backend services for full-stack learning
  • Gamified training platforms like Spot Quiz, Code Arena, and Learn AI

Subscription Options

SNA labs supports both Free user and Premium user.

Free Plan

  • Login using a Git account
  • Access Machine Labs only through built-in VS Code Web
  • Limited features and CTF access
  • No SSH device integration

Premium Plan

  • Full access to all labs and CTFs
  • Remote access from local VS Code
  • Ability to add your own device over SSH

Both plans support getting started with Machine Labs immediately.

Connect to Selfmade Ninja Labs

Create Git Account

To get started with the labs, you must have a Git account. If you haven’t created one yet, head over to git.selfmade.ninja and set it up before continuing.

  • Fill in your information on the sign-up page and hit Sign Up.
  • You’ll get a verification email at the address you entered.
  • Open that email and follow the link to log in using your username and password for the first time.
  • Done — your Selfmade Ninja Git account is successfully activated!

Lab Access for All Users

  • Login at labs.selfmade.ninja, After you log in, you’ll land on the Labs home page.

    • Select Machine Labs
    • Open the Essentials Lab Dashboard

    • In the top-right corner, you’ll see a Deploy button. Click it.

    • A dialog box will appear showing details like the IP address and the VS Code Web domain. Just hit Confirm Deploy.

    • Wait until the state changes to Running
    • Give it a few seconds, and your Essentials Lab will start up and move into a running state. Now it’s ready for you to use.

    • Click Code in the top-right corner.
    • A dialog will appear — copy the Code Server Password.

    • Click Launch Code IDE.

    • A new browser tab opens asking for a password — paste the one you copied and submit.
    • You’re now connected to the Essentials Lab through VS Code Web.
    • You can customize the theme if you like, and start coding right away.

    You are now connected through VS Code Web.

    Lab Access for Premium Users

    Premium members can work in the Essentials Lab using either:

    • VS Code Web (already explained earlier)
    • VS Code installed locally on your system

    If you want to use your local VS Code, you must enable SSH access. That requires three things:

    • Create an SSH key
    • Upload it to your Selfmade Ninja Git account
    • Connect to the lab using WireGuard VPN

    Your system can reach the lab over SSH only after the VPN connection is active. Let’s set up everything needed to connect your local VS Code directly to the lab.

    Generate an SSH Key on Your Mac

    Before connecting your Mac to the lab, you need to create an SSH key.

    • Open Terminal
      (Use Spotlight: ⌘ + Space → type Terminal)
    • Run one of the following commands to generate your SSH key: Recommended — ED25519:
      ssh-keygen -t ed25519 -C "key-name"
    • If RSA is required:
      ssh-keygen -t rsa -b 2048 -C "key-name"

    View Your SSH Public Key

    After generating your SSH key, you must copy the public key and add it to your Git account. Use one of these commands in Terminal:

    • For ED25519:
      cat ~/.ssh/id_ed25519.pub
    • For RSA:
      cat ~/.ssh/id_rsa.pub

    The output will be a long text string — that’s your public key. Copy it and you can now add it to your Selfmade Ninja Git account.

Add SSH key to your git account

Log in to your Git account, then follow these steps:

  • Click your profile icon in the top-right corner and choose Preference.

  • In the sidebar, go to SSH Keys.
  • Select Add SSH Key.
  • Paste your copied public key into the text field.

  • Enter a label to identify the device easily.
  • Click Add key.

Your SSH key has now been added successfully.

Install WireGuard on macOS

To securely connect your Mac to SNA Labs, you must have WireGuard installed. Follow these steps:

  • Install Homebrew (if not already installed). You can get it from: Brew
  • Open Terminal and install WireGuard:
    brew install wireguard-tools
  • Verify the installation:
    wg --version
    If you see a version number, WireGuard is installed successfully.
  • No manual key generation is needed — the Labs system will handle that automatically.

WireGuard is now ready on your Mac. Let’s proceed to connect your system to SNA Labs.

The Best Part — Connecting Your Mac to SNA Labs

With everything prepared, you can now connect your Mac to the SNA Labs environment.

  • Open the Labs portal and sign in: SNA Labs

  • If you’re already logged into your Selfmade Ninja Git account, you’ll go straight to the Labs home page.
  • If not, log in using the same Git credentials you created earlier.

Once you’re inside, you can begin the final setup and get ready to work on real hands-on projects.

  • After logging into the Labs portal, go to Machine Labs.

  • From the sidebar, select ConnectivityDevices.

  • On the Devices page, click Add Device.
  • A dialog box will appear. Enter your Device Name, select the Device Type, and enable all WireGuard-related checkboxes.

  • Your device will now appear in the Devices list. Click the three dots on the right side of that device entry and choose Show Configuration.

  • You will see the option Download Tunnel File — download it.

Add the Configuration to WireGuard (macOS)

  • Open WireGuard (Spotlight: ⌘ + Space → type WireGuard → Enter)
  • Select Import Tunnel(s) from File

  • Choose the downloaded configuration file (e.g., your_device_name.conf)
  • Click Save

Your WireGuard tunnel is now added and ready to activate.

Connect with Essentials labs

When you access the Essentials Lab for the first time, it won’t be running yet.

  • Click the Dashboard button for the Essentials Lab to open its control panel.
  • In the top-right corner, click Deploy.
  • A dialog will appear with details like the IP address and VS Code Web URL — click Confirm Deploy.

  • Wait a few seconds while the lab boots up and transitions to the running state.

Once deployment is finished, you’ll see the full control panel for your Essentials Lab.

VS Code local setup

Now connect your Essentials Lab to your local VS Code:

  • In the Lab control panel, copy the SSH command shown there.
  • Open VS Code on your computer.
  • Click Open Remote Window from the bottom-left corner.

  • Select Connect to Host → Add New SSH Host.
  • Paste the SSH command you copied from the Lab.

  • VS Code will display a storage path — press Enter to confirm.
  • You’ll see a notification saying Host added!
  • Again, click Open Remote Window and choose Connect to Host.
  • Select the newly added host (your lab IP).

VS Code will open in a new window, directly connected to your Essentials Lab.

Congratulations, You’re Connected!

You’ve successfully connected to Selfmade Ninja Labs, opening doors to unlimited opportunities in coding, project development, and learning. This secure foundation is your entry point to Selfmade Ninja Lab cloud lab training for aspiring IT students, tailored to empower you in the field of IT.

Stay Tuned

For more tutorials and tips about Selfmade Ninja Lab cloud lab training for aspiring IT students, follow our blog and unlock the path to mastering cloud lab environments.

Leave a Comment

Edit Template

Share

Realted Blog >>

hosting flask application
Hosting a Flask Website via Apache Server in Selfmade Ninja Lab
Hosting a Flask Website via Apache Server [WSGI]: A Step-by-Step Guide A Step-by-Step Guide for Aspiring...
MQTTscale 5
Hosting MQTT Service in Selfmade Ninja Labs
Welcome to the Guide on Setting Up and Using MQTT in Selfmade Ninja Labs Welcome to your comprehensive...
Connect to Selfmade Ninja Labs
How to Connect to Selfmade Ninja Lab with WireGuard (Windows)
Start Your Journey with SNA Labs (Windows Edition) To begin working inside SNA Labs, the first step is...
1 2 3 7
Scroll to Top