Security Guide

Game Server Security: 10 Best Practices to Protect Your Community

By Witchly Team · · 9 min read

Game Server Security: 10 Best Practices to Protect Your Community

Running a game server means you’re responsible for the experience — and the security — of everyone who plays on it. A compromised server can mean lost worlds, stolen player data, griefed builds, or a community that loses trust and never comes back.

Security doesn’t have to be complicated. These ten practices cover the most impactful things you can do to protect your server and your community.

1. Use Strong, Unique Passwords

This sounds basic because it is. It’s also the most common security failure.

Your server has multiple access points that need strong passwords:

  • Server panel login: Your hosting control panel
  • SFTP credentials: File transfer access to your server
  • RCON password: Remote console access (especially critical for Rust)
  • Admin/OP passwords: In-game administrative access
  • Database passwords: If you’re running plugins with database backends

Each of these should use a different, randomly generated password. A password manager (Bitwarden, 1Password, KeePass) makes this manageable.

Bad: minecraft123, admin, password, or the same password you use for your email.

Good: A randomly generated 20+ character password from a password manager. You’ll never type it manually — you’ll copy-paste it.

Critical: If a staff member leaves your team, change every password they had access to. Immediately. Not “when you get around to it.” Immediately.

2. Implement a Whitelist for Private Servers

If your server is meant for a specific community — friends, clan members, a Discord community — use a whitelist. A whitelist means only approved players can connect. Everyone else is rejected at the door.

Minecraft: Enable in server.properties with white-list=true. Manage with /whitelist add PlayerName.

Rust: Use the whitelist plugin with Oxide/uMod. Add players by Steam ID.

Palworld: Set a ServerPassword in PalWorldSettings.ini to restrict access.

Whitelists eliminate an entire category of problems: random griefers, bot attacks, uninvited players with malicious intent. The slight inconvenience of manually adding players is worth the protection.

For public servers where a whitelist isn’t practical, invest in good moderation tools and active staff instead.

3. Vet Every Plugin and Mod Before Installing

Plugins and mods run code on your server with full access to your files, network, and data. A malicious plugin can:

  • Delete your world files
  • Steal your RCON or panel credentials
  • Install a backdoor for future access
  • Exfiltrate player data
  • Use your server for cryptocurrency mining or attacking other servers

How to vet plugins:

  • Download only from official sources: CurseForge, Modrinth, SpigotMC, Hangar, or uMod. Never from random Discord servers, unknown websites, or “leaked” premium plugin repositories.
  • Check the author’s reputation: How long have they been publishing plugins? Do they have other well-known plugins? Is there an active community around their work?
  • Read the source code: If the plugin is open source (GitHub/GitLab), review the code before installing. Look for network calls to unknown servers, file system operations outside the plugin’s expected scope, or obfuscated code.
  • Check when it was last updated: Abandoned plugins may have unpatched vulnerabilities.
  • Read reviews and comments: Other server owners often report malicious behavior in plugin reviews.

Red flags:

  • Plugin requires permissions it shouldn’t need (why does a chat plugin need file system access?)
  • Obfuscated code with no open-source repository
  • Plugin sends data to external servers without clear documentation
  • “Free” versions of premium plugins from unofficial sources — these are often injected with malware

4. Secure RCON Access

RCON (Remote Console) gives unrestricted command-line access to your server. Anyone with RCON access can execute any command — banning players, deleting worlds, changing configurations, or worse.

Best practices:

  • Use a strong, unique RCON password (see Practice 1)
  • Change the default RCON port if possible (many bots scan for the default port)
  • Restrict RCON access to specific IP addresses if your hosting panel supports it
  • Never share RCON credentials with moderators — they should have in-game permissions only
  • If using a web-based RCON tool, ensure it uses HTTPS
  • Monitor RCON logs for unauthorized access attempts

For Rust specifically, RCON is the primary administration interface. Treat the RCON password with the same care as your hosting panel password.

5. Maintain Regular Backups

Backups aren’t just a convenience feature — they’re your last line of defense against every category of disaster: hardware failure, accidental deletion, griefing, ransomware, plugin conflicts, corrupted updates, and admin mistakes.

Backup strategy:

  • Automated daily backups: Configure through your hosting panel. Most quality hosts, including Witchly, offer automated backup scheduling.
  • Pre-change manual backups: Before installing new plugins, updating server software, or making significant configuration changes, create a manual backup.
  • Off-site copies: Periodically download backups to your local machine or a separate cloud storage service. If your hosting provider has a catastrophic failure, on-server backups are lost too.
  • Test your backups: A backup you’ve never tested restoring is a backup you can’t trust. Periodically restore a backup to a test environment to verify it works.
  • Retention policy: Keep daily backups for 7-14 days, weekly backups for a month, and monthly backups for longer-term archiving. This gives you multiple restore points at different granularities.

6. Keep Everything Updated

Outdated software is the most common attack vector. When a vulnerability is discovered and patched, the patch notes effectively announce the vulnerability to the world. Anyone running the old version is now a known target.

What to keep updated:

  • Server software: Minecraft server jars (Paper, Purpur, Forge), Rust server, Palworld server
  • Plugins and mods: Check for updates weekly. Many plugins patch security issues silently.
  • Mod loaders: Forge, Fabric, NeoForge, Oxide/uMod
  • Your hosting panel account: Enable two-factor authentication if available
  • Java/runtime: Newer Java versions include security patches. Don’t run Java 8 if your server supports Java 17+.

