CurseForge · Minecraft mod
ServerConfigCleaner
Avoids syncing sensitive values in configs to the client
Quick answer
Which ServerConfigCleaner release matches 1.20.4 Forge?
ServerConfigCleaner-1.1-1.20.2-mcf.jar targets 1.20.2, 1.21, 1.20.5 with Forge. The project page does not say whether this file belongs on the client, dedicated server, or both. No extra mods listed for this file.
Where it goes
Is ServerConfigCleaner required on the client, server, or both?
The project page does not say whether this file belongs on the client, dedicated server, or both.
The source does not explicitly classify this release as client-only or server-only.
What else does ServerConfigCleaner-1.1-1.20.2-mcf.jar need?
ServerConfigCleaner-1.1-1.20.2-mcf.jar on 1.20.4 Forge. Every mod below is checked against that same setup.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add ServerConfigCleaner without breaking your instance.
Built for ServerConfigCleaner-1.1-1.20.2-mcf.jar on 1.20.4 Forge. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use ServerConfigCleaner-1.1-1.20.2-mcf.jar. It targets 1.20.2, 1.21, 1.20.5 with Forge; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
The project page does not say whether this file belongs on the client, dedicated server, or both.
- 04
Pick the file you checked
Use the “Get this file” button beside ServerConfigCleaner-1.1-1.20.2-mcf.jar. It opens that exact file at the source.
About this project
What does ServerConfigCleaner add?
NeoForge and MinecraftForge sync the entire content of all "server configs" to the client. Since this is not clear from the naming, some mods ended up putting secret values in these configs, e.g. Discord bot tokens. If you run a server using a mod with this issue, this allows any user that can join your server to access these values. This mod avoids this by removing sensitive values before the config is sent to the client.
Versions
Since this mod covers a wide range of Minecraft versions and two modloaders, the versioning scheme is somewhat complicated. See the table below for the correct version for your loader and Minecraft version.
| Loader | Minecraft version | Mod version suffix |
|---|---|---|
| MinecraftForge | 1.13.2 - 1.16.5 | -1.13.2 |
| MinecraftForge | 1.17.x - 1.20.1 | -1.17.1 |
| NeoForge | 1.20.1 | -1.17.1 |
| MinecraftForge | 1.20.2+ | -1.20.2-mcf |
| NeoForge | 1.20.2 - 1.20.5 | -1.20.2-neo |
| NeoForge | 1.21.0+ | -1.21.0-neo |
How it works
This mod works in two stages: First, it detects config options that potentially contain sensitive information during launch. Since this is done using a very rough heuristic, the options that are found have to be manually classified in the config/serverconfigcleaner-common.toml config file:
- Most of them will be false positives, harmless options that happen to match the heuristic. For example, the option
logistics.seatHostileMobsin Create would be marked as a potentially sensitive option since it contains the stringHost. These config values have to be added to thefalsePositiveslist. - Some of them may be options that contain actual sensitive values. These options have to be added to the
doNotSynclist in the same format, e.g.doNotSync = ["mymod:discord.token"].
To continue the launch, all found values have to be classified in the ServerConfigCleaner config. The mod ships with a list of known false positives and known "problematic" options (the latter not in plaintext). Therefore, you should usually not have to do anything at this stage. If you have to add values manually, see below on getting them added to the default lists.
In the second stage, the mod intercepts the config sync on the server. If a value was marked as sensitive in the config after the first stage, the value will be replaced by the default value before being synced to the client. Since the default value for sensitive options is generally a meaningless constant value provided by the developer (e.g. INSERT BOT TOKEN HERE), this can be sent to the client without revealing any secret information.
Reporting missed values
If you run into false positives that are not in the default list in the config, please create an issue listing them.
If you find any server config options that contain sensitive information and are not part of the default set of sensitive options, please do not create an issue with these options. Instead, please get in touch with either malte0811 (Discord: malte0811; e-mail available on GitHub profile) or ThatGravyBoat (Discord: thatgravyboat).
Project description from CurseForge.
Pick your setup
ServerConfigCleaner by Minecraft version and loader
Choose the version and loader you play, then open the matching release.
1.21.3
2 loader builds1.21.2
2 loader builds1.21.1
2 loader builds1.21
2 loader builds1.20.6
2 loader builds1.20.5
2 loader builds1.20.4
2 loader builds1.20.3
2 loader builds1.20.2
2 loader builds1.20.1
2 loader builds1.20
2 loader buildsShowing the newest 12 of 36 game versions. Older files are in the list below.
Check the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
ServerConfigCleaner versions and loaders
ServerConfigCleaner-1.1-1.20.2-mcf.jar
23 Dec 2024
ServerConfigCleaner-1.0-1.20.2-mcf.jar
21 Dec 2024
Looking for an older file? The official CurseForge project page is in Resources.