The Silver project aims to reinvent email and digital communication that is suitable for government scale deployment. We are looking to make it in two stages: 1.0 to just provide "regular" email and 2.0 to reinvent communication and collaboration.
- Milestones
- “GitHub for Everything” Playbook
- "Email 2.0" Vision
GoogleDoc
- Repo Structure - For Email Stack
GoogleDoc
- A dedicated Linux server with a static public IP address. You also require root access and port access control.
- Domain with DNS control
- 4GB of memory
- 1GB of swap
- Ensure you have Git and Docker Engine installed
You own example.com and want to send email as [email protected].
You will need to add a few records to your DNS control panel.
Note
Replace example.com and 12.34.56.78 in the below example with your domain and ip address.
DNS Record | Name | Value |
---|---|---|
A | 12.34.56.78 | |
A | example.com | 12.34.56.78 |
MX | example.com | mail.example.com |
TXT | example.com | "v=spf1 ip4:12.34.56.78 ~all" |
TXT | _dmarc | "v=DMARC1; p=quarantine; rua=mailto:[email protected]" |
PTR | 12.34.56.78 | mail.example.com |
Tip
PTR records usually are set through your hosting provider.
- Clone the repository and navigate to the services folder.
git clone https://github.com/LSFLK/silver.git
cd silver/services
-
Open
silver.yaml
with a text editor. -
Enter your domain name.
-
Run the
init.sh
-
To add more users to your email server, give permission to the add-users.sh file and run it.
# silver/services
bash init.sh
- Replace the dkim record below with the output you get after running the
init.sh
script
DNS Record | Name | Value |
---|---|---|
TXT | mail._domainkey | "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYZd3CAas0+81zf13cvtO6o0+rlGx8ZobYQXRR9W8qcJOeO1SiQGx8F4/DjZE1ggujOaY1bkt8OnUg7vG7/bk5PNe05EHJrg344krodqCJrVI74ZzEB77Z1As395KX6/XqbQxBepQ8D5+RpGFOHitI443G/ZWgZ6BRyaaE6t3u0QIDAQAB" |
Important
Ensure that your dkim value is correctly formatted.
- To add more users to your email server, open up
users.yaml
, and add their usernames and run the following command.
# silver/services
bash add_users.sh
- Follow the prompts to add a new user.
-
Now that you have a working email server, you can test your configuration using the following links/scripts.
- mxtoolbox
- MxToolbox is a powerful online service that provides a suite of free diagnostic and lookup tools for troubleshooting email delivery, DNS, and network issues.
- mail-tester
- Mail-Tester is a free online tool that analyzes the "spamminess" of your email and server configuration, providing a score out of 10 to help improve your email deliverability.
- mxtoolbox
-
You can also set up a Mail User Agent (MUA) like Thunderbird to send and receive emails. Follow the instructions in Mail User Agent Setup.
Silver is built using opensource software.
- Postfix - handles sending and receiving email.
- Dovecot - handles the retrieval of emails.
- Thunder - Identity provider and user manager
- Rspamd - spam filtering system.
- ClamAV - virus scanning system.
Thank you for wanting to contribute to our project. Please see CONTRIBUTING.md for more details.
Distributed under the Apache 2.0 License. See LICENSE for more information.