Update process:

  1. Create a backup
  2. Read the changelog for breaking changes
  3. Apply the update
  4. Test core functionality
  5. Monitor for issues over the next 24 hours

Don’t update blindly — read changelogs. But don’t delay updates indefinitely either. Security patches should be applied within days, not months.

7. Monitor Server Logs

Logs tell you what’s happening on your server. Unusual activity — repeated login failures, commands from unexpected sources, unusual file access patterns — often appears in logs before it becomes a visible problem.

What to watch for:

  • Repeated failed login attempts (brute force attacks)
  • Commands executed by players who shouldn’t have permissions
  • Plugin errors that might indicate exploitation attempts
  • Unusual player behavior patterns (teleporting, flying, inventory anomalies)
  • Network connections to unexpected external addresses

You don’t need to read logs in real-time. Set aside 5 minutes weekly to scan recent logs for anomalies. If your hosting panel offers log search or filtering, use it to find error messages and warnings.

For larger servers, consider a Discord webhook that alerts you to critical events — failed admin login attempts, server crashes, or plugin errors.

8. Be Aware of DDoS Attacks

DDoS (Distributed Denial of Service) attacks are unfortunately common against game servers. Attackers flood your server’s network connection with fake traffic, making it unreachable for legitimate players.

What you need to know:

  • You can’t prevent DDoS attacks at the server level: No plugin, configuration, or firewall rule on your game server will stop a volumetric DDoS attack. Mitigation happens at the network infrastructure level.
  • Your hosting provider is your first line of defense: Quality hosts include DDoS mitigation in their infrastructure. Budget hosts often don’t.
  • Don’t share your server’s direct IP if possible: Use a domain name and proxy where appropriate (though game servers typically need direct TCP/UDP connections).
  • Have a response plan: Know how to contact your host’s support during an attack. Know the expected mitigation time. Communicate with your community during downtime.

If you’re being targeted:

  1. Contact your hosting provider immediately
  2. Inform your community via Discord or your website
  3. Don’t engage with the attacker — attention is often what they want
  4. Document the attack for your host’s abuse team
  5. Consider whether the attack correlates with a specific event (banning a player, server conflict) to identify potential sources

9. Manage Permissions Carefully

The principle of least privilege: give people the minimum permissions they need to do their job. Nothing more.

Permission tiers:

  • Owner/Admin: Full access to everything. This should be you and maybe one other trusted person. Not five people. Not your friend who joined last week.
  • Senior Moderator: In-game moderation tools (kick, mute, tempban, teleport for investigation). No file access, no RCON, no panel access.
  • Moderator: Basic moderation (mute, kick, teleport). Cannot ban or access sensitive commands.
  • Helper/Trial Mod: Chat moderation only. Mute and report to senior staff.
  • Player: Default permissions. No elevated access.

Common permission mistakes:

  • Giving OP (operator) status in Minecraft instead of using a permission plugin. OP grants all permissions — there’s no granularity.
  • Giving panel access to moderators. They don’t need it for moderation.
  • Not revoking permissions when staff step down or are removed.
  • Sharing admin accounts instead of creating individual accounts with appropriate permissions.

Use a proper permission plugin (LuckPerms for Minecraft, Oxide permission groups for Rust) to create role-based access control. Every staff member should have their own account with permissions matching their role.

10. Secure Your Own Accounts

You are the highest-value target. If an attacker compromises your personal accounts, they own your server.

Protect yourself:

  • Enable 2FA everywhere: Your hosting panel, email, Discord, GitHub, any service connected to your server. Use an authenticator app (Google Authenticator, Authy), not SMS-based 2FA.
  • Use unique passwords: Your hosting panel password should not be the same as your Discord password, email password, or any other password. Use a password manager.
  • Secure your email: Your email is the recovery method for most accounts. If your email is compromised, everything linked to it is at risk. Use a strong password and 2FA on your email account.
  • Be skeptical of DMs: Social engineering attacks target server owners. “Hey, I found a security vulnerability in your server” followed by a link is a classic phishing attempt. Verify before clicking.
  • Don’t run unknown executables: Files sent via Discord DMs, plugin “test builds” from unknown sources, and “server tools” from untrusted websites can contain malware that steals credentials.
  • Use separate accounts for administration: If possible, don’t use your personal Discord account for server RCON tools or automated systems. Create a dedicated admin account.

Bringing It All Together

Security isn’t a one-time setup — it’s an ongoing practice. Implement these ten practices and you’ll be ahead of the vast majority of game server operators.

Prioritize them in this order if you’re starting from scratch:

  1. Strong, unique passwords (immediate, free, high impact)
  2. Regular backups (immediate, usually free with your host)
  3. Keep software updated (ongoing, free, high impact)
  4. Permission management (one-time setup, free)
  5. Plugin vetting (ongoing habit, free)
  6. Account security / 2FA (immediate, free)
  7. Whitelist or access control (one-time setup)
  8. RCON security (one-time setup)
  9. Log monitoring (ongoing habit)
  10. DDoS awareness (understanding, choose a host with protection)

None of these require advanced technical knowledge. They require attention and discipline. The server owners who take security seriously are the ones whose communities survive and thrive long-term.

On Witchly, we handle infrastructure-level security — firewall protection, server isolation, automated backups, and secure panel access. But the practices above are your responsibility as a server owner, regardless of which host you use. A secure host with an insecure admin is still vulnerable.