Skip to content
madebygps edited this page Jun 15, 2026 · 4 revisions

Frequently Asked Questions (FAQ)

This page covers the most common issues learners hit while deploying and completing the Linux CTF. Use the section links to jump to your problem.


Connecting via SSH

I get "Permission denied" or "publickey" when connecting

Most SSH problems come down to four things:

  1. Wait for setup to finish. After terraform apply completes, the VM still runs a first-boot setup script. Wait 2-3 minutes before connecting.
  2. Use the right username. Always connect as ctf_user — not ubuntu, ec2-user, root, or your local username.
  3. Use the right password. The password is CTFpassword123! (case-sensitive, including the !).
  4. Use the public IP from Terraform. Run terraform output and use the printed public IP.

Connection format:

ssh ctf_user@<PUBLIC_IP>

It still will not connect

  • Confirm the VM is running in your cloud provider's console.
  • If you are on a corporate network or VPN, port 22 may be blocked — try a different network.
  • Confirm your security group / firewall rule allows inbound SSH (the Terraform config sets this up by default).

Using the verify command

verify: command not found

The setup script has not finished installing the verify tool yet, or your shell session started before it completed. Wait a minute, then reconnect via SSH and try again.

How do I submit a flag?

verify <challenge_number> CTF{your_flag_here}

For example: verify 1 CTF{example_value}. You must include the full CTF{...} wrapper.

Other useful verify commands

Command What it does
verify progress Show your completion progress
verify list List all challenges and their status
verify hint <num> Get a hint for a challenge
verify export <github_username> Export your completion token

Progress and flags

My progress is stuck (e.g. 17/18) even though I solved everything

You probably skipped the example flag. Run this first:

verify 0 CTF{example}

Flag 0 is the example and counts toward your total. Many "stuck at 17/18" reports are fixed by submitting it.

I found the correct flag but verify says it is wrong

  • Make sure the flag format is exactly CTF{...} with no extra spaces before or after.
  • Copy-paste the flag rather than retyping it to avoid typos.
  • Run verify list to confirm which challenge the flag belongs to.

Two challenges seem to share the same flag

Each lab instance generates its own flags. If two look identical, redeploy the lab so a fresh set is generated, then re-run the challenges.


Certificate and token export

My token is rejected on learntocloud.guide

  • Generate a fresh token with verify export <your_github_username> and copy the entire string.
  • Make sure you completed and verified all challenges, including the example flag (verify 0 CTF{example}).
  • If verification on the site still errors, note your GitHub username and open an issue using the Verify / Certificate issue template.

Terraform deployment

Make sure Terraform is current

Install Terraform 1.9.0 or higher. If you hit a provider error, run:

terraform init -upgrade

Common Terraform errors

Error Fix
SKU / instance type not supported in region Try a different region or VM size. The instance size is configurable.
Quota / limit exceeded Check your cloud provider's quota dashboard and request an increase or pick a smaller size.
null_resource.wait_for_setup takes several minutes This is expected — setup runs on first boot. If it times out, SSH in manually; setup may still be finishing.
Provider version incompatible Run terraform init -upgrade.

Provider-specific notes

AWS

  • Configure credentials with the AWS CLI.
  • Confirm your IAM user has permission to create EC2, VPC, and related resources.
  • Confirm the instance type is available in your chosen region.

Azure

  • Make sure you have an active subscription and the Azure CLI installed and logged in (az login).
  • Student and trial subscriptions often restrict regions and VM sizes — if you hit a SKU error, try a different region or size.

GCP

  • Make sure you have the gcloud CLI installed and authenticated, and a project selected.
  • Confirm the machine type is available in your chosen zone.
  • Free-tier and organization policies can restrict regions/zones and machine types.

Where to get more help

  • Setup or deployment bug? Open a GitHub issue using the most specific template (SSH, Terraform, or Verify). Include your full error output.
  • Challenge questions or feature ideas? Post in Community Discussions so others can benefit and the maintainers can help without spoiling answers.
  • Always make sure your local repo is up to date: git pull.