Digital Ocean provide free 100$ Credit to every new user for one time.
We are going to use this credits to host our ctf.
Note: You will get credits, only if you have Credit Card, International Debit Card or PayPal account.
After creating the account, go to homepage and click on Get started with a Droplet.
After this, you will get an option to choose OS. I will go for Ubuntu 18.4 (LTS) x64. Will config it to:
- 8 GB/ 4 CPUs
- 5 TB Transfer
- 160 GB SSD
After choosing the plan, choose a datacenter region. Now, create a password for root.
Then, click on Create Droplet option. You will get your IP address once all done.
Now login into the machine with ssh.
*Username: root Password:
apt update && apt upgrade
Once update & upgrade is done. We have to install docker & docker-compose.
apt install docker docker-compose
All done? Visit ctfd deployment (docs) page to proceed.
Now open tmux session by typing
tmux. Clone the ctfd repo first & then move forward.
git clone https://github.com/CTFd/CTFd.git
Move to CTFd dir and open docker-compose.yml file. Here, we have to update the secret key & workers (so that it can handle the load.)
After making changes, save & exit docker-compose.yml file. And type
docker-compose up. It will start your ctfd. This may take few minutes. All done 👍
Now, visit cloudflare website, add your website with a free plan [Basic]. Once the website is added successfully, add a record in DNS Management as follows:
*Type: A Name:
IPv4 Address: *
Just save it. Now visit your subdomain site and setup your admin account with other configurations. Now sit back and enjoy 😉