All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Sneaky Server

Sneaky Server

by adryd • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Sneaky

⚠️ Versions 1.0.11 to 1.0.13 have an oversight allowing unwhitelisted or banned players to still see MOTD and player list. This only affects servers with whitelist on. I made a mistake in adding players to the allowed list too early in the signin process. It's unlikely that this was abused on a wide scale as it still required successful authentication with Mojang (on Online-Mode servers). 1.0.14.1 is available for all affected Minecraft versions

Sneaky anonymises your server from server scanners like Copenheimer, Shodan or ServerSeeker by only showing server info to players who have previously joined.

Sneaky has other options to protect your server including disabling logs for unauthorised players, and ratelimiting the creation of new connections.

Configuration

The configuration is stored in config/sneakyserver/config.properties

hide-server-ping-data: (Default: true) Only sends server ping data to known players

hide-player-list: (Default: false) Sends server ping data to unknown players, but doesn't send a user list. Only works when "hide-server-ping-data" is false.

dont-log-unauthed-client-disconnects: (Default: false) Prevents the server from logging failed offline-mode player logins. Prevents logs when the client closes the connection. Example of a server being spammed with offline mode logins: https://www.reddit.com/r/Minecraft/comments/12ip3gd/who_is_shepan/

dont-log-unauthed-server-disconnects: (Default: false) Prevents the server from logging failed offline-mode player logins. Prevents logs when the server closes the connection

rate-limit-new-connections: (Default: true) Enables a rate limit for clients creating new connections.

new-connection-rate-limit: (Default: 7) Connection limit over 15 seconds. If a client exceeds this limit new connections will be closed.

disable-query-until-login: (Default: false) shows the server as offline before the first time a player joins

disable-legacy-query: (Default: true) disables legacy ping used by clients older than Minecraft 1.6

disable-connections-from-banned-ips: (Default: false) closes connections from banned IPs before reaching login logic. May be incompatible with BungeeCord or Velocity

Hiding ping data

Sneaky hides server info by keeping a list of IP addresses of known players and their last join date, only allowing known players to receive the real server info, and appearing as an unconfigured server with no player activity to server scanners and players who have never joined. this feature is meant to be a no compromise alternative to vanilla's hide-online-players feature, allowing members of a server to see relevant information without leaking that information to scanners or un-whitelisted players (in the case of a whitelisted server)

Before joining

Before first joining, players and server scanners see a generic, unconfigured server with no player activity

After joining

After their first join, players will see the real MOTD, server icon, and online players list

How to Install Sneaky Server (Mod)

Sneaky Server by adryd is verified for Fabric, Quilt across Minecraft versions 1.19.4, 1.20, 1.20-rc1, 1.20.1, 1.20.1-rc1, 1.20.2, 1.20.3, 1.20.4 (latest release: 1.0.19, file size: 24 KB). Follow the steps below to install it safely from ModCraft.tv:

  1. Click the Download button above and select your Minecraft version (1.19.4, 1.20, 1.20-rc1, 1.20.1, 1.20.1-rc1, 1.20.2, 1.20.3, 1.20.4) and platform (Fabric, Quilt).
  2. Make sure you have the compatible loader or environment installed for Fabric, Quilt.
  3. Move the downloaded Sneaky Server file into your Minecraft .minecraft/mods folder and launch the game.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
1.21.10
Fabric
last yr. 1
1.21.8
Fabric
last yr. 1
1.21.5
Fabric
last yr. 1
1.20.2
Fabric
last yr. 1
1.20.x
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21
Fabric
last yr. 1
1.20.x
Fabric
last yr. 1
1.20.2
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
23w32a
Fabric
last yr. 1
23w31a
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.20.x
Fabric
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.19.4
Fabric Quilt
last yr. 1
1.20.x
Fabric Quilt
last yr. 1
1.19.4
Fabric
last yr. 1
1.19.4
Fabric
last yr. 1
Update to 1.21.10
Updated for 1.21.8
  • Build for 1.21.5
  • Most features untested
  • Fix unwhitelisted users from being able to be added to AllowedIPs list. Note that this still required a succesful authentication from Mojang so scanners were unlikely to get any information.
  • Updated to 1.21
Updated to 1.20.2
  • Fix errors with disableAllPingsUntilLogin
  • Updated mappings
  • Removed dependency on access wideners
  • Fixed disableAllPingsUntilLogin
Update to 1.20.2 snapshots (UNTESTED)
  • LegacyQueryHandler was refactored
  • Change logic to decide whether to log a disconnection.
Theoretically the gameProfile should only be populated once
authorized. This needs testing.

  • Optimise IP comparison logic for rate limiting
  • Update IP stringify logic to fix issues with IPv6
  • New disable-legacy-query option. Disables legacy ping used by clients older than Minecraft 1.6
  • New disable-connections-from-banned-ips option. Prevents banned IPs from establishing a TCP connection
  • Newly generated allowed-ping-ips.csv files will allow loopback to ping. This fixes issues with some Auto Pause features.
  • Add option to disable query until first join
  • Set config for dont-log-unauthed-client-disconnects to false since there are currently no login spammers*
  • Bump default new-connection-rate-limit to 7


  • I prefer it at false because it helps admins debug why players cannot join

  • Make dont-log-unauthed-client-disconnects default to true cause of recent login spam bots
  • Add note to config file asking user to read modrinth for docs
  • Properly fix checkAllowConnection

Fixed checking if an ip is in the ratelimit hashmap for connection rate limiting

this release was made entirely on a cell phone while on a road trip so i hope it works

pulled from CI build
Oops its now a server protection suite!

  • Add configs
  • Move allowed IPs storage to config/sneakyserver
  • Add new connection rate limits
  • Add options to disable disconnection logs for unauthorised players (shepan, cuute)

Support for 1.20.1
Sneaky Server Icon
Download Sneaky Server
Select game version
Select platform