Before starting the installation process, make sure your domain nameservers/DNS are configured. Otherwise, you would not be able to access to the website.

Learn how to configure your domain nameservers/DNS here.

  1. Download the LeaderOS Egg:

  1. Create a New Nest:

  • Navigate to Pterodactyl Panel > Admin Control > Nests.
  • Click on the “Create New” button to initiate the nest creation process.
  • Name the new nest “LeaderOS.”
  1. Import the Bot Egg:

  • In the Nests section, locate the newly created “LeaderOS” nest.
  • Click on the “Import Egg” button.
  • Select the LeaderOS Egg JSON file.
  • Associate this egg with the “LeaderOS” nest.**
  1. Set Up a New Server for the LeaderOS Software:

  • Proceed to Pterodactyl Panel > Admin Control > Servers.
  • Click on the “Create New” button to initiate server creation.
  • Configure the necessary fields for the new server.
  • Ensure to select the “LeaderOS” nest and the LeaderOS Egg.
  • Enter your domain to “Service Variables” section.
  1. Create New Database:

  • Navigate to Pterodactyl Panel > Server > Manage > Databases.
  • Click on the “New Database” button
  • Enter database name and leave the “Connections From” field blank.
  1. Configure your Nginx Reverse Proxy:

If you are using Cloudflare, you do not need to create an SSL certificate, so you need to reverse proxy over port 80. If you are not using Cloudflare, you will need to create an SSL certificate using Certbot and reverse proxy over port 443.

If you are using Cloudflare:

  • Connect to the Pterodactyl Node via SSH.
  • Run sudo nano /etc/nginx/sites-enabled/YOURDOMAIN.COM
  • Run Edit the nginx configuration below to your specifications. Only modify the fields specified with a comment line.
  • YOUR_IP: Use the output of the following command: hostname -I | awk '{print $1}'
  • YOUR_PORT: Enter the port assigned to your server by Pterodactyl.
server {
    listen 80;
    listen [::]:80;
    server_name YOURDOMAIN.COM; # REPLACE HERE
    location / {
        proxy_pass http://YOUR_IP:YOUR_PORT; # REPLACE HERE
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

If you are not using Cloudflare:

  • Connect to the Pterodactyl Node via SSH.
  • Run sudo apt update -y
  • Run sudo apt install -y certbot
  • Run sudo apt install -y python3-certbot-nginx
  • Run certbot certonly --nginx -d YOURDOMAIN.COM
  • Run sudo crontab -e and add the line from below to the bottom of it for attempting renewal every day.
  • 0 23 * * * certbot renew --quiet --deploy-hook "systemctl restart nginx"
  • Run sudo nano /etc/nginx/sites-enabled/YOURDOMAIN.COM
  • Run Edit the nginx configuration below to your specifications. Only modify the fields specified with a comment line.
  • YOUR_IP: Use the output of the following command: hostname -I | awk '{print $1}'
  • YOUR_PORT: Enter the port assigned to your server by Pterodactyl.
server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name YOURDOMAIN.COM; # REPLACE HERE

    ssl_certificate /etc/letsencrypt/live/YOURDOMAIN.COM/fullchain.pem; # REPLACE HERE
    ssl_certificate_key /etc/letsencrypt/live/YOURDOMAIN.COM/privkey.pem; # REPLACE HERE
    ssl_session_cache shared:SSL:10m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
    ssl_prefer_server_ciphers on;


    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-NginX-Proxy true;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_pass http://YOUR_IP:YOUR_PORT; # REPLACE HERE
        proxy_ssl_session_reuse off;
        proxy_set_header Host $http_host;
        proxy_pass_header Server;
        proxy_cache_bypass $http_upgrade;
        proxy_redirect off;
    }
}
  1. Visit Your Website

  • Once you visit your website, it will direct you to the setup page for LeaderOS. Follow the guide to finish the setup.