Skip to content

Instantly share code, notes, and snippets.

@ProgrammerIn-wonderland
Last active October 5, 2022 01:11
Show Gist options
  • Save ProgrammerIn-wonderland/2f3c7d2d4b3020bc4342997067219cb9 to your computer and use it in GitHub Desktop.
Save ProgrammerIn-wonderland/2f3c7d2d4b3020bc4342997067219cb9 to your computer and use it in GitHub Desktop.
Setting up nebula on Ubuntu 22.04

Deploying Nebula Web Proxy for Free!


Initial configuration

  • Create an account at https://www.cloudflare.com/
  • Create an account at https://www.freenom.com/
  • Find a free domain name at Freenom
  • Click checkout
    • Select (12 Months @ FREE)
    • Select "Use DNS"
      • Select Use your own DNS
  • Go to cloudflare, click add new site, and enter the free domain name
  • Select "Free Plan"
  • Click continue, ignore DNS
    • Copy the name servers cloudflare gives you
  • Go back to your Freenom tab, enter in the name servers which cloudflare gave you
    • You can keep IP blank
  • Click continue
  • Click complete order
  • Go back to cloudflare tab, click "Check Nameservers"
  • Select DNS on your right bar
  • Enter in the IP of the server which will be hosting Nebula
    • Target will be @
  • Click Enable proxy (little gray cloud icon, if active its orange)
  • Select SSL/TLS in your right bar
  • Click "Flexible"

Server configuration

  • SSH into the server you'll be using, I'll assume its running Ubuntu 22.04 (though the commands are the same for debian 10+ versions, and Ubuntu versions 20.04+)
  • run
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - \ &&
sudo apt-get install -y nodejs npm
git clone https://github.com/NebulaServices/Nebula.git
cd Nebula
npm i
npm ci
sudo nohup PORT=80 node . &

Make sure your firewall is configured to let through port 80 traffic!
Note: Server will need to run cd Nebula && sudo nohup PORT=80 node . & on reboot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment