Szlaban Word mark logo

Szlaban

GitHub Actions Workflow Status Codecov GitHub Downloads (all assets, all releases)

Szlaban is a multi-functional Minecraft server security plugin. It consists of multiple modules designed to help you secure your server against unauthorised activity. Featuring extensive configuration files, you can tweak the plugin to suit your needs.

Features

  • Advanced firewall system – protect your server from undesired network traffic with a highly configurable firewall. Bundled with a sane default configuration, you can expect a moderate level of protection, straight out of the box!
  • Automatic blocking of suspicious IPs – automatically flag and block IP addresses from which suspicious activity originates.
  • Setup advisories – helps new owners configure sane defaults for their server, while pointing out any suspected configuration issues and offering one-click resolutions for all!
  • Highly customisable – the plugin is written with a modular approach at its core, so you only need to enable the modules that you want!

So, what's with the name?

Szlaban (IPA: /ˈʂla.ban/ or SHLA•ban) is a Polish word for a gate or barrier – like the ones used at car park entrances. These have the function of preventing unauthorised vehicles from entering a place, and this plugin serves a similar purpose!

Also, it ends with 'ban', which is pretty funny.

Installation

Szlaban is a PaperMC plugin. Needless to say, it will only work on Paper and its downstream forks (so not Spigot or CraftBukkit). This is intentional – bStats data revealed that about 85% of Bukkit-based servers run Paper1, and since Paper's API provides some useful features not present in the base CraftBukkit API, there was no meaningful reason to maintain support. So if you're not using Paper yet, you probably should.

In order to install Szlaban, you will need a Minecraft server running a compatible server software implementation. The following instructions are given as guidance, and may vary depending on where you host your server.

  1. Download the latest version of the plugin from GitHub releases (or your preferred plugin distribution platform)
  2. Open your server's file manager
  3. Open the plugins/ directory
  4. Upload the plugin jar that you downloaded in step 1
  5. Restart your server – Szlaban should now be loaded!

Additional Dependencies

Szlaban works best when it's installed with its recommended dependencies. Download and install the plugins listed below onto your server:

Developing

Contributing to Szlaban should be simple – just make sure you have the requirements, then follow the steps to get started!

Requirements

  • Java 21+
  • Gradle (works via wrapper)
  • ProtocolLib plugin JAR (optional: for testing)

Setup

First, clone the repository and cd into the folder.

git clone https://github.com/PiotrWey/Szlaban.git && cd Szlaban

Building

This project uses Gradle as its build system. It will resolve all dependencies automatically, so you can build the project using the following command:

./gradlew build

Testing

Tests are written using JUnit 5, and can be run using Gradle:

./gradlew test

If you would like to manually test functionality on a server, the project includes a Gradle task for this:

./gradlew runServer

Contributing

See CONTRIBUTING.md for contributor guidelines.

Szlaban has documentation! Make sure to read it if you want to contribute

Licence

This project is licensed under the GNU Lesser General Public License v3.0 with additional terms under GPL-3.0 section 7 – see LICENCE.ADDITIONAL_TERMS for details.

Footnotes

1Statistics from bStats; analysed using PiotrWey/MCSS_DataAnalysis

S
Description
A multi-functional Minecraft server security plugin.
Readme
1.3 MiB
0 Stars 2 Watchers 0 Forks
Languages
Java 100%