> For the complete documentation index, see [llms.txt](https://documentation.hak5.org/cloud-c2/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.hak5.org/cloud-c2/guides/quick-deployment-on-an-amazon-lightsail-vps.md).

# Quick Deployment on an Amazon Lightsail VPS

{% hint style="info" %}
This guide shows a quick way to get setup with Cloud C² on Amazon Lightsail. It's not comprehensive, and it assumes you're savvy in the cloud & command line.
{% endhint %}

## VIDEO GUIDE

{% embed url="<https://youtu.be/TIpx_ENurLY>" %}

## HOW DO I GET CLOUD C²

Go to <https://shop.hak5.org/cart/add?id=12992425820273> and checkout to get a license key emailed to you. Then go to <https://downloads.hak5.org/cloudc2> to download the latest – or just run the code below.

## I ALREADY HAVE A VPS

Run this code:

```bash
wget https://downloads.hak5.org/api/devices/cloudc2/firmwares/latest -q -O c2.zip && unzip -qq c2.zip && \
IP=$(curl -s https://checkip.amazonaws.com) && \
echo "Copy the below setup token and browse to http://$IP:8080" && \
./c2-*_amd64_linux -hostname $IP
```

Obviously it assumes you're running a 64-bit Linux server, and it's hitting Amazon to figure out the external IP address. Adjust as necessary. Requires unzip to be installed, so apt install unzip if it isn't.

## AMAZON LIGHTSAIL QUICK SETUP

Amazon Lightsail is an easy, inexpensive VPS – perfect for quick development work. Instances start at $3.50/month (at time of writing: Q2-2020). You will need to go through a few extra steps to add a free static IP address and firewall rules, but other than that it's pretty straight forward.

Go to <https://lightsail.aws.amazon.com/ls/webapp/create/instance> and follow the prompts.&#x20;

![](/files/a1lw1UYD83C07CKb9ZiZ)

We prefer Linux, OS Only, Ubuntu 18.04 LTS in this example.

{% hint style="info" %}
At time of writing, Ubuntu 18.04 LTS was the latest long-term-support version of Ubuntu. We always recommend using the latest stable OS version.
{% endhint %}

![](/files/9ryoAOm7KRSeEns03rjU)

We prefer the least expensive one and name it something memorable. Adjust as necessary.

![](/files/uf7Vr9VX0TpAlXTqLZwu)

Once your instance has been created, click into the **Networking** tab from the **Dashboard**

![](/files/Acf13PPCYYttpVkmdGI1)

Click **Create** static IP

![](/files/nSKhE96WzuTqJA5qRVs2)

Attach the IP to your instance and click Create

![](/files/ECptEszE1cHb0uZNPPIY)

Click into the instances dashboard and navigate to its **Networking** tab

![](/files/wAu67iRWBmPyHuyuBEVN)

Add TCP ports 443, 2022 and 8080 and click **Save**. The usual 22 and 80 should already be setup.

![](/files/7fZ4KbCKecSp2HxAtwPU)

From the instances dashboard, navigate to the Connect tab and click the big Connect using SSH button.

If you've gone with the Ubuntu 18.04 LTS option, you'll need to install unzip. For some reason it isn't installed by default. From the terminal, run:

```
sudo apt install unzip
```

Finally, run the code snippet above and follow the on screen instructions.

## CLOUD C² IS RUNNING. NOW WHAT?

When you first navigate to the URL presented from the terminal, you'll be prompted to provide your token (printed in the terminal), your license key (emailed to you) and setup an account.&#x20;

![](/files/17Z9rYhP9TSAihiGohfV)

Then you'll be prompted to login.

![](/files/jtGfCQUv9fQYXDp57Lju)

From the dashboard, navigate to the devices tab.

![](/files/yBe3kByI8i6eGeLhCPQV)

From the devices tab, click Add Device

![](/files/kwPDZ2g4yj5wmlpHjFvj)

Give the device a name and select its device type, then click Add Device.

![](/files/pDMd9PGzhkW32ZsIjhlo)

Click on the device name from the listing to open the device tab.

![](/files/kgto1lNyXQ4F3B2TQpfC)

Click Setup, then Download to download the device provisioning file – `device.config`

See this article on [Adding Devices to Cloud C²](/cloud-c2/getting-started/adding-devices.md) for more details.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.hak5.org/cloud-c2/guides/quick-deployment-on-an-amazon-lightsail-vps.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
