/projects/s_mail


sMail


A self hosted/managed, easy to setup personal mail service
Project on GitHub

Intro

This project aims to set up a personal mail service using various components like Postfix, Dovecot, Rspamd etc providing you with a robust email infrastructure for personal or very small enterprise use.


Motivation

Initially, this project was developed to fulfill a personal need. As someone who required a reliable and customizable mail service for personal use, I found myself spending significant time and effort setting up and configuring various mail server components such as Postfix, Dovecot etc. Recognizing that this process could be daunting for others facing similar challenges, I saw an opportunity to streamline the setup process.


Features

This project delivers all the basic mail features required, here is a list of them:
  • Sending/Recieving Mails
  • Multiple Users/Domains/Aliases
  • 3rd party mail clients support
  • Webmail interface
  • TLS (auto renew SSL cert)
  • Spam detection
  • Brute-force prevention
  • DKIM
  • Aliasing using (+)
  • Server side mail rules
  • Python scripts to manage Users/Domains/Aliases

Here is a list of upcomming features:
  • Webapp dashboard to manage Users/Domain/Aliases etc.
  • MTA-STS

Components Used

Here is a list of all the components used in this project:
Component Description
Postfix Mail transfer agent (MTA), for recieving and sending mails.
Dovecot IMAP and POP3 server for managing user mailboxes.
Rspamd Spam filtering system for protecting against unwanted mails.
Roundcube Web based IMAP email client for accessing mail from browser.
MariaDB Backend database for postfix to store Users/Domains/Aliases.
Redis Database stored by rspamd to store ham/spam rules.
Apache2 Web server to host roundcube.
Certbot For issuing free SSL certs.

Installation

For installation, please refer to the README.md file on github. Here is the link to the github repo.

Bug Report/Contribution

If you happen to find any operational/security bug in this, please let me know by creating an issue on github itself.

If you feel you can improve this project or just want to contribute something to this, feel free to create a pull request on github.


Tags: | mail | smtp | postfix | imap | pop3 | dovecot | rspamd | roundcube |