gbans is intended to be a more modern & secure replacement for sourcebans / sourcebans++.
- No direct SQL queries across networks. Exposing MySQL to the internet is a very poor security practice. You can of course mitigate this with firewalls and sql accounts with ip restrictions or VPNs, but the majority of server admins will not ever do this.
- Game servers authenticate with the gban server upon startup of the plugin. Subsequent requests will use the returned authentication token.
- Communication over HTTPS
- Discord bot integration for administration & announcements.
- Built using Go & SQLite. This enables trivial deployment as its just a matter of running the binary. It has a built-in webserver that is safe to directly expose to the internet. This means its not necessary to setup MySQL, Nginx/Apache and PHP on your server.
- Non-legacy codebase that is (hopefully) not a nightmare to hack on. Sourcebans++, while updated, is still very clearly a legacy PHP codebase. It uses no framework or real conventions, Still uses globals, Mixes PHP/JS code, Uses tables for layout. I am in no way trying to put them down, they have done a good job volunteering their time over the years, But i think its time to move on from this legacy stuff.
- Import of existing sourcebans database
- Import/Export of gban databases
- 3rd party ban lists (eg: tf2_bot_detector)
- Discord integration
- Multi server support
- Global bans
- Subnet & IP bans (CIDR)
- Database support [x] Postgresql [?] MySQL, if there is demand (or pr) for it [?] Sqlite, if there is demand (or pr) for it
- Docker support
- Published official images
- ACME (Lets encrypt / Zero SSL) protocol support for automatic SSL certificates
- SourceMod Plugin
- Game server authentication
-
g_ban <player_id|steam_id> duration Reason
Ban a user -
g_unban
Unban a previously banned user -
g_kick
Kick a user -
/mod
Call for a mod
For installation, configuration and usage instruction, please see the docs directory.