Skip to main content

Pterodactyl Wings Configuration

For the Vortexus console functionality to work properly, you must configure Wings (Pterodactyl daemon) to allow connections from your WHMCS domain.

Critical Configuration

Without this configuration, the server console will not function and clients will receive CORS errors when trying to access their server console.

Understanding the Issue

When clients access the server console through WHMCS, the browser makes requests directly to Wings. By default, Wings blocks requests from external domains for security reasons.

Step 1: Locate Wings Configuration

The Wings configuration file is located at:

/etc/pterodactyl/config.yml

Step 2: Edit the Configuration

Open the configuration file:

sudo nano /etc/pterodactyl/config.yml

Step 3: Configure Allowed Origins

Find the allowed_origins section. By default, it looks like:

allowed_origins: []

Change it to include your WHMCS domain(s):

allowed_origins:
- https://your-whmcs-domain.com

Multiple Domains

If you have multiple WHMCS installations or domains, add them all:

allowed_origins:
- https://billing.example.com
- https://whmcs.example.com
- https://clients.example.com
HTTPS Required

Always use https:// in your allowed origins. HTTP origins will not work properly and are insecure.

Step 4: Save and Restart Wings

After saving the configuration file, restart the Wings service:

sudo systemctl restart wings

Verify Wings Status

Check that Wings restarted successfully:

sudo systemctl status wings

You should see:

● wings.service - Pterodactyl Wings Daemon
Loaded: loaded (/etc/systemd/system/wings.service; enabled)
Active: active (running)

Complete Configuration Example

Here's a complete allowed_origins section example:

api:
host: 0.0.0.0
port: 8080
ssl:
enabled: true
cert: /etc/letsencrypt/live/node.example.com/fullchain.pem
key: /etc/letsencrypt/live/node.example.com/privkey.pem
upload_limit: 100

allowed_origins:
- https://billing.example.com
- https://whmcs.example.com

Multiple Nodes

If you have multiple Pterodactyl nodes, you must configure allowed_origins on each node:

# On Node 1
sudo nano /etc/pterodactyl/config.yml
# Add allowed_origins
sudo systemctl restart wings

# On Node 2
sudo nano /etc/pterodactyl/config.yml
# Add allowed_origins
sudo systemctl restart wings

# Repeat for all nodes

Troubleshooting

Console Not Loading

  1. Check browser console for CORS errors
  2. Verify the domain is exactly as configured (with or without www)
  3. Ensure HTTPS is used in both the origin and WHMCS

Wings Won't Start After Changes

Check the Wings logs for errors:

sudo journalctl -u wings -f

CORS Errors Persist

  1. Clear browser cache
  2. Verify the origin URL matches exactly
  3. Check for trailing slashes (don't include them)

Security Considerations

  • Only add domains you control
  • Always use HTTPS
  • Review allowed origins periodically
  • Remove unused domains

Next Steps