letterbox

A simple SMTP to Maildir delivery agent
git clone https://www.brianlane.com/git/letterbox
Log | Files | Refs | README | LICENSE

commit 7189e33b8051873b1469a5e00cf1f85a787feb67
parent 292e145f719aca9973658e36f8d63875099d61ec
Author: Brian C. Lane <bcl@brianlane.com>
Date:   Tue, 31 Dec 2019 09:31:56 -0800

Add README.md

Diffstat:
AREADME.md | 33+++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+), 0 deletions(-)

diff --git a/README.md b/README.md @@ -0,0 +1,33 @@ +# letterbox - SMTP to Maildir delivery agent + +This is a simple Go program that accepts SMTP connections and delivers mail to +a per-user maildir directory. I use it to gather reports from various services +on my LAN without needing to setup postfix or some other more complex MTA. + + Usage of letterbox: + -config string + Path to configutation file (default "letterbox.toml") + -host string + Host IP or name to bind to + -maildirs string + Path to the top level of the user Maildirs (default "/var/spool/maildirs") + -port int + Port to bind to (default 25) + +The configuration file is written using +[TOML](https://github.com/toml-lang/toml). You must specify at least one +host/network and one email otherwise delivery will fail. For example: + + hosts = ["192.168.1.0/24", "127.0.0.1", "logger.mydomain.com"] + emails = ["root@mydomain.com", "user@another.com"] + +If the connection is not from an allowed host the connection will be refused. +Destination emails must be listed in the `emails` list. The user portion of the +email will be used to create a new maildir under the `-maildirs` path. For +example, sending an email to user@another.com will create a new maildir at +`/var/spool/maildirs/user`. + +# WARNING + +This code is not meant to be run on the open network. Make sure it is protected behind a firewall, +and is running as an un-privileged user. *Never* run it as root.