Files
firefrost-operations-manual/docs/infrastructure/network-diagram-2026.mmd
Claude 8ddaf768e3 feat: complete infrastructure audit and network topology map
Task #84 - Infrastructure Audit & Connectivity Map

DELIVERABLES:
- Complete audit of all 6 servers (Command Center, Ghost VPS, Billing VPS, Panel VPS, TX1, NC1)
- Port allocation registry with 90+ services documented
- Service inventory per server with Docker container mapping
- 14 game servers mapped to UUIDs and connection strings
- Connectivity map showing all server-to-server communication
- Visual network diagram (Mermaid) with complete topology
- Single points of failure identification
- Capacity planning analysis
- Disk usage monitoring recommendations

KEY FINDINGS:
- No current port conflicts detected
- Billing VPS disk usage at 70% (WARNING - monitor)
- NC1 disk usage at 66% (WARNING - monitor)
- TX1 has excellent capacity (12% usage)
- Ghost VPS port 25 blocked at provider level (known issue)
- Plane monitor container in restart loop (investigate)
- All critical services operational

AUDIT METHODOLOGY:
- SSH via Cockpit (port 9090) to all servers
- Used 'ss -tlnp' for port discovery (netstat not installed)
- Systemd service enumeration
- Docker container inventory
- Nginx configuration analysis
- Firewall rule documentation

Output files:
- docs/infrastructure/network-audit-2026.md (comprehensive 600+ line document)
- docs/infrastructure/network-diagram-2026.mmd (Mermaid visual diagram)

This audit prevents future port conflicts (like The Arbiter 3000→3001→3500 hunt)
and provides complete infrastructure visibility for capacity planning.

Signed-off-by: Chronicler #43 <claude@firefrostgaming.com>
2026-03-27 16:25:23 +00:00

177 lines
5.8 KiB
Plaintext

