An SMTP Server project.
npm install ady-haraka
Haraka - a Node.js Mail Server
------------------------------
!Tests
!Tests - Windows
[![Coverage Status][cov-img]][cov-url]
Haraka is a highly scalable [node.js][1] email server with a modular
plugin architecture. Haraka can serve thousands of concurrent connections
and deliver thousands of messages per second. Haraka and plugins are written
in asynchronous JS and are very fast.
Haraka has very good spam protection (see [plugins][4]) and works
well as a filtering [MTA][3]. It also works well as a [MSA][5] running on
port 587 with auth and [dkim_sign][6] plugins enabled.
Haraka makes no attempt to be a mail store (like Exchange or Postfix/Exim/Qmail),
a [LDA][7], nor an IMAP server (like Dovecot or Courier). Haraka is
typically used with such systems.
Haraka has a scalable outbound mail delivery engine built in. Mail
marked as relaying (such as via an auth plugin) is automatically
queued for outbound delivery.
#haraka on [freenode][14]
user-anyword@domain.com, and yet
user@domain.com. This is a few lines of
sh
If the second command gives "nobody" errors, uncomment & run the next command
npm -g config set user root
npm install -g Haraka
`
After installation, use the haraka binary to set up the service.
$3
First, create the service:
`sh
haraka -i /path/to/haraka_test
`
That creates the directory haraka_test with config and plugin
directories within. It also sets the host name used by Haraka
to the output of hostname.
If hostname is not correct, edit config/host_list. For example,
to receive mail addressed to user@domain.com, add domain.com to the
config/host_list file.
Finally, start Haraka using root permissions:
`sh
haraka -c /path/to/haraka_test
`
And it will run.
$3
To choose which plugins run, edit config/plugins. Plugins control the
overall behaviour of Haraka. By default, only messages to domains listed
in config/host_list will be accepted and then delivered via the
smtp-forward plugin. Configure the destination in config/smtp_forward.ini.
$3
`sh
haraka -h plugins/$name
`
The docs detail how each plugin is configured. After editing
config/plugins, restart Haraka and enjoy!
$3
If you are unable to use npm to install Haraka, you can run from git by
following these steps:
First clone the repository:
$ git clone https://github.com/haraka/Haraka.git
$ cd Haraka
Install Haraka's node.js dependencies locally:
$ npm install
Edit config/plugins and config/smtp.ini` to specify the plugins and