Konfigurace programu Exim na Ubuntu pro odesílání emailů do vyhrazené složky na disku.
Nainstalujeme Exim zadáním
sudo apt install exim4
Provedeme jeho prvotní konfiguraci
sudo dpkg-reconfigure exim4-config
V okně konfigurace odpovíme na jednotlivé dotazy následovně
dozaz - Základní model poštovního nastavení:
- vybereme pouze lokální pošta; počítač není na síti
- potvrdíme OK
dotaz - Poštovní jméno počítače:
- zadáme / domena.lan / ( dáme doménu tečka přípona )
- potvrdíme OK
dotaz - IP adresy, na kterých se mají očekávat příchozí SMTP spojení:
- ponecháme prázdné
- potvrdíme OK
dotaz - Další místa určení, pro která akceptujeme poštu:
- zadáme hvězdičku / * /
- potvrdíme OK
dotaz - Domény, pro které předávat poštu (relay):
- zadáme hvězdičku / * /
- potvrdíme OK
dotaz - Minimalizovat počet DNS dotazů (Vytáčení-na-vyžádání)?
- vybereme / Ne /
dotaz - Způsob doručení lokální pošty:
- vybereme formát mbox ve /var/mail/
- potvrdíme OK
dotaz - Rozdělit nastavení do menších souborů?
- vybereme / Ne /
Vytvoříme novou konfiguraci Eximu – router, který nám přepošle emaily do dané složky
sudo nano /etc/exim4/conf.d/router/950_exim4-config_catchall
Do takto vytvořené konfigurace zadáme
catch_all:
debug_print = "R: catch_all for $local_part@$domain"
driver = redirect
data = ${lookup{*}lsearch{/etc/aliases}}
pipe_transport = address_pipe
Do souboru /etc/aliases přidáme na konec následující řádek
*: |/etc/exim4/save-email
Upravíme další soubor s nastavením Eximu
sudo nano /etc/exim4/update-exim4.conf.conf
* kde změníme řádek
dc_relay_domains=""
* na následující hodnotu
dc_ralay_domains="*"
Nakonec aktualizujeme konfiguraci Eximu a provedeme jeho restart
sudo update-exim4.conf
sudo systemctl restart exim4
Vytvoříme si adresář pro ukládíní emailů
sudo mkdir /emails
Vytvoříme script, který nám bude emaily ukládat do vytvořeného adresáře, zadáním
sudo nano /etc/exim4/save-email
Do vytvořeného souboru zadáme tyto příkazy
#!/bin/bash
date2string() {
date "+%Y%m%d.%H%M%S"
}
FILE="email-$(date2string).$$.$RANDOM.eml"
cat /dev/stdin > /data/emails/$FILE
Nakonec musíme nastavit takto vytvořenému souboru práva na spouštění
sudo chmod a+x /etc/exim4/save-email
Pro ověření našeho nastavení Eximu, zadáme následující příkaz, kde na místo emailové adresy zadáme reálnou emailovou adresu a mělibychom dostat následující výpis
exim -bt realny.email@seznam.cz
*
* výpis výše uvedeného příkazu
*
R: system_aliases for realny.email@seznam.cz
R: catch_all for realny.email@seznam.cz
realny.email@seznam.cz -> |/etc/exim4/save-email
transport = address_pipe
Pokud dostaneme výše uvedené zprávy, máme vše nastaveno správně.
Případnou synchronizaci se sdílenou složkou ve Virtualboxu a Windows vytvoříme cron úlohu tak, aby nám pomocí rsync přeposílala vytvořené emaily do sdílené složky Virtualboxu každých 30 sekund.
sudo crontab -e
*
* obsah soubru crontab
*
* * * * * rsync -au /emails /media/sf_Emails
* * * * * sleep 30; rsync -au /emails /media/sf_Emails