sziasztok
ebben a problémában kérném a segítségeteket: van egy postfix szerver, ami igazából csak belső hálón működik, ez az elsődleges célja (de azért authentikációval kívülről is elérhető, ha akarom). valamint van egy cyrus imap szerver is ugyanezen a gépen. a kettő annyit csinál, hogy a postfix a helyi címzetteknek (tehát a belső céges levelezés) szóló leveleket cyruson át a felhasználók postafiókjába teszi, a nem helyi címeket (tehát az összes kimenő levelet) pedig egyszerűen relay-el továbbítja a szolgáltató smtp szerverének.
a felhasználók gondja a következő: ők ugye szépen elküldik a leveleiket belső hálóról, a szerver ezeket mindig fogadja is rögtön, tehát a felhasználó csak annyit lát, hogy a levél elment. azt már nem látja, hogy a háttérben a postfix küldözgeti kifelé. és néha megesik, hogy a szolgáltató nívós smtp szervere lerohad napokig, és valójában a levelek nem kézbesítődnek, de erről a felhasználó nem tud semmit.
kéne nekik valamilyen értesítést küldenem a delayed/deferred kézbesítésekről.
namost erről kábé annyit tudok, mint zöld szemes ostoros az űrhajóépítésről. ha jól sejtem, ilyenkor kéne egy fallback relay szerver, amin keresztül lehetne kldeni a notificationt, de ilyen sajnos nincs.
azt szeretném megoldani, hogy az értesítések helyben, külső szerver nélkül érkezzenek meg a cyrus imap postafiókokba.
megadhatok fallback relay-nek localhostot vagy helyi ip címet esetleg? de ekkor még azt is meg kéne oldanom, hogy a notification-ök ne az eredeti címzettnek menjenek, mert akkor azok megint csak a postfix relay-en keresztül akarnának kézbesítődni és egy loop alakulna ki, hanem át kéne írnom a címzetteket helyi megfelelőjükre, és akkor már a cyrus kézbesítené helyben a leveleket.
tudna ebben valaki segíteni, hogy merre induljak, hogy érdemes? köszi!
- 953 megtekintés
Hozzászólások
Stop, miert kellene failback relay? A postfix csak azt relayezi, amiert nem erez felelosseget, tehat a belso levelezest nem hajtja at az interneten, mert minek.
Vagy a cimzettet akarod figyelmeztetni, hogy leveleznenek ugyan neki, de a level nem jo, varjon turelmesen a levelre? Vagy mi?
Nem igazan latom, mit szeretnel.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Nem. A levelezés nem ezen a szerveren van, azt egy külső mail szerver végzi valahol. Ők csak a domaint és az email címeket adják, meg a mail tárhelyet a címekhez, és pop3 hozzáférést. Tehát a dolgozók email címei: xyz@valamilyendomain.hu. Ha levelet küldenek (a helyi szerveren keresztül is), akkro ugye ez lesz a feladó címe. A helyi szervernek azonban _semmi_ köze ehhez a domainhez, nem ő végzi ezen címekhez a kézbesítést. Ez csak egy smarthost szerver, nincs bejegyzett domainje, nem felel semmiféle levélért, csak a usernev@localhost, usernev@szerverneve helyi leveleket kézbesíti helyben, minden mást továbbít a relay-el keresztül a szolgáltató smtp szerverére.
tehát ha a user küld egy kimenő levelet a helyi szerveren át, akkor a feladó címe az lesz, hogy akarki@valamilyendomain.hu, ezt a postfix (mivel nem az ő hatásköre) rögtön küldi relay-en keresztül.
ha viszont nem megy a relay szerver (szolgáltató smtp szervere), akkor ugye nem kézbesíti a levelet a szerver, de erről a user nem tud semmit. ha viszont beállítok notificationt erre az esetre, az visszaküldi a _feladónak_. és mivel a feladó email címe nem helyi cím, ezért a DNS üzenetet is próbálja relay-zni a postfix. ez megint nem sikerül, és újabb DNS üzenet, és így egy loop alakulna ki. (illetve ha lenne fallback relay, akkor a default relay elérhetetlensége esetén a fallback relayt használná a postfix a DNS küldésre, ha jól sejtem. csakhogy nincsen fallback relay sajnos.)
az lenne a megoldás, hogy a bounce a DNS küldése előtt az eredeti üzenet feladóját (akinek küldeni fogja a dns-t) egy alias táblából átírná az email címnek megfelelő helyi user címre. tehát pl: kovacsgeza@valamilyendomain.hu -> kovacsgeza@localhost, és erre a címre küldené a dns-t. így innentől a postfixnek ez már helyi levél lenne, és ezt szépen cyruson keresztül kézbesítené a user imap postafiókjába.
tehát lényegében összefoglalva annyit kéne csinálni, hogy a bounce esetén a feladó emailcímét átírni egy megfelelő helyi emailcímre, valamilyen alias-szal, és kész is. (ha jól sejtem)
----------------------------------
feel the beat - it's everywhere!
- A hozzászóláshoz be kell jelentkezni
Na ez egy eleg bonyi rendszer hallod... hat en egyre tudok gondolni, kulso scripttel figyelni a mailq kimenetet per mail (van egyedi azonosito a mailq kimeneteben), es ha valami error van, akkor a script kikuld egy "az uzenet majd kezbesitesre fog kerulni, be patient" levelet valami helyi cimre. A postfix ugyan bele szokik nyulni a levelbe, de nem ennyire durvan, es foleg nem bounce eseten.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni