Mailový server na Ubuntu 24.04.

Čo budeme potrebovať

  • Router na ktorom vieme urobiť Port Forwarding
  • Raspberry Pi
  • SD kartu/ hardisk
  • Verejnú statickú IP adresu
  • doménu

Konečne začala firma iRedMail podporovať aj Ubuntu 24.04. Keď som ho testoval dávnejšie, tak bol problém.

Inštaláciu je dokonca možné urobiť aj na Rasberry Zero 2W, pi 2, pi 3, pi 4 a pi 400. Ale ja osobne mám overené iba Pi 4 a Pi 400.

Ak si budete, chcieť naištalovať mailový server na Rasberry pi, tak na stiahnutie a inštaláciu OS použite Rasberry Pi imager, ten viete stiahnúť odtiaľ to.

https://www.raspberrypi.com/software

Inštalácia OS na SD /SSD HDD

Vyberte Raspberry Zariadenie

Zvoľte Other general-purpose OS

Nájdite Ubuntu Server 24.04

V poslednom kroku zvoľte Choose storage

Zvoľte next

Vyskočí Vám dialogové okno, či si chcete server zapísať na SD kartu, alebo si želáte zmeniť nastavenia. Keď kliknete na Edit settings môžete hneď nastaviťužívateľa, heslo a hostname. Ak si na routry nastavíte IP asdresu viazanú na MAC adresu, tak nemusíte pripájať k Raspberry klávesnicu a môžete hneď pracovať s Rasberry cez ssh. ssh je defaultne na porte 22

Nahrajte operačný sýstem a počkajte kým sa nespustí.

DNS záznamy

U Vašeho poskytovateľa domený je dobré hneď na začiatku urobiť DNS záznamy

  • A záznam zmení verejnú IP adresu na meno číže napr verejná IP adresa bude mail.ibasterisk.eu
  • Potom ďalšie reverzné záznamy podľa potreby, aby maily chodili napr na Microsoft o365, Google a iné mailové spoločnosti a samozrejme odpovede, aby chodili na Váš mailový server.
  • Reverzný záznam dkim budeme vytvárať až na konci a vysvetlíme si prečo je dvôležitý.

Inštalácia

Zmeníme hostname

sudo hostnamectl set-hostname mail.ibasterisk.eu

môžeme aj manuálne

sudo nano /etc/hosts

Overejnie, či sa zmenil vieme

sudo hostname -f

Stiahnutie iRedMail. Najnovšiu verziu nájdete tu:

https://www.iredmail.org/download.html

ako prvé su stiahneme príkazum

wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.7.1.tar.gz

Potom ho rozbalíme

tar -xvf 1.7.1.tar.gz

Pôjdeme do priečinka

cd iRedMail-1.7.1

Spustíme skript

sudo chmod +x iRedMail.sh
sudo bash iRedMail.sh

Zvolíme Nginx

Zvolíme MariaDB

Zvolíme heslo do MySQL

Je potrebné špecifikovať prvú doménu

Zvoľte ehslo pe postmaster@ibasterisk.eu

Volíme všetky možnosti

Po zbehnutí Vám vyskočí okno, či je všetko v poriadku nastavené, keď stlačíte y, tak sa začne inštalovať

SSL certifikát

sudo apt install certbot
sudo certbot certonly --webroot --agree-tos --email postmaster@ibasterisk.eu -d mail.ibasterisk.eu -w /var/www/html/

Potom je potrebné upraviť riadky

nano /etc/nginx/templates/ssl.tmpl

nájdite 2 riadky

ssl_certificate /etc/ssl/certs/iRedMail.crt;
ssl_certificate_key /etc/ssl/private/iRedMail.key;

Tie nahraďte

ssl_certificate /etc/letsencrypt/live/mail.your-domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mail.your-domain.com/privkey.pem;

Uložte to

Skontrolujte, či je to v poriadku

nginx -t
systemctl reload nginx

Naištaľujte TLS certifikát v Postfix a Dovecot

nano /etc/postfix/main.cf

Teraz nájdite riadky 95,96,97

smtpd_tls_key_file = /etc/ssl/private/iRedMail.key
smtpd_tls_cert_file = /etc/ssl/certs/iRedMail.crt
smtpd_tls_CAfile = /etc/ssl/certs/iRedMail.crt

tie nahraďte:

smtpd_tls_key_file = /etc/letsencrypt/live/mail.ibasterisk.eu/privkey.pem
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.ibasterisk.eu/cert.pem
smtpd_tls_CAfile = /etc/letsencrypt/live/mail.ibasterisk.eu/chain.pem

Teraz to uložte a reštartujte postfix

systemctl reload postfix

Teraz nájdite 2 riadky 47,48

nano /etc/dovecot/dovecot.conf
ssl_cert = </etc/ssl/certs/iRedMail.crt
ssl_key = </etc/ssl/private/iRedMail.key

Tieto riadky nahraďte:

ssl_cert = </etc/letsencrypt/live/mail.ibasterisk.eu/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.ibasterisk.eu/privkey.pem

Reštartujte Dovecort

systemctl reload dovecot

Výsledok, je že by mala byť. že web stránka je zabezpečená. Ak sa tak nestalo je vhodné reštartovať server.

Reverzný záznam na overenie, že náš server je plnohodnotný

sudo amavisd showkeys
 

Kľúč je potrebné potrebné upraviť v nejakom textovom editore, bez zátvoriek a úvodzoviek.

Príklad vygenerovania

v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5kX7XLcxvdf7+Q/ynf/45JXt+TaEmfnwLEtOakDK4TRjmF5mQzBIWMkmHuQG1TfLZlOefBg70txTojgjwtRA7VapwNUSDf9s7rjMGF2YuHkGbr1Y1qid81IzhjghxymsTGAp3uJelSbN3JHxJALu1gc1J5mKGsYaGcz0bFmTL5jIwzkgC5cqEHOvJlc6p55GzsS9Bpvghn2sO1Te4WilYkmeiEfC5XJyjaQ3Rrtp7KUIlJxxz+72OoHEvPyjvNRcXRAM2PC4VUpEUtLaDShJgTYZZQxPobdYqLVuy/UV0INIgfnWoEQ7weXUrfNK3VjMU8tac3VOV90Dvyy4u1CDLCHqawIDAQAB

overiť môžeme

sudo amavisd testkeys
TESTING#1 example.com: dkim._domainkey.example.com => pass

Taká miniatúrna prezentácia