Authentication
Xbox Live Authentication
Xbox Live authentication verifies player identities and prevents impersonation.server.properties
XUID Verification
pocketmine.yml
xbox-auth=false.
Keep
verify-xuid enabled even if you disable Xbox authentication to maintain some identity consistency.Network Security
Encryption
pocketmine.yml
Port Configuration
Inserver.properties:
Firewall Configuration
Always use a firewall to protect your server:PocketMine-MP uses UDP, not TCP. Ensure your firewall rules use the correct protocol.
Access Control
Whitelist
The whitelist allows only approved players to join:server.properties
Managing Whitelist
- Commands
- File (whitelist.json)
Operator Permissions
Operators (ops) have full server control. Manage carefully:ops.txt
Operators are stored inops.txt:
For advanced permission management, use a permissions plugin like PurePerms.
Server Console Security
Console Access
pocketmine.yml
Remote Console (RCON)
For secure remote administration, use RCON with proper authentication.PocketMine-MP doesn’t include built-in RCON. Use third-party plugins or implement SSH access with proper key authentication.
Plugin Security
Plugin Sources
Use trusted sources only
Use trusted sources only
Only download plugins from:
- Poggit (official repository)
- Verified GitHub repositories
- Trusted developer websites
- Unknown forums
- File sharing sites
- Unofficial “hacked” or “cracked” versions
Review permissions
Review permissions
Before installing, check what the plugin can do:
- File system access
- Network connections
- Command execution
- Database access
Keep plugins updated
Keep plugins updated
Regularly update plugins to receive:
- Security patches
- Bug fixes
- Compatibility updates
Remove unused plugins
Remove unused plugins
Disabled plugins still load code. Completely remove plugins you don’t use.
Plugin Data Directory
pocketmine.yml
Keep
legacy-data-dir: false for better security and data separation.File System Security
File Permissions
Set proper file permissions on Linux/Unix:Sensitive Files
Add to.gitignore:
.gitignore
Vulnerability Reporting
If you discover a security vulnerability in PocketMine-MP:Do NOT post publicly
Never report vulnerabilities on:
- GitHub Issues (public)
- Discord
- Forums
- Social media
Report privately
Use one of these methods:GitHub Security Advisories:
- Go to https://github.com/pmmp/PocketMine-MP/security
- Click “Report a vulnerability”
- Fill out the form with details
- PocketMine-MP version
- Detailed vulnerability description
- Exploitation steps
- Your GitHub username (for credit)
PocketMine-MP does not offer bug bounties, but responsible disclosure is appreciated.
Security Checklist
DDoS Protection
Server-level Protection
PocketMine-MP has limited built-in DDoS protection. For production servers:Use DDoS Protection Service
Services like:
- Cloudflare Spectrum
- TCPShield
- Path.net
- OVH Game DDoS Protection
Rate Limiting
Implement connection rate limiting:
- Firewall rules
- Plugin-based protection
- Network-level filtering
Connection Limiting
Limit connections per IP using firewall rules:iptables
Backup and Recovery
Regular Backups
Backup critical files regularly:Backup Script Example
backup.sh
Next Steps
Configuration
Review security-related configuration options
Updating
Learn how to safely update your server