Page MenuHomeDevCentral

Provision a mail server
Open, Needs TriagePublic

Description

Plan

Provision a server on hyper-001 hypervisor with the mail server. Could be combined with the DNS server (see T1218).

A similar installation than in T405 is welcome, at working and stable. That would mean a Postfix one.

A qmail installation is frowned upon as the software isn't really maintained anymore (writing that I noticed qmailtoaster last release is well maintained with last CentOS 7 release end September 2018).

Naming

We received the following propositions from P27:

  • Ganscerel (shangri-l)
  • Oort
  • Apsile (Ehair) (already taken by a Jenkins PHP node)
  • Hervil (Ehair)

Current state of mail

With T405, mail services were provisioned as a LXC container.

This lxc container is currently available on Dwellers for reference.

Some edited configuration files are already in rOPS in the mailserver/ role:

  • certificates: a script to copy Let's Encrypt files in the LXC container, probably not really interesting, but contains at least the postfix configuration expected paths
  • dkim: DKIM scripts and config set is valuable and works fine (probably a cleanup of the symlinks is welcome)
  • systemd-unit: a unit to add to iptables the rules to forward mail ports, then run container, useful mainly to know useful ports: 25 110 143 465 587

Other configuration files can be extracted from the lxc container directory, /var/lib/lxc/mailserver/rootfs on Dwellers.

Revisions and Commits

Event Timeline

DorianWinty added a project: Restricted Project.
DorianWinty added a subscriber: DorianWinty.
DorianWinty moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jun 29 2023, 17:43

DNS configuration

hervil.nasqueron.org. 86400 IN A 178.32.70.108

Network configuration

For public second card:

IP public: 178.32.70.108
MAC address: 00:50:56:0c:37:9b

[ 2023 plan from T405 for T1475. ]

Phase I

Per https://pad.wolfplex.be/p/mail:

  1. Install Postfix as part of mailserver role
  2. Deploy webserver-core role (to add to top.sls) to get nginx
  3. Install PHP too
    1. To be moved from webserver-alkane into webserver-core? (if mailserver or webserver-alkane in roles)
  4. Create a PostgreSQL database in db-A MariaDB database for ViMbAdmin in db-B
  5. Install ViMbAdmin to allow to manage virtual domains and mailboxe
  6. Install IMAP and POP capability (Dovecot or Cyrus IMAP)
  7. Install webmails locally if needed, on Docker PaaS if not
    1. Roundcube, the 2010s contender
    2. Squirrelmail, the legacy one with still a lot of fans
    3. Rainloop, the 2020s new one -> it uses IMAP to get mail instead of reading local mailboxes => can be installed on docker-002
  8. Determine where data is stored so we know what to backup

PostgreSQL is supported by ViMbAdmin, Postfix and Dovecot

Reference: https://github.com/opensolutions/ViMbAdmin/wiki/Install-Database-PostgreSQL