Forward emails from verified domains on SES to SES verified email
.
A RUST service that uses the inbound/outbound capabilities of AWS SES to forward emails from verified domains to an SES verified
email address.
For example, if an email is sent from john@doe.example
to achu@fufu.soup
is forwarded to a verified email onions@suya.io
.
privatemail
also add capability to blacklist
certain emails from coming to you.
Example email and how the From
and Reply-To
headers are set:
From: John Doe <achu@fufu.soup>
Reply-To: john@doe.example
<html>Email body</html>
received by -- <onions@suya.io>
- Verify SES Domain on SES
- Verify SES Email forwarding
- Terraform binaries
- AWS SES Limits
- Generate Terraform cloud tokens
- Edit the
terraform/variables.tf
file accordingly to suit your needs. - If you're using S3 as your backend, you'll need to make changes to
terraform/main.tf
- Test build locally.
$ cargo build
$ cargo test
- Verify your domain and email address on SES before running this
- Create a terraform Token which has admin access to your AWS Account
- Build and generate your Lambda.zip in the terraform directory
- Provision infrastructure
$ cd terraform
$ terraform init
$ terraform validate -json
$ terraform plan
$ terraform apply
Alternately, you can run the release.sh
and it builds your code and provisions your infrastructure.
We appreciate your contributions; all PRs are welcomed. Please see CONTRIBUTING.md for more information.
$ bash release.sh
Set up the following GitHub secrets for actions worfklows to work properly
FROM_EMAIL
TF_API_TOKEN
TO_EMAIL
AWS_REGION
BLACK_LIST
All deployments occur via GitHub Actions.
The scripts and documentation in this project are released under the MIT License