readme work
parent
75ef683d4f
commit
2366da694d
106
README.md
106
README.md
|
@ -24,42 +24,110 @@ Sban is a good first attempt at IP-aware bans, but it has several major flaws:
|
|||
effective way to keep them off the server.
|
||||
|
||||
BillyS's verification mod was created to deal with one particular troll on
|
||||
the BlockySurvival server. When enabled, it requires all new players to be
|
||||
verified by a player with moderator privileges before they can interact with
|
||||
the server or communicate with non-moderator players.
|
||||
the BlockySurvival server, who repeatedly got around sban by getting new IPs
|
||||
from VPNs and his regular mobile service provider. When enabled, it requires
|
||||
all new players to be verified by a player with moderator privileges before
|
||||
they can interact with the server or communicate with non-moderator players.
|
||||
|
||||
The flaws in the verification mod are
|
||||
1. Moderators are not always online to verify new players.
|
||||
2. New players come from all over the world, and may not be able to communicate
|
||||
1. Verification is all-or-nothing; either all new players require verification,
|
||||
or none of them do.
|
||||
2. Moderators are not always online to verify new players.
|
||||
3. New players come from all over the world, and may not be able to communicate
|
||||
with the moderator.
|
||||
3. New players are of all ages, and may not be able to communicate in chat at
|
||||
4. New players are of all ages, and may not be able to communicate in chat at
|
||||
all.
|
||||
|
||||
Verbena aims to provide name-based banning, as well as ip and network based
|
||||
Verbana aims to provide name-based banning, as well as ip and network based
|
||||
blocking and verification.
|
||||
1. IPs and Networks may be marked as "untrusted" - all new players from
|
||||
untrusted IPs/networks must go through verification, while other new
|
||||
players may join at will.
|
||||
2. IPs and Networks may be blocked or temporarily blocked, should the need
|
||||
2. A "verification jail" can optionally be specified, which prevents unverified
|
||||
players from getting loose on the server.
|
||||
3. IPs and Networks may be blocked or temporarily blocked, should the need
|
||||
arise.
|
||||
3. There is a three tiered privilege system: Normal players, moderators,
|
||||
and admins. Moderators may ban and verify players, but only admins have
|
||||
the ability to mark IPs and networks as untrusted. This way, player's
|
||||
personal details may be kept private. However, operators may execute queries-
|
||||
to determine if a player is associated with other banned players by IP or
|
||||
network.
|
||||
|
||||
Some features of sban that the first release of Verbana will likely lack:
|
||||
* A GUI. The sban GUI does not work particularly well anyway, and I don't know formspec. Use commands.
|
||||
* Import/export from various other ban formats. I plan to import data from sban, but I don't have a use case for the rest.
|
||||
* A GUI. The sban GUI does not work particularly well anyway, and I don't know
|
||||
formspec. Use commands.
|
||||
* Import/export from various other ban formats. I plan to import data from sban,
|
||||
but I don't have a use case for the rest. However, if someone wants to write
|
||||
a module to import from e.g. xban2, be my guest.
|
||||
|
||||
Requirements
|
||||
============
|
||||
|
||||
* Verbana must be listed as a trusted mod in minetest.conf (`secure.trusted_mods`), in order to use a sqlite database.
|
||||
* Verbana must be listed as a trusted mod in minetest.conf (`secure.trusted_mods`),
|
||||
in order to use a sqlite database.
|
||||
* lsqlite3 (SQLite3 for Lua) must be installed and accessible to minetest's Lua.
|
||||
* The easiest way I know how to do this: install luarocks, and execute `sudo luarocks --lua-version 5.1 install lsqlite3`
|
||||
* The minetest server must use IPv4 exclusively. I've made zero attempt to support IPv6.
|
||||
* The easiest way I know how to do this: install luarocks, and execute
|
||||
`sudo luarocks --lua-version 5.1 install lsqlite3`
|
||||
* The minetest server must use IPv4 exclusively. I've made zero attempt to support
|
||||
IPv6.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
--------------
|
||||
list of commands for documentation:
|
||||
|
||||
# Administration
|
||||
sban_import [<filename>]
|
||||
verification on | off
|
||||
|
||||
# General status
|
||||
reports [<timespan>=1w]
|
||||
bans [<number>=20]
|
||||
who2
|
||||
|
||||
# Player inspection
|
||||
pgrep <pattern> [<limit>=20]
|
||||
asn <player_name> | <IP>
|
||||
cluster <player_name>
|
||||
status <player_name> [<number>]
|
||||
inspect <player_name>
|
||||
ban_record <player_name>
|
||||
logins <player_name> [<number>=20]
|
||||
|
||||
# Player management
|
||||
kick <player_name> [<reason>]
|
||||
ban <player_name> [<timespan>] [<reason>]
|
||||
unban <player_name> [<reason>]
|
||||
suspect <player_name> [<reason>]
|
||||
unsuspect <player_name> [<reason>]
|
||||
verify <player_name> [<reason>]
|
||||
unverify <player_name> [<reason>]
|
||||
whitelist <player_name> [<reason>]
|
||||
unwhitelist <player_name> [<reason>]
|
||||
master <alt> <master>
|
||||
unmaster <player_name>
|
||||
|
||||
# IP inspection
|
||||
ip_inspect <IP> [<timespan>=1w]
|
||||
ip_status <IP> [<number>]
|
||||
|
||||
# IP management
|
||||
ip_block <IP> [<timespan>] [<reason>]
|
||||
ip_unblock <IP> [<reason>]
|
||||
ip_suspect <IP> [<reason>]
|
||||
ip_unsuspect <IP> [<reason>]
|
||||
ip_trust <IP> [<reason>]
|
||||
ip_untrust <IP> [<reason>]
|
||||
|
||||
# ASN inspection
|
||||
asn_inspect <ASN> [<timespan>=1w]
|
||||
asn_status <ASN> [<number>]
|
||||
asn_stats <ASN>
|
||||
|
||||
# ASN management
|
||||
asn_block <ASN> [<timespan>] [<reason>]
|
||||
asn_unblock <ASN> [<reason>]
|
||||
asn_suspect <ASN> [<reason>]
|
||||
asn_unsuspect <ASN> [<reason>]
|
||||
|
||||
# Available to all players
|
||||
report <message>
|
||||
first-login <player_name>
|
||||
|
|
Loading…
Reference in New Issue