```mermaid
graph TB
subgraph Internet["🌐 PUBLIC INTERNET"]
Users["Users/Players"]
Discord["Discord API"]
CloudFlare["Cloudflare CDN"]
end
subgraph CommandCenter["Command Center VPS<br/>63.143.34.217 / 74.63.218.202<br/>Dallas, TX"]
Gitea["Gitea<br/>:3000"]
UptimeKuma["Uptime Kuma<br/>:3001"]
CodeServer["Code-Server<br/>:8080"]
DiscordBot["The Arbiter Bot<br/>:3500"]
Vaultwarden["Vaultwarden<br/>Docker :8001"]
NginxCC["Nginx<br/>:80/:443"]
MySQLCC["MySQL<br/>:3306"]
end
subgraph GhostVPS["Ghost VPS<br/>64.50.188.14<br/>Chicago, IL"]
Ghost["Ghost CMS<br/>:2368"]
Wiki1["Wiki.js Sub<br/>:3100"]
Wiki2["Wiki.js Staff<br/>:3101"]
Wiki3["Wiki.js Pokerole<br/>:3102"]
Nextcloud["Nextcloud<br/>PHP-FPM"]
NginxGhost["Nginx<br/>:80/:443"]
MySQLGhost["MySQL<br/>:3306"]
PostgresGhost["PostgreSQL<br/>:5432"]
RedisGhost["Redis<br/>:6379"]
end
subgraph BillingVPS["Billing VPS<br/>38.68.14.188<br/>Chicago, IL<br/>⚠️ 70% Disk"]
Paymenter["Paymenter<br/>PHP-FPM"]
Mailcow["Mailcow Stack<br/>:8080/:8443<br/>18 Containers"]
WhitelistMgr["Whitelist Mgr<br/>:5001"]
NginxBilling["Nginx<br/>:80/:443"]
MariaDBBilling["MariaDB<br/>:3306"]
end
subgraph PanelVPS["Panel VPS<br/>45.94.168.138<br/>Charlotte, NC"]
PteroPanel["Pterodactyl Panel<br/>PHP-FPM"]
NginxPanel["Nginx<br/>:80/:443"]
MariaDBPanel["MariaDB<br/>:3306"]
RedisPanel["Redis<br/>:6379"]
end
subgraph TX1["TX1 Dallas Dedicated<br/>38.68.14.26-30<br/>251GB RAM, 911GB Disk<br/>✅ 12% Usage"]
Wings1["Wings<br/>:8080/:2022"]
Plane["Plane Stack<br/>:8090<br/>20 Containers"]
Dify["Dify/Codex<br/>:3000/:5001"]
N8N["n8n<br/>:5678"]
Qdrant["Qdrant<br/>:6333"]
Ollama["Ollama AI"]
NginxTX1["Nginx<br/>:80/:443"]
subgraph GamesTX1["Game Servers - TX1"]
Game1TX["Stoneblock 4<br/>.26:25565"]
Game2TX["Society Sunlit<br/>.28:25565"]
Game3TX["All The Mons Priv<br/>.30:25565"]
Game4TX["FoundryVTT<br/>.26:30000"]
Game5TX["Ars Eclectica<br/>.26:5520"]
Game6TX["Create Plus<br/>.26:25566"]
Game7TX["Vanilla<br/>.26:25567"]
end
end
subgraph NC1["NC1 Charlotte Dedicated<br/>216.239.104.130<br/>251GB RAM, 98GB Disk<br/>⚠️ 66% Usage"]
Wings2["Wings<br/>:8080/:2022"]
MariaDBNC["MariaDB<br/>:3306"]
subgraph GamesNC1["Game Servers - NC1"]
Game1NC["ATM10<br/>:25569"]
Game2NC["Hytale<br/>:5520-5521"]
Game3NC["All of Create<br/>:25568"]
Game4NC["ATM10 Sky<br/>:25565"]
Game5NC["All Mons Pub<br/>:25566"]
Game6NC["Mythcraft 5<br/>:25567"]
end
end
%% Public Access
Users -->|HTTPS| CloudFlare
CloudFlare -->|HTTPS| NginxCC
CloudFlare -->|HTTPS| NginxGhost
CloudFlare -->|HTTPS| NginxBilling
CloudFlare -->|HTTPS| NginxPanel
CloudFlare -->|HTTPS| NginxTX1
Users -->|TCP/UDP| GamesTX1
Users -->|TCP/UDP| GamesNC1
%% Command Center Internal
NginxCC --> Gitea
NginxCC --> UptimeKuma
NginxCC --> CodeServer
NginxCC --> DiscordBot
NginxCC --> Vaultwarden
Gitea --> MySQLCC
%% Ghost VPS Internal
NginxGhost --> Ghost
NginxGhost --> Wiki1
NginxGhost --> Wiki2
NginxGhost --> Wiki3
NginxGhost --> Nextcloud
Ghost --> MySQLGhost
Wiki1 --> PostgresGhost
Wiki2 --> PostgresGhost
Wiki3 --> PostgresGhost
Ghost --> RedisGhost
Wiki1 --> RedisGhost
Wiki2 --> RedisGhost
Wiki3 --> RedisGhost
%% Billing VPS Internal
NginxBilling --> Paymenter
NginxBilling --> Mailcow
NginxBilling --> WhitelistMgr
Paymenter --> MariaDBBilling
%% Panel VPS Internal
NginxPanel --> PteroPanel
PteroPanel --> MariaDBPanel
PteroPanel --> RedisPanel
%% TX1 Internal
NginxTX1 --> Plane
NginxTX1 --> Dify
NginxTX1 --> N8N
Dify --> Qdrant
Dify --> Ollama
Wings1 --> GamesTX1
%% NC1 Internal
Wings2 --> GamesNC1
Wings2 --> MariaDBNC
%% Server to Server
PteroPanel -->|Wings API| Wings1
PteroPanel -->|Wings API| Wings2
DiscordBot -->|WebSocket/HTTPS| Discord
Paymenter -.->|Webhook Planned| DiscordBot
Paymenter -.->|API Planned| PteroPanel
WhitelistMgr -->|Panel API| PteroPanel
N8N -->|Webhooks| Discord
%% Styling
classDef vps fill:#4ECDC4,stroke:#333,stroke-width:2px,color:#000
classDef dedicated fill:#FF6B35,stroke:#333,stroke-width:3px,color:#000
classDef service fill:#A855F7,stroke:#333,stroke-width:1px,color:#fff
classDef warning fill:#FFD700,stroke:#333,stroke-width:2px,color:#000
class CommandCenter,GhostVPS,BillingVPS,PanelVPS vps
class TX1,NC1 dedicated
class Gitea,Ghost,Paymenter,PteroPanel,Wings1,Wings2,Plane,Dify service
class BillingVPS,NC1 warning
style Users fill:#90EE90,stroke:#333,stroke-width:2px
style Discord fill:#5865F2,stroke:#333,stroke-width:2px
style CloudFlare fill:#F38020,stroke:#333,stroke-width:2px
```
**Legend:**
- 🔵 Blue = VPS Servers
- 🔴 Red = Dedicated Servers (251GB RAM each)
- 🟣 Purple = Key Services
- 🟡 Yellow Border = Warning (High Disk Usage)
- ─── Solid Lines = Active Connections
- ─ ─ Dotted Lines = Planned Connections
**Key Interconnections:**
1. **Panel → Wings**: Pterodactyl management plane
2. **Discord Bot ↔ Discord**: Real-time bot communication
3. **Paymenter → Discord Bot**: Subscription automation (planned)
4. **Paymenter → Panel**: Server provisioning (planned)
5. **Whitelist Manager → Panel**: Player whitelist sync
6. **Cloudflare → All Public Services**: CDN and DDoS protection