Odesílání e-mailů z několika zařízení přes jeden PC

Zdravím,
nevím jak přesně popsat a uchopit situaci.
Mám ve firemní síti spoustu zařízení, které umí odesílat různá e-mailová upozornění. Problém je v tom, že nemají přístup ven ani na žádný SMTP server. Pak tu mám jeden PC s Win10, který jako jediný může odesílat přes firemní SMTP maily. Ale pouze přes ten jeden SMTP. To nezměním. Všechny zařízení na PC vidí a mohou s ním komunikovat.
Potřeboval bych najít způsob, jak udělat to, aby PC byl pro všechna zařízení SMTP serverem a posílal maily z nich přes onen firemní SMTP.
Existuje nějaký způsob, jak toho docílit? Ideálně nějakým free SW, případně SW který by se dal otestovat a pokud by bylo řešení funkční, pak klidně i zakoupit licenci?
Díky za odpovědi.
« Poslední změna: 15. 03. 2022, 21:35:21 od Petr Krčmář »


McFly

  • ****
  • 470
    • Zobrazit profil
    • E-mail
Re:odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #1 kdy: 15. 03. 2022, 17:48:06 »
Napadá mne třeba nainstalovat hMailServer pod Windows a nakonfigurovat jej tak, že jako relay použije právě ten firemní smtp server... Ale jestli to není zbytečně kanón na vrabce. ;-)

Re:odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #2 kdy: 15. 03. 2022, 18:26:18 »
Tak pokud by to fungovalo, tak i kanón se dá použít.
V tomto se nějak neorientuju. Pohybuju se spíše v prostředí PLC, industry 4.0 apod.
Vyskouším to.

_Jenda

  • *****
  • 1 115
    • Zobrazit profil
    • https://jenda.hrach.eu/
    • E-mail
Re:odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #3 kdy: 15. 03. 2022, 19:21:55 »
Samozřejmě, normální poštovní server "se smarthostem". Nainstaluješ tam postfix (buď do WSL, nebo do virtuálu) a nastavíš relayhost = upstream_poštovní_server. Následně dáš IP adresy zařízení, nebo celý subnet, do mynetworks, a tím jim povolíš posílat (což jako není tak bezpečné, protože IP adresu jde podvrhnout, ale v lokální síti se to asi dá přežít -- alternativně se dá udělat SMTP autentizace jménem a heslem, což ale zase možná ta zařízení neumí, nebo se ti nebude chtít to konfigurovat).

Re:odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #4 kdy: 15. 03. 2022, 20:34:06 »
OK, testnu jak budu v práci a snad to klapne


Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #5 kdy: 15. 03. 2022, 23:28:27 »
Zdravím. Řešil jsem něco velmi podobného z Windows Serveru.

Uplatnil jsem řešení pomoxí tzv. SMTP proxy/relay serveru.

Stačí zapnout rozšíření IIS. A pak pomocí management nástroje pro IIS 6.0 (ano, ten starší, legacy), lze nastavit SMTP server(y), který bude naslouchat na portu 25 (popř. jiném) a ověřeně zasílat na jiný SMTP server. Dá se i omezit, které IP mohou zasílat atd.

Výhody: jednoduché na realizaci, není potřeba SW třetí strany, poměrně snadno se to ladí.

5nik

Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #6 kdy: 16. 03. 2022, 13:05:22 »
Já toto pro lokální sítě řeším instalací E-mailRelay (http://emailrelay.sourceforge.net/) na server. Běží to jako služba a předává to emaily dále na definovaný server (smarthost). Podporuje ověření i TLS jak na straně serveru, tak volitelně na straně ke klientům.

Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #7 kdy: 17. 03. 2022, 08:30:10 »
Díky za rady.
Ale vypadá to, že to nedám. Vůbec netuším co kde nastavit. V tomhle jsem lama.

McFly

  • ****
  • 470
    • Zobrazit profil
    • E-mail
Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #8 kdy: 17. 03. 2022, 10:45:54 »
https://sourceforge.net/projects/emailrelay/files/latest/download

Stáhnout a pak spustit emailrelay-setup.exe, odklikat licenci a adresáře pro instalaci, jako Server zvolit jen SMTP, dále Mail Forwarding synchronously, port 25 (na odzkoušení bez autentizace a bez TLS), jako remote zvolit firemní smtp (vyplnit dle potřeby autentizaci a TLS, záleží co firemní server vyžaduje) a zbytek zase dle potřeby, třeba start po naběhnutí Windows atd... po spuštění se v trayi objeví ikonka pošty a démon naslouchá... přiznám se, že jsem to dál netestoval, ale tak snad to funguje. :)


Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #9 kdy: 17. 03. 2022, 12:20:37 »
Možná to nebude úplně správná odpověď, ale nešlo by na tom Windows stroji, co na ten SMTP server může, pustit jako admin třeba něco takového?

netsh interface portproxy add v4tov4 listenaddress=192.168.1.52 listenport=25 connectaddress=10.0.0.50 connectport=25

(kde 192.168.1.52 je např. IP adresa toho Windows stroje, pod kterou ho všichni vidí, a 10.0.0.50 je IP adrea SMTP serveru, kam smí ten Windows stroj sahat - adresy jsem si vymyslel pro ilustraci).

Nevím, třeba to bude nakonec to nejjednodušší. Pak by se ten Windows stroj stal jen komunikačním prostředníkem, tvářil by se sám jako ten SMTP server a všechny požadavky by odbavoval jako taková proxyna. Předpokládám, že ostatní stroje na ten SMTP server nesmí síťově, takže ten Windows stroj by to dělal za ně. Pochopitelně je potřeba pořešit patřičné prostupy na firewallu toho Windows stroje.

Ale možná je to hloupá rada a takhle snadno to obejít nepůjde, já ale podobným způsobem obcházím leccos.

Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #10 kdy: 17. 03. 2022, 13:42:33 »
netsh interface portproxy add v4tov4 listenaddress=192.168.1.52 listenport=25 connectaddress=10.0.0.50 connectport=25

Tohle funguje přesně jak jsem potřeboval.
Emailrelay se mi nepodařilo spustit, házelo to nějakou chybu.

Pánové díky moc.

Re:Odesílání e-mailů z několika zařízení přes jeden PC
« Odpověď #11 kdy: 22. 03. 2022, 21:45:18 »
netsh interface portproxy add v4tov4 listenaddress=192.168.1.52 listenport=25 connectaddress=10.0.0.50 connectport=25

Tohle funguje přesně jak jsem potřeboval…
To jsem rád, že to pomohlo.
Dodám ještě jednu věc: to nastavení by se mělo uchovat i po restartu stroje. Příkaz na zjištění všech takovýchto „portproxy“ je

netsh interface portproxy show all

a příkaz na smazání

netsh interface portproxy delete v4tov4 listenaddress=192.168.1.52 listenport=25

Mám ovšem tu zkušenost, že to někdy po restartu prostě nejde, i když „portproxy show all“ ukazuje, že to tam je. Pak je nejsnazší pustit ten „portproxy delete“ příkaz a pak zase ten „portproxy add“. A dát to do nějakýho scheduleru po startu nebo tak.