murdochite

command module
v0.0.0-...-4a512e1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 20, 2022 License: ISC Imports: 7 Imported by: 0

README

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.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
bot

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL