# Whitelist Manager - Prerequisites **Task:** Whitelist Manager Web Dashboard **Document Type:** Prerequisites Checklist **Status:** ACTIVE **Last Updated:** 2026-02-16 --- ## Before You Begin This checklist covers everything you need to gather/prepare BEFORE starting the deployment. --- ## ✅ PREREQUISITE CHECKLIST ### 1. Pterodactyl Panel Access - [ ] **Panel URL confirmed:** `________________________` - Likely: `https://panel.firefrostgaming.com` or similar - [ ] **API Key generated** - Log into Pterodactyl panel - Navigate to: Account Settings → API Credentials - Create new key with description: "Whitelist Manager" - Permissions needed: - ✅ Read server details - ✅ Send console commands - ✅ Access server variables (if whitelist enforcement is a variable) - [ ] **API key tested** ```bash curl -H "Authorization: Bearer YOUR_API_KEY" \ https://panel.firefrostgaming.com/api/client ``` - Should return your account details (confirms key works) - [ ] **API key stored securely** - DO NOT commit to Git - Store in `.env` file (will create during deployment) - Backup in Vaultwarden after deployment --- ### 2. Ghost VPS Access - [ ] **SSH credentials obtained** - IP address: `________________________` - Username: root (or other) - SSH key or password access - [ ] **SSH access verified** ```bash ssh root@[ghost-vps-ip] ``` - Can successfully connect - [ ] **Server requirements met** - [ ] Python 3.9+ installed - [ ] Nginx installed and running - [ ] Port 5001 available (internal app port) - [ ] Sufficient disk space (≥1GB free) - [ ] Sufficient RAM (≥512MB free) - [ ] **Nginx status confirmed** ```bash systemctl status nginx ``` - Should be active and running --- ### 3. DNS Configuration - [ ] **DNS provider access confirmed** - Cloudflare, Route53, or other - Can create/modify DNS records - [ ] **A Record to create:** - **Name:** `whitelist.firefrostgaming.com` - **Type:** A - **Value:** [Ghost VPS IP Address] - **TTL:** 300 (5 minutes for testing, increase after deployment) - **Proxy:** Off (for initial setup) - [ ] **Ghost VPS IP address confirmed:** `________________________` --- ### 4. Whitelist Enforcement Method **Determine how Minecraft whitelist enforcement works on your servers:** - [ ] **Option A: Console Commands** (Recommended) - `/whitelist on` to enable - `/whitelist off` to disable - No server restart required - **Check:** Test on one server to confirm - [ ] **Option B: server.properties** - `white-list=true/false` in config file - Requires server restart to apply - More complex to automate - [ ] **Option C: Pterodactyl Startup Variable** - Whitelist enabled/disabled via panel variable - Check Pterodactyl server settings **Confirmed method:** ________________________ --- ### 5. Authentication - [ ] **Admin username chosen:** `________________________` - Recommendation: Use same username as Wiki.js Staff for consistency - [ ] **Admin password chosen:** `________________________` - Strong password (16+ characters) - Mix of letters, numbers, symbols - Store in password manager - [ ] **Additional staff users identified** (if needed): - User 1: `________________________` - User 2: `________________________` - User 3: `________________________` - Note: MVP supports only one admin user; multi-user is Phase 2 --- ### 6. Server List Verification **Confirm these 11 Minecraft servers are correct:** **Texas Node (TX1):** - [ ] Reclamation - `1eb33479-a6bc-4e8f-b64d-d1e4bfa0a8b4` - [ ] Stoneblock 4 - `a0efbfe8-4b97-4a90-869d-ffe6d3072bd5` - [ ] Society: Sunlit Valley - `9310d0a6-62a6-4fe6-82c4-eb483dc68876` - [ ] Vanilla 1.21.11 - `3bed1bda-f648-4630-801a-fe9f2e3d3f27` - [ ] All The Mons - `668a5220-7e72-4379-9165-bdbb84bc9806` **North Carolina Node (NC1):** - [ ] The Ember Project - `124f9060-58a7-457a-b2cf-b4024fce2951` - [ ] Minecolonies: Create and Conquer - `a14201d2-83b2-44e6-ae48-e6c4cbc56f24` - [ ] All The Mods 10 - `82e63949-8fbf-4a44-b32a-53324e8492bf` - [ ] Homestead - `2f85d4ef-aa49-4dd6-b448-beb3fca1db12` - [ ] EMC Subterra Tech - `09a95f38-9f8c-404a-9557-3a7c44258223` **Excluded (Non-Minecraft):** - [ ] FoundryVTT (TX) - `7d8f15a0-4ee7-4dd6-85dc-ab42966f733d` - EXCLUDED - [ ] Hytale (NC) - `13c80cb8-f6f8-4bfe-9cdb-823d7e951584` - EXCLUDED --- ### 7. Network & Firewall - [ ] **Ghost VPS firewall rules checked** - Port 80 (HTTP) open - Port 443 (HTTPS) open - Port 5001 does NOT need to be publicly accessible (internal only) - [ ] **No port conflicts on 5001** ```bash # On Ghost VPS: netstat -tuln | grep 5001 ``` - Should return nothing (port available) --- ### 8. SSL Certificate Preparation - [ ] **Certbot installed on Ghost VPS** ```bash certbot --version ``` - If not installed: `apt install certbot python3-certbot-nginx` - [ ] **Email for Let's Encrypt notifications:** `________________________` - Used for certificate expiration warnings - Recommendation: Use admin email --- ## 🎯 PRE-FLIGHT SUMMARY **When all checkboxes above are complete, you are ready to begin deployment.** **Time estimate:** 5-10 minutes to gather all prerequisites **Next step:** Begin deployment Phase 1 (Infrastructure Setup) See: `deployment-plan.md` for complete deployment procedure --- ## 🚨 TROUBLESHOOTING PREREQUISITES ### Issue: Can't generate Pterodactyl API key - Verify you have admin access to Pterodactyl panel - Check with Meg if panel access needs updating - Alternative: Have Meg generate key and provide securely ### Issue: Don't have Ghost VPS access - Verify SSH key is added to authorized_keys - Check firewall isn't blocking SSH (port 22) - Alternative: Work from Command Center if Ghost VPS unavailable ### Issue: DNS changes not propagating - Wait 5-10 minutes for TTL expiration - Test with: `nslookup whitelist.firefrostgaming.com` - Clear local DNS cache if needed - Try from different network/device ### Issue: Can't determine whitelist enforcement method - SSH to one Minecraft server - Try: `/whitelist on` in console - Check `server.properties` file for `white-list=` setting - Test on Vanilla 1.21.11 (safest server for testing) --- ## 📋 QUICK REFERENCE **Information to have ready during deployment:** 1. Pterodactyl panel URL 2. Pterodactyl API key (starts with `ptlc_...`) 3. Ghost VPS IP address 4. Admin username and password 5. Email for SSL certificate 6. Whitelist enforcement method (console/properties/variable) **Save this info in:** `/tmp/whitelist-manager-prereqs.txt` for easy access --- **Fire + Frost + Foundation = Where Love Builds Legacy** 💙🔥❄️ --- **Document Status:** ACTIVE **Ready to Deploy:** When all checkboxes complete