All Projects → mback2k → smtp-dkim-signer

mback2k / smtp-dkim-signer

Licence: GPL-3.0 License
SMTP-proxy that DKIM-signs e-mails before submission to an upstream SMTP-server.

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to smtp-dkim-signer

docker-protonmail-bridge
Run ProtonMail Bridge in a docker container
Stars: ✭ 34 (+21.43%)
Mutual labels:  smtp, smtp-server
MailDemon
Smtp server for mass emailing, managing email lists and more. Built on .NET Core. Linux, MAC and Windows compatible.
Stars: ✭ 113 (+303.57%)
Mutual labels:  smtp, smtp-server
Tmail
Golang SMTP server
Stars: ✭ 251 (+796.43%)
Mutual labels:  smtp, smtp-server
Maddy
✉️ Composable all-in-one mail server.
Stars: ✭ 2,800 (+9900%)
Mutual labels:  smtp, dkim
yggmail
End-to-end encrypted email for the mesh networking age
Stars: ✭ 72 (+157.14%)
Mutual labels:  smtp, smtp-server
Magento 2 Smtp
Magento 2 SMTP Extension helps the owner of store simply install SMTP (Simple Mail Transfer Protocol) server which transmits the messages into codes or numbers.
Stars: ✭ 228 (+714.29%)
Mutual labels:  smtp, smtp-server
ControlCenter
Mirrored from GitLab! Monitoring and automation for Open Source email servers, starting with Postfix. Please do not submit issues or PRs here - join us at: https://gitlab.com/lightmeter
Stars: ✭ 88 (+214.29%)
Mutual labels:  smtp, smtp-server
Docker Postfix
Simple SMTP server / postfix null relay host for your Docker and Kubernetes containers. Based on Alpine Linux.
Stars: ✭ 163 (+482.14%)
Mutual labels:  smtp, smtp-server
postfix-relay
Postfix SMTP relay docker image
Stars: ✭ 76 (+171.43%)
Mutual labels:  dkim, smtp-server
blackhole
Blackhole is an MTA written on top of asyncio, utilising async and await statements that dumps all mail it receives to /dev/null.
Stars: ✭ 61 (+117.86%)
Mutual labels:  smtp, smtp-server
Aiosmtpd
A reimplementation of the Python stdlib smtpd.py based on asyncio.
Stars: ✭ 195 (+596.43%)
Mutual labels:  smtp, smtp-server
smtpd
SMTP server (library) for receiving emails, written in pure PHP.
Stars: ✭ 94 (+235.71%)
Mutual labels:  smtp, smtp-server
Smtpd
A Lightweight High Performance ESMTP email server
Stars: ✭ 175 (+525%)
Mutual labels:  smtp, smtp-server
Mailu
Insular email distribution - mail server as Docker images
Stars: ✭ 3,151 (+11153.57%)
Mutual labels:  smtp, dkim
Mailproxy
mailproxy is a simple SMTP proxy. It receives emails through an unencrypted, unauthenticated SMTP interface and retransmits them through a remote SMTP server that requires modern features such as encryption and/or authentication. mailproxy is primarily useful for enabling email functionality in legacy software that only supports plain SMTP.
Stars: ✭ 170 (+507.14%)
Mutual labels:  smtp, smtp-server
go-smtp-mock
SMTP mock server written on Golang. Mimic any 📤 SMTP server behavior for your test environment with fake SMTP server.
Stars: ✭ 76 (+171.43%)
Mutual labels:  smtp, smtp-server
Papercut Smtp
Papercut SMTP -- The Simple Desktop Email Server
Stars: ✭ 2,094 (+7378.57%)
Mutual labels:  smtp, smtp-server
Go Guerrilla
Mini SMTP server written in golang
Stars: ✭ 2,173 (+7660.71%)
Mutual labels:  smtp, smtp-server
SimpleKotlinMail
A simple, coroutine based Kotlin Email API for both client- and server-side projects
Stars: ✭ 56 (+100%)
Mutual labels:  smtp, smtp-server
share
A collection of libraries and tools written in Go.
Stars: ✭ 35 (+25%)
Mutual labels:  smtp, dkim

smtp-dkim-signer

This Go program is a SMTP-proxy that DKIM-signs e-mails before submission to an upstream SMTP-server.

Build Status GoDoc Go Report Card

Dependencies

Special thanks to @emersion for creating and providing the following Go libraries that are the main building blocks of this program:

Additional dependencies are the following awesome Go libraries:

Installation

You basically have two options to install this Go program package:

  1. If you have Go installed and configured on your PATH, just do the following go get inside your GOPATH to get the latest version:
go get -u github.com/mback2k/smtp-dkim-signer
  1. If you do not have Go installed and just want to use a released binary, then you can just go ahead and download a pre-compiled Linux amd64 binary from the Github releases.

Finally put the smtp-dkim-signer binary onto your PATH and make sure it is executable.

Configuration

The following YAML file is an example configuration with one virtual host:

Address: "localhost:25"
Domain: "localhost"
LetsEncrypt:
  Agreed: true
  Contact: [email protected]
  Challenge: http
  ChallengePort: 80
VirtualHosts:
  - Domain: your-domain.tld
    Upstream: "your-upstream-smtp:465"
    Selector: "your-dkim-selector"
    PrivKeyPath: "your-private-key-file" OR |
      your-private-key-data
    HeaderCan: "relaxed"
    BodyCan: "simple"
HeaderKeys:
  - "From"
  - "Reply-To"
  - "Subject"
  - "Date"
  - "To"
  - "Cc"
  - "In-Reply-To"
  - "References"
  - "Message-ID"
  - "Resent-Date"
  - "Resent-From"
  - "Resent-To"
  - "Resent-Cc"
# optional:
Rollbar:
  AccessToken: "your-rollbar-access-token"
  Environment: production

Save this file in one of the following locations and run ./smtp-dkim-signer:

  • /etc/smtp-dkim-signer/smtp-dkim-signer.yaml
  • $HOME/.smtp-dkim-signer.yaml
  • $PWD/smtp-dkim-signer.yaml

License

Copyright (C) 2018 - 2020, Marc Hoersken [email protected]

This software is licensed as described in the file LICENSE, which you should have received as part of this software distribution.

All trademarks are the property of their respective owners.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].