Ha mondjuk azt szeretném, hogy több belső hálón figyelő smtp szerver 1 publikus IP-n kommunikáljon az internet felé, akkor milyen módszerek vannak arra, hogy a visszafele jövő üzenetek (tipikusan 550 stb) azok a megfelelő belső smtp felé továbbítodjanak?
- 2915 megtekintés
Hozzászólások
Csinalj 1 smtp szervert azon a publikus ip-n, arra vedd fel MX rekordokat es az relay-ezze tovabb a leveleket. Ha 2-t csinalsz belole (2 publikus ip-vel) akkor redundans is lesz.
- A hozzászóláshoz be kell jelentkezni
iptables NAT ??? :D
Kicsit pontosabb is lehetnél a kérdezésnél...
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
A visszafele érdekel nem a kifele, mint írtam. Terhelés elosztás miatt szeretnék több smtp-t használni, de egy IP-ről kifele. Viszont mikor pl 5XX-es hibakód van akkor azt a megfelelő smtp-nek kéne megkapnia. Scriptből is menne ki levél (nem spam) ezért a scriptnek a választ látnia kell. A script csak az adott smtp-vel kommunikál.
- A hozzászóláshoz be kell jelentkezni
Még mindig NAT...
És igazából a conntrack alrendszer elintézi...
Ha jól értem, akkor neked kifelé egy egyszerű NAT-al megoldódik a kérdésed, azaz a belülről induló kapcsolatok rendesen kimennek.
A befelé jövő kapcsolatoknál pedig ilyeneket tudsz csinálni:
iptables -t nat -A PREROUTING -m state --state NEW -m statistic --mode nth --every 2 --packet 0 -j DNAT1
iptables -t nat -A PREROUTING -m state --state NEW -m statistic --mode nth --every 2 --packet 1 -j DNAT2
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
Igen, kifele sima NAT akár. Köszi megnézem.
- A hozzászóláshoz be kell jelentkezni
"Viszont mikor pl 5XX-es hibakód van akkor azt a megfelelő smtp-nek kéne megkapnia"
Ezt nem igazán értem... Mivel az 550-et az adott szerver kapja meg, amíg él a kapcsolat... Szóval valamit keversz...
--
Debian Linux rulez... :D
- A hozzászóláshoz be kell jelentkezni
dupla
- A hozzászóláshoz be kell jelentkezni
Abból amit írsz, az jön le nekem, hogy vannak SMTP szerverek a belső hálóban, amelyek ezt a kitüntetett gépet mint SMTP relay használnák. A dolgot azzal súlyosbítod, hogy ha a kézbesítés bármi miatt nem sikerül, akkor viszont a levél ne a proxy gépen "ragadjon be", hanem a kézbesítési hibaüzenet rögtön jusson vissza a belső SMTP géphez.
Ha ezt így, ebben a formában mindenképpen meg kell oldani, akkor azt csak úgy lehet, hogy a proxy MTA-t úgy konfigurálod, hogy próbáljon meg azonnal kézbesíteni és a hozzá beeső kapcsolatra csak akkor adjon 200 OK választ, ha a partner tőle már átvette a levelet, tehát nála tuti nem ragad be. Ennek megfelelően ha a partner bármilyen hibát üzen, akkor az még egy az egyben visszaadható a belső SMTP felé. Jelzem: nem tudom, hogy kell az MTA-t ilyen módon konfigurálni - de ha azt nézem, hogy ezen a ponton pl. nincs helyi queue, akkor alaposan ki kell herélni...
Amivel kiegészíteném: nem látom egy ilyen megoldás értelmét. Miért jó, hogy a proxy kommunikál a külvilág felé? Ha a teljes belső forgalom transzparensen van kialakítva, akkor simán a belső SMTP is mehetne a külvilág felé - nem? No persze ez meg routing és NAT irány, de nem megoldhatatlan. Sőt! Könnyebb útnak tűnik, mint egy MTA olyan konfigurálása, amit fentebb írtam.
- A hozzászóláshoz be kell jelentkezni
Igen, kicsit kavartam. Nem kell az 5XX-es egyből. Kevertem azzal ha nem elérhető az smtp a script felé.
- A hozzászóláshoz be kell jelentkezni