Bekijk Volledige Versie : Mail Relay
We hebben een tweetal mail relay servers staan met Exim, die al onze e-mail relayen richting Exchange, hier vangen we dan het spam en virusscan gebeuren in op.
Nu zijn er een aantal klanten die dit ook willen gebruiken. Geen probleem, was het niet dat Hetnet en Planet poort 25 hebben geblokt.
Voor we van alles gaan proberen, was mijn vraag eigenlijk, is het volgende voldoende:
begin transports
remote_smtp:
driver = smtp
port = 25 : 26
transport_filter = /usr/bin/spamc
De port configuratie was eerst in z'n geheel niet aanwezig en dat werkt prima. Zal dit zo gaan werken of moet ik ergens anders naar kijken?
Ik heb er niet zo heel veel verstand van hoor, maar kunnen je klanten niet 578 als poort gaan gebruiken?
Ze kunnen wel op een andere poort draaien, dat is niet echt een probleem, maar wat er moet gebeuren is dat de relay server het wel naar de juiste poort door stuurt.
Wij draaien op de standaard manier, dus gebruiken we poort 25, maar als de klant poort 26 gebruikt moet ook daar mail afgeleverd kunnen worden.
Iemand enig idee?
je moet het gewoon op een andere poort draaien, en zeker zijn dat authenticatie vereist is voor het versturen van mail. Een veelgebruikte poort is 587 (ipv je 26).
Ik denk dat ik het niet helemaal goed heb uitgelegd.
E-mail -1- Ontvangende mail server -2- Ontvangende Exchange server
Het gaat mij om stap 2. Wij draaien het tussen gedeelte voor onze eigen Exchange servers, hier komt de mail binnen en stuurt het door over poort 25. Stel er komt een Exchange server bij op poort 587, 26 of wat dan ook, wat is dan de juiste instelling zodat de versturende server begrijpt wat er gebeurd - en het niet probeert af te leveren op poort 25.
Het liefst moeten beide ondersteund worden. Een oplossing voor de hier en daar geblokte poort 25 zie ik niet zitten. Het moet passen binnen onze huidige omgeving zonder aanschaf van extra hardware.
IPTables poort 587 naar 25 om laten zetten intern?
iptables -t nat -A PREROUTING -p tcp --dport 587 -j REDIRECT --to-ports 25
Ik denk dat GetUP bedoelt dat zijn exim server mail moet kunnen afleveren op een host met een opgegeven poort naar keuze. Welk afwijkt van poort 25 maar vooraf bepaalt is.
@GetUP,
mocht je ooit willen overstappen naar postfix kan ik je verder helpen, dit doen we zelf ook. Met exim heb ik een dergelijk setup nog nooit geprobeert te maken.
dan is de iptables oplossing van Randy vermoedelijk een van de eenvoudigste oplossingen.
Ik denk dat GetUP bedoelt dat zijn exim server mail moet kunnen afleveren op een host met een opgegeven poort naar keuze. Welk afwijkt van poort 25 maar vooraf bepaalt is.
Klopt inderdaad.
Het is de bedoeling dat het zowel op poort 25 als 26 (of welke poort dan ook, zolang aangegeven) geprobeerd wordt. Dus die iptables oplossing is het niet helemaal.
Klopt inderdaad.
Het is de bedoeling dat het zowel op poort 25 als 26 (of welke poort dan ook, zolang aangegeven) geprobeerd wordt. Dus die iptables oplossing is het niet helemaal.
Om een range op te geven die geprobeert moeten worden zal je niet gaan lukken. Dan moet je mail server een soort van poortscan gaan doen, totdat die er een vindt welke smtp praat.
Daarvoor is het mail protocol niet gemaakt. Sterker nog, de eerste open poort in dat geval, welke niet smtp praat, zal zorgen dat de mail terug in de queue gaat.
Portscan was ook zeker niet de bedoeling. Dat smtp daar niet voor is was me wel duidelijk :)
Ik ben niet goed genoeg met iptables verder, maar als ik het goed begrijp zou ik met:
iptables -t nat -A PREROUTING -p tcp -d 10.1.1.1 --dport 25 -j REDIRECT --to-ports 26
Al het verkeer wat over poort 25 naar IP adres 10.1.1.1 loopt, versturen over poort 26?
Want dan kunnen we per extra server waar nodig een nieuwe firewall rule aanmaken.
crazycoder
17/05/07, 17:52
Was het ook de bedoeling dat je iets ging filteren? Spam bijvoorbeeld... Je mompel :p er iets over in je op...
Waar heb jij het nou over? :p
Maar klopt wel, het moet ook gefilterd worden. Op welk moment gaat die firewall rule werken? Het moet namelijk niet zo zijn dat het helemaal niet door Exim heen gaat.
crazycoder
17/05/07, 19:44
Waar heb jij het nou over? :p
Geen idee :)
Maar klopt wel, het moet ook gefilterd worden. Op welk moment gaat die firewall rule werken? Het moet namelijk niet zo zijn dat het helemaal niet door Exim heen gaat.
Niet 100% zeker, maar volgens mij is dat exact wat zal gebeuren.
Bijvoorbeeld handig om verkeer naar een geheel ander IP door te sluizen. De rule ziet er dan wel ietwat anders uit..
Ik gebruik iptables hier niet voor maar zelf zou ik naar postrouting kijken.
Wordt het dan niet iets zoals het volgende?
iptables -t nat -A POSTROUTING -p tcp -d 10.1.1.1 --dport 25 -j REDIRECT --to-ports 26
Veel veranderd er volgens mij niet verder? Maar misschien dat hier iemand uitsluitsel over kan geven.
wat doe je nou moeilijk.. de volgorde is:
mail server --[jou ip]--> exim --[10.1.1.1]--> klant mail server
zodra de verbinding naat 10.1.1.1 moet is het toch al door jou exim heen gegaan..
Ja, maar als ik de man pages van iptables goed begreep is PREROUTING voor inkomend verkeer en POSTROUTING voor uitgaand.
Vandaar ;)
het gaat toch 2x door iptables heen...
maar ik laat het hierbij... *zucht*
Ja, het komt binnen via iptables - daarna gaat het pas naar Exim. Dit is dan het PREROUTING gebeuren. Verstuur je het daarna door naar de Exchange cluster, is dat het POSTROUTING gebeuren?
Dat zou betekenen dat als je PREROUTING gebruikt, de regel sowieso niet zou werken omdat het destination IP anders is als in het verstuurde TCP pakket.
Ik snap je punt niet helemaal.
Dat je eerst even de werking van iptables moet gaan leren..
Dat je DAARNA je vraag hier weer mag stellen.
Het kan allemaal een stuk simpeler.
remote_smtp:
driver = smtp
port = ${lookup{$domain} lsearch{/etc/exim/domain_ports}}
Hierin staat dan:
domain.com: 26
domain2.com: 25
En nu pakt ie netjes voor de ene domeinnaam poort 25 en voor de andere 26.