oneuptime/Haraka
2024-06-14 12:09:53 +01:00
..
config revert haraka changes 2024-05-31 17:35:21 +01:00
dkim add haraka files 2023-08-15 14:39:57 +01:00
docs/plugins chore: Update Dockerfile to include email_parser.js plugin and install dependencies 2024-05-30 21:07:05 +01:00
plugins refactor: Update symbol type to use lowercase 'symbol' in ColumnAccessControl files 2024-06-14 12:09:53 +01:00
.dockerignore fix docker file 2022-12-16 13:35:59 +05:30
.gitignore fix 2022-04-10 22:50:28 +01:00
Dockerfile.tpl Update host_list configuration file path in Dockerfile 2024-05-31 13:01:11 +01:00
init.sh chore: Add INCOMING_EMAIL_DOMAIN to host_list configuration 2024-05-31 12:59:23 +01:00
package-lock.json chore: Update Dockerfile to include email_parser.js plugin and install dependencies 2024-05-30 21:07:05 +01:00
package.json chore: Update Dockerfile to include email_parser.js plugin and install dependencies 2024-05-30 21:07:05 +01:00
README.md add haraka files 2023-08-15 14:39:57 +01:00

Build haraka container.

sudo docker build . -t haraka:latest

To update a stack

cd haraka
sudo docker stack deploy haraka -c docker-compose.yml

To restart a service

sudo docker service update haraka_haraka --force

Send Test Outbound Email

swaks --to hello@nawazdhandala.com --from hello@genosyn.com --server 192.168.1.100 --port 2525 --auth-user homelab --auth-password password

Set a domain to send email

Generate a DKIM key:

cd dkim

bash generate.sh

cd ..

public and private files should have been generated inside of dkim folder. Please also add DNS and env vars to docker-compose files. Values of that should be shown on the console.

Add an A record:

mailer.company.com <IP address or haraka server>

Set SPF record:

# Any MX or A servers can send emails. 
v=spf1 mx a -all

Example:

v=spf1 mx a ip4:37.26.74.9 include:_spf.google.com include:mail.genosyn.com ~all

Set DMARC record:

Type: TXT
Key: _dmarc   
Value: "v=DMARC1; p=reject; adkim=s; aspf=r; rua=mailto:dmarc-feedback@<DOMAIN>; ruf=mailto:dmarc-feedback@<DOMAIN>; pct=100"

Example:

_dmarc  TXT "v=DMARC1; p=reject; adkim=s; aspf=r; rua=mailto:dmarc-feedback@genosyn.com; ruf=mailto:dmarc-feedback@genosyn.com; pct=100"

Test, Test, Test.

Use https://www.mail-tester.com/ to test emails.