Security Configuration
Authentication & Player Security
Enable online mode
Always use online mode in production to authenticate players with Mojang.
config.yml
Configure forwarding mode
Set up secure player information forwarding to backend servers.Available modes:
config.yml
velocity- Modern, secure (recommended)bungeeguard- Token-based securitylegacy- BungeeCord compatibility (less secure)none- No forwarding (not recommended)
Store secrets in environment variables, never commit them to version control.
Generate strong secrets
Create cryptographically secure secrets for forwarding.Set as environment variable:
Network Security
Secure API endpoint
If using the HTTP API, bind to localhost or use proper authentication.For external access, use a reverse proxy with authentication:
config.yml
nginx.conf
Configure backend server addresses
Use internal network addresses for backend servers.
config.yml
Backend servers should never be directly exposed to the internet.
Performance Optimization
Optimize compression settings
Balance between bandwidth and CPU usage.Recommendations:
config.yml
- High bandwidth, limited CPU:
level: 0(no compression) - Limited bandwidth:
level: 6(higher compression) - Balanced:
level: -1(default)
Monitoring & Observability
High Availability
Configuration Validation
Test player authentication
Verify online mode and forwarding work correctly.
- Connect with a real Minecraft account
- Verify UUID is correct on backend
- Check player skin loads properly
- Test server switching
Backup & Disaster Recovery
Create rollback plan
Document steps to revert to previous version.
- Keep previous Docker image tags
- Maintain config backups
- Test rollback procedure
Pre-Launch Checklist
Before going live, verify:- Online mode is enabled
- Forwarding mode is configured with strong secret
- Rate limiting is enabled
- Backend servers are configured correctly
- Health checks are working
- Monitoring and alerting are set up
- Multiple instances are running (HA)
- Load balancer is configured
- Resource limits are set
- Debug mode is disabled
- Configuration is backed up
- Rollback procedure is documented
- Team is trained on operations
- Incident response plan is ready
Post-Deployment
Monitor for 24-48 hours
Watch metrics closely after launch:
- Player connection success rate
- Latency and performance
- Error logs
- Resource usage
Gather feedback
Monitor community channels for issues:
- Connection problems
- Performance complaints
- Feature requests
Document operations
Create runbooks for:
- Common issues and fixes
- Scaling procedures
- Update process
- Emergency procedures
Common Production Issues
Issue: Players can’t connect
Checklist:- Verify Gate is running:
docker psorkubectl get pods - Check port is open:
nc -zv <gate-ip> 25565 - Review logs for errors
- Verify firewall rules
- Check rate limiting hasn’t blocked legitimate players
Issue: Backend server connection failed
Checklist:- Verify backend server is running
- Check server address in config
- Test network connectivity from Gate to backend
- Verify forwarding is configured on backend
- Check backend server logs
Issue: Players have wrong UUIDs
Checklist:- Verify online mode is enabled on Gate
- Check forwarding mode matches backend configuration
- Ensure forwarding secret matches on all servers
- Verify backend server is in offline mode
Issue: High memory usage
Solutions:- Review compression settings
- Check for connection leaks
- Increase resource limits if needed
- Monitor for DDoS attacks
- Review quota settings
Security Incident Response
If you suspect a security breach:-
Immediate actions:
- Review access logs
- Check for unauthorized configuration changes
- Verify forwarding secrets haven’t been compromised
-
Containment:
- Rotate forwarding secrets if compromised
- Update configuration on all servers
- Review and tighten security settings
-
Recovery:
- Restore from known-good configuration
- Verify system integrity
- Monitor for continued suspicious activity
-
Post-incident:
- Document what happened
- Update security procedures
- Train team on new procedures
Next Steps
Monitoring Setup
Configure metrics, logging, and health checks
Configuration Reference
Detailed configuration options

