Skip to content

Libera-Chat/murdochite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Murdochite

Murdochite scans incoming Matrix connections and verifies that they do not allow unverified registration.

Building

Generally it's suggested to set the version when building: go build go build -ldflags="-X main.Version='$(git rev-parse --short HEAD)'" -trimpath -o murdochite main.go

Usage

Murdochite has a builtin help system that will allow you to get information on most commands, help [command] is the easy way to get access to that.

Simple Usage

Once connected, murdochite will pretty much just do its own thing, logging things and executing configured actions.

If you want to manually scan something, use the scan command. Results are sent to the bots log channel.

Configuration

Murdochite uses a toml file in its working directory for configuration. You can find an example config in config.example.toml.

Actions

Murdochite has three action types, all of which share a standard configuration

Name Type Description
type string The type of action to use
message string The message to be passed along for this action (see below)
duration int The number of things enacted by this action (see below)
ignore_sasl bool Whether or not to skip SASLed users (ie, dont ban them)
enabled bool Startup enable state of this action

X-Line action (xline)

The X-Line action sets an X-Line on *\@homeserver.tld. Which effectively disables use of this homeserver entirely.

K-Line action (kline)

The K-Line action sets a K-Line on the connecting user's IP. This is slightly nicer than the X-Line action as it allows already connected users (or users that use SASL) though.

Warn action (warn)

The Warn action allows you to log a message to the log channel when a connecting user is coming from an unverified server. It uses golang templates in its message.

There are two special functions available to the template, generateKLineTarget(ident, host) and generateXLineTarget(homeserver_name). These generate sane targets for the connecting user.

when executing the template, . is a combination of the ActionArgs and ActionConfig structs, with all fields available.

About

Matrix Open Proxy Monitor

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages