updates to the README
This commit is contained in:
parent
1e9c94dbee
commit
c3fa8b2a47
1 changed files with 79 additions and 9 deletions
84
README.md
84
README.md
|
@ -1,20 +1,17 @@
|
||||||
# Brew Server Blocklist
|
# Brew Server Blocklist
|
||||||
|
|
||||||
Friendica publishes the server wide blocklists for other servers in the
|
Friendica publishes the server wide blocklists for other servers in the
|
||||||
fediverse. This script will collect the blocklists of servers of your
|
Fediverse. This script will collect the blocklists of servers of your
|
||||||
choice and create a merged blocklist from them that you can then import
|
choice and create a merged blocklist from them that you can then import
|
||||||
into your own Friendica server.
|
into your own Friendica server.
|
||||||
|
|
||||||
To make certain that you don't block just any instance in the fediverse
|
To make certain that you don't block just any instance in the Fediverse
|
||||||
because $somebody has it on their blocklist you assign _trust levels_ to
|
because $somebody has it on their blocklist you assign _trust levels_ to
|
||||||
the correctnes of the blocklists of the other servers. Only when a server
|
the correctness of the blocklists of the other servers. Only when a server
|
||||||
is blocked with a total trust level that is above a confidence level, it
|
is blocked with a total trust level that is above a confidence level, it
|
||||||
will be added to resulting blocklist automatically. Otherwise the user
|
will be added to resulting blocklist automatically. Otherwise the user
|
||||||
will be ask if they want to add a node to their blocklist or not.
|
will be ask if they want to add a node to their blocklist or not.
|
||||||
|
|
||||||
The entries of your own servers blocklist will always gain enough trust
|
|
||||||
so that they are added on the final blocklist again.
|
|
||||||
|
|
||||||
## Config file
|
## Config file
|
||||||
|
|
||||||
To use the script you have to create a config file. The structure of the
|
To use the script you have to create a config file. The structure of the
|
||||||
|
@ -34,13 +31,86 @@ trust = 50
|
||||||
trust = 90
|
trust = 90
|
||||||
```
|
```
|
||||||
|
|
||||||
it assignes _trust_ values to nodes in the network. The node domain names
|
it assigns _trust_ values to nodes in the network. The node domain names
|
||||||
are given in the `[]`. These are the nodes that the script will collect
|
are given in the `[]`. These are the nodes that the script will collect
|
||||||
the server blocklists from.
|
the server blocklists from.
|
||||||
|
|
||||||
Trust levels can be negative. Once their summed value does reach a value of
|
Trust levels can be negative. Once their summed value does reach a value of
|
||||||
100 the blocklist entry is trusted automatically without user interaction.
|
100 the blocklist entry is trusted automatically without user interaction.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
You can install the script with [pipx](https://github.com/pypa/pipx) by running
|
||||||
|
|
||||||
|
```
|
||||||
|
pipx install git+https://git.friendi.ca/tobias/brewserverblocklist.git
|
||||||
|
```
|
||||||
|
|
||||||
|
Assuming pipx was installed correctly the script `brewserverblocklist` is now
|
||||||
|
available on your system (or for your user) to be executed.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Creating a config file
|
||||||
|
|
||||||
|
Before you can use the script, you have to define a configuration file.
|
||||||
|
For details of the format of the file, see the section above. You might
|
||||||
|
want to enter your own Friendica node and assigning it a trust value of 100.
|
||||||
|
|
||||||
|
Trust values can have negative values. If you know an admin that has the
|
||||||
|
opposite preference on their blocklist, you can add their node and assign
|
||||||
|
a trust value of -100 to it.
|
||||||
|
|
||||||
|
An example config file (lets call it `test.config`) might look like:
|
||||||
|
|
||||||
|
```
|
||||||
|
[myfriendicanode.com]
|
||||||
|
trust = 100
|
||||||
|
|
||||||
|
[coolnode.net]
|
||||||
|
trust = 60
|
||||||
|
|
||||||
|
[nicenode.net]
|
||||||
|
trust = 40
|
||||||
|
|
||||||
|
[othernicenode.com]
|
||||||
|
trust = 30
|
||||||
|
|
||||||
|
[bullshitnode.com]
|
||||||
|
trust = -50
|
||||||
|
```
|
||||||
|
|
||||||
|
### Running the script
|
||||||
|
|
||||||
|
You have to supply the file name of the configuration file on the command
|
||||||
|
line when you run the script. This is done using the `-c` parameter.
|
||||||
|
|
||||||
|
The script will then collect all the blocklists from the Friendica nodes in
|
||||||
|
the configuration file and merge the lists. While merging, each entry in the
|
||||||
|
combined blocklist is assigned a trust value that is equal to the trust values
|
||||||
|
of the node that have the entry in their blocklist.
|
||||||
|
|
||||||
|
Say `coolnode.net` and `othernicenode.com` both have `example.com` on their
|
||||||
|
blocklists. Their combined trust level to block the node would be `60 + 30 = 90`.
|
||||||
|
This combined value is compared to the *confidence level* that by default is 100.
|
||||||
|
In this example `example.com` has a lower combined trust level then the confidence
|
||||||
|
level - so the script will ask you about your opinion - do you want to include the
|
||||||
|
entry in your new blocklist or not.
|
||||||
|
|
||||||
|
Another node is on the blocklists of `coolnode.net` and `nicenode.net` thus has
|
||||||
|
a combined trust level of 100 which is equal to the confidence level. So the
|
||||||
|
script will automatically assume that this node should be included on the new
|
||||||
|
blocklist.
|
||||||
|
|
||||||
|
If you and the admin of `bullshitnode.com` both add a node on the blocklist the
|
||||||
|
combined trust level for automatically blocking it would be `50`.
|
||||||
|
|
||||||
|
### Other parameters
|
||||||
|
|
||||||
|
* `-o filename` will cause the script to write the list into the passed file
|
||||||
|
* `-C N` will set the confidence level to the value N
|
||||||
|
* `-y` and `-n` activate the auto-mode of the script, either accepting or discarding all entries to the blocklist with a trust level smaller then the confidence level
|
||||||
|
|
||||||
## Author
|
## Author
|
||||||
|
|
||||||
* Tobias Diekershoff <tobias(dot)diekershoff(att)gmx(dot)net>
|
* Tobias Diekershoff <tobias(dot)diekershoff(att)gmx(dot)net>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue