mail-relay

0.1.1 • Public • Published

node-mail-relay

use gmail with your custom domain for free

  • SMTP server on port 587 for outgoing emails (set up your mail client to use this as a custom SMTP server)
  • SMTP server on port 25 for incoming emails (forwards emails to you based on MAIL_MAP)

warning

This stuff is experimental. Use with caution.

install

$ npm i -g mail-relay

usage

$ mail-relay

In order to bind to port 25 and 587, you need to be root or you have to add CAP_NET_BIND_SERVICE to mail-relay. If you are concerned, run it as root, and drop privileges after start with SETUID.

A full configuration example:

$ AUTH_USER=foo \
  AUTH_PASS=bar \
  MAIL_MAP='{"john@doe.com":"johndoe@gmail.com"}' \
  SETUID=99 \
  mail-relay

configuration

With env vars.

AUTH_USER

User for the outgoing emails.

AUTH_PASS

Password for the outgoing emails.

MAIL_MAP

Address mapping

{
  "john@doe.com": "johndoe@gmail.com"
}

MAIL_FILTER_SOURCE

Reject sources matching this pattern. If you are in control of doe.com, then you should probably reject mails coming from @doe\.com$.

SETUID

Set uid after ports are bound (ie. you no longer run as root). You probably want to set it to $(id -u nobody) (which is 65534 or 99 or something else, depending on your system).

license

MIT

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.1.10latest

Version History

VersionDownloads (Last 7 Days)Published
0.1.10
0.1.00
0.0.10

Package Sidebar

Install

npm i mail-relay

Weekly Downloads

0

Version

0.1.1

License

MIT

Unpacked Size

6.21 kB

Total Files

3

Last publish

Collaborators

  • lennon