Email z cronu přes vzdálený SMTP server

kvas

  • ***
  • 119
    • Zobrazit profil
    • E-mail
Email z cronu přes vzdálený SMTP server
« kdy: 15. 05. 2019, 15:05:31 »
Ahoj, poradili by ste mi prosim s tymto problemom?

vsetko je to ubuntu 16.04 64bit
1) mam dedikovany postovy server , kde bezi postfix s virtualnymi mailboxami v DB + roundcube na pristup k tymto mailom - funguje be zproblemov

2) na 2. servi bezi cisty LAMP bez mailu, postfixu a pod. ked potrebujem z PHP poslat mail, pouzijem phpmailer - funguje bez problemov

3) rozbieham 3. server. je tam apache + java(spring) opat cisty bez mailovacich utilit. z tohoto servera ale potrebujem zaslat email po akcii z cronu. Tu ale narazam na problem, nerad by som to zasielal napr. tym php mailerom, ale radsej by som pouzil nejaku nativnu utilitu (mail a pod) ale taku aby vedela ten mail poslat cez ten dedikovany mail server c.1

do crontab som pridal
MAILTO=some_addess
ale ziadny mail sa nezaslal. ktory mail client sa pouzije, ak crontab obsahuje MAILTO?

Ake su "best practices" v takejto infrastrukture? Mam skupinu serverov (rozne stacky, t.j. java/php...) a jeden postovy server. Z kazdeho by som rad poslal email, ale vyslovene len cez ten dedikovany postovy server. Nepotrebujem z tych serverov pristup koli citaniu emailov, to sa vzdy riesi cez rondcube na serveri c.1.



dik za kazdy tip.



« Poslední změna: 15. 05. 2019, 15:07:28 od kvas »


Re:Email z cronu přes vzdálený SMTP server
« Odpověď #1 kdy: 15. 05. 2019, 15:31:55 »
Best practice je rozchodit na tom serveru hloupého SMTP klienta, který neumí nic jiného, než předávat e-mail chytrému poštovnímu serveru k rozesílání. Dříve se používal SSMTP, který už je nepodporovaný, ale v odkazované stránce máte odkazy na náhradu.

McFly

  • *****
  • 560
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #2 kdy: 15. 05. 2019, 15:52:26 »
Napadá mne rozjet tam postfix a využít parametru relayhost, např. https://www.linode.com/docs/email/postfix/postfix-smtp-debian7/

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #3 kdy: 15. 05. 2019, 16:09:03 »
SSMTP který už je nepodporovaný
Pletes si unmaintained a unsupported, SSMTP je jen nespravovany, hlavne ale ta zminka je na ArchWiku, tedy rolovacim diatru, tazatel se pta na Ubuntu 16.04 kde je samizrejme stejne starsi verze a podporovana/spravovana... pouzivam SSMTP v Ubuntu 18.04.

kvas

  • ***
  • 119
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #4 kdy: 15. 05. 2019, 16:24:09 »
to SSMTP bu de zrejme presne to co hladam.

aktualne skusam "mail(x)" zo "s-nail" balicka, ale zda sa, ze je potrebne priohnut koli tomu cron. vie sice poslat email cez externy smtp ale cron ho stale "nevidi" - resp. neviem ako mu povedat aby ho pouzil.

 (CRON) info (No MTA installed, discarding output)

nasiel som lukasa, ktory to rozbehal na RH.
https://lukas.zapletalovi.com/2018/09/delivering-cron-emails-to-gmail-in-rhel.html


Re:Email z cronu přes vzdálený SMTP server
« Odpověď #5 kdy: 15. 05. 2019, 16:28:22 »
Pletes si unmaintained a unsupported, SSMTP je jen nespravovany, hlavne ale ta zminka je na ArchWiku, tedy rolovacim diatru, tazatel se pta na Ubuntu 16.04 kde je samizrejme stejne starsi verze a podporovana/spravovana... pouzivam SSMTP v Ubuntu 18.04.
Odkaz na web SSMTP vede na Debian, a v Debianu je také unmaintained. Já si to vykládám tak, že už se ten projekt dál nevyvíjí, takže když to instaluju nově a existují alternativy, použiju raději tu alternativu, která před sebou má jistější budoucnost. Že je to ve staré verzi Ubuntu je hezké, ale proč teď instalovat něco, co třeba už v příští verzi Ubuntu nebude, když existují minimálně rovnocenné alternativy? Na wiki Archu jsem odkázal proto, že jsou tam nějaké alternativy vyjmenované a je tam popsané, co to SSMTP je – takže tazatel případně sám může hledat alternativy, protože už ví, co vlastně hledá.

Re:Email z cronu přes vzdálený SMTP server
« Odpověď #6 kdy: 15. 05. 2019, 16:30:51 »
to SSMTP bu de zrejme presne to co hladam.
Na vašem místě bych se podíval aspoň na msmtp a OpenSMTPD. U toho SSMTP bych se fakt bál, že to za rok za dva budete stejně měnit za něco z předchozích.

kvas

  • ***
  • 119
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #7 kdy: 15. 05. 2019, 16:49:39 »
"takže tazatel případně sám může hledat alternativy, protože už ví, co vlastně hledá."

jo, to je presne ono. uz viem co presne mam hladat:)

obom dakujem za pomoc

Re:Email z cronu přes vzdálený SMTP server
« Odpověď #8 kdy: 15. 05. 2019, 16:51:28 »

nasiel som lukasa, ktory to rozbehal na RH.
https://lukas.zapletalovi.com/2018/09/delivering-cron-emails-to-gmail-in-rhel.html

No a rozběhat podle toho odkazu jsi to zkoušel - myslím toto:
# cat /etc/sysconfig/crond
CRONDARGS="-m /usr/local/sbin/mailx-r"

Jinak mě funguje postfix + mailx.

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #9 kdy: 15. 05. 2019, 17:23:08 »
Pletes si unmaintained a unsupported, SSMTP je jen nespravovany, hlavne ale ta zminka je na ArchWiku, tedy rolovacim diatru, tazatel se pta na Ubuntu 16.04 kde je samizrejme stejne starsi verze a podporovana/spravovana... pouzivam SSMTP v Ubuntu 18.04.
Odkaz na web SSMTP vede na Debian, a v Debianu je také unmaintained. Já si to vykládám tak, že už se ten projekt dál nevyvíjí[...]
ok, beru zpet, koukam ze ubuntu-support-status mi (v 16.04 i 18.04) ssmtp zobrazi v sekci nepodporovane, je sice v universe coz by mela podporovat komunita, ale asi ma opravdu status podpory odebran. To ze se nevyviji si vykladas spravne, jen sem myslel ze je balicek (v Ubuntu) stale podporovan...

EDIT: v Debianu koukam dostal status "sirotka" pred mesicem :-)
« Poslední změna: 15. 05. 2019, 17:25:27 od k3dAR »

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #10 kdy: 15. 05. 2019, 17:29:55 »
[...]
ale ziadny mail sa nezaslal. ktory mail client sa pouzije, ak crontab obsahuje MAILTO?
[...]
jak bylo zmineno musis mit nejdriv rozbehnute nejake hloupe SMTP, pak aby aby si dostaval mail z cronu, staci aby si nastavil pro root svuj mail, bude pak automaticky chodit error od skriptu poustene cronem, pokud chces i neerror, tak to skriptu jednoduse pridas:
echo "zrovna sem bezel"... a prijde ti mail "Cron <root@stroj> nazevskriptu" s telem "zrovna sem bezel"...

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #11 kdy: 15. 05. 2019, 18:01:13 »
nechci rozporovat ze ssmtp je bez vyvoje, ale pro zajimavost msmtp i OpenSMTPD je v 18.04 take v sekci "Nepodporovano" :-)

k3dAR

  • *****
  • 2 838
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Email z cronu přes vzdálený SMTP server
« Odpověď #12 kdy: 15. 05. 2019, 18:14:49 »
[...] musis mit nejdriv rozbehnute nejake hloupe SMTP [...]
tohle take beru zpet, nenij to nutnost, ted koukam na odkaz co si daval a ocividne lze nastavit ciste mailx aby maily posilal primo on, nicmene kdyz uz byla rec o budoucnosti baliku, tak heirloom-mailx(nevim zda stejnej co v RH) co v Ubuntu 16.04 jeste je, tak v Ubuntu 18.04 uz neni, mail z baliku mailutils ma v necem jinej syntax (nevim zda by to ovlivnilo to howto), takze sem prechazel na balik s-nail kterej ma stejnej syntax jako mel heirloom-mailx...

edit: pro uplnost, ted koukam ze je jeste balik bsd-mailx, kterej predpokladam by mohl mit take stejnej syntax protoze stejna jako s-nail jde o BSD verzi :)
« Poslední změna: 15. 05. 2019, 18:17:05 od k3dAR »

Re:Email z cronu přes vzdálený SMTP server
« Odpověď #13 kdy: 15. 05. 2019, 18:28:51 »
Doporučil bych zvážit si, jak moc mi na samotné existenci nebo obsahu odesílaných mailů záleží. Protože tyhle klientské "hračky" jako ssmtp v případě neúspěchu při odesílání mailu jej neumí uložit do nějaké fronty a za čas pokus o odeslání opakovat. Když ten server na druhé straně je zrovna odstavený nebo z jakéhokoliv důvodu dočasně nepřijímá, tak maily budou mizet v černé díře.

Re:Email z cronu přes vzdálený SMTP server
« Odpověď #14 kdy: 15. 05. 2019, 20:44:56 »
Doporučil bych zvážit si, jak moc mi na samotné existenci nebo obsahu odesílaných mailů záleží. Protože tyhle klientské "hračky" jako ssmtp v případě neúspěchu při odesílání mailu jej neumí uložit do nějaké fronty a za čas pokus o odeslání opakovat. Když ten server na druhé straně je zrovna odstavený nebo z jakéhokoliv důvodu dočasně nepřijímá, tak maily budou mizet v černé díře.

OpenSMTPD má v cílech uvedeno, že nemá ztrácet e-maily, které potvrdí k odeslání, a má umět zpracovat i dlouhou frontu e-mailů. Takže předpokládám, že frontu má.

Mně to ale připadá spíš jako nevýhoda – výhoda těchhle jednoduchý klientů je právě to, že tam nemusí trvale běžet žádný proces. Pokud je ta zpráva tak důležitá, že o ní nechci přijít, stejně bych ji logoval i lokálně a nespoléhal bych na to, že ten e-mail vždy dorazí. On se může ztratit i kdykoli dál po cestě, ne jen na prvním hopu.

Ale je to dobrá připomínka a každý by si měl zvážit, jak pravděpodobné je, že primární poštovní server vypadne, a zda pak může o ty e-maily přijít. Vlastně mne trochu překvapuje, že ani ssmtp ani msmtp nepodporují fallback na záložní server. Když už chci u e-mailu řešit vysokou dostupnost, udělám to právě druhým serverem – protože protokoly doručování e-mailů tuhle moderní fíčuru (vysokou dostupnost) podporují už víc než třicet let.