PDA

Bekijk Volledige Versie : Mail versturen naar externe MX host



TimeLord
03/03/10, 11:39
Ik heb een domein op mijn server draaien, maar de Email gaat direct naar de klant z'n exchange server. Dus de MX records wijzen naar een extern IP-adres.

Zo ver geen problemen.

Maar zodra er een formulier vanaf de website verstuurd moet worden, of vanuit de webmail naar het eigen Email adres, dan werkt het niet. Het lijkt erop alsof de server toch het Email adres intern probeert te vinden.

De volgende zaken draaien op de server (FreeBSD):
- directadmin
- dovecot
- exim
- httpd
- mysqld
- named
- proftpd
- sshd

Want als de Email gewoon door de server zelf zou gehost zijn, dan gaat het wel goed. Het lijkt erop dat ie het ergens niet snapt.... In /var/log/messages, maillog en auth.log vind ik niets terug.

sdetroch
03/03/10, 11:52
In het systeem de mail afzetten voor dit domein (dus niet enkel mailbox verwijderen), hij behandelt dit inderdaad als lokale mail, je moet uw software op de een of andere manier wijsmaken dat hij niet authoritief is voor dat domein, dan zal hij de mail naar buiten sturen (waar het wel in orde komt met de juiste mx-records). Hoe dat juist met uw software moet kan ik niet zeggen wegens andere software hier, maar dat is in de meeste controlpanels (of anders rechtstreeks in mailconfig) in te stellen.

Marco Mahieu
03/03/10, 11:52
Waarschijnlijk probeert hij de e-mail dan alsnog intern te verwerken. Probeer eens een e-mail box OOK op de server zelf aan te maken, en kijk eens of hij daarin terecht komt.

Er zit ergens een instelling waarmee je de server kan vertellen dat hij de e-mail niet intern mag verwerken, ik weet alleen niet uit mijn hoofd waar die zit.

Wat je ook nog kan proberen is een forward aan te maken. Dus bijv: voorbeeld@domein.nl -> voorbeeld@domein.nl
Ik heb geen idee of dit helpt of niet, maar je kan het altijd even proberen natuurlijk ;)

TimeLord
03/03/10, 12:18
Heren bedankt!
Jullie hebben me een aardig eind op weg geholpen.

Het probleem is opgelost door in /etc/virtual/domains de domeinen te verwijderen welke geen lokale Email afhandeling hebben.

Trafego
03/03/10, 12:21
een webserver zal altijd een email intern proberen af te werken mits je niet aangeeft dat hij eerst naar buiten moet. Anders zal de server het domeinnaam intern zien en het bv in een catchall wegzetten.

Draai je bv met een DA controlpanel kun je bij dns aangeven dat hij niet local zijn mail moet verwerken maar naar buiten moet kicken :)

rackhost.be
03/03/10, 12:23
kan je in directadmin ook zelf regelen,
naast de dns records ook naar "MX records" van de user gaan en hetvolgende uitvinken:
"Use this server to handle my emails.
If not, change the MX record and uncheck this option"

TimeLord
03/03/10, 12:37
kan je in directadmin ook zelf regelen,
naast de dns records ook naar "MX records" van de user gaan en hetvolgende uitvinken:
"Use this server to handle my emails.
If not, change the MX record and uncheck this option"

Die optie heb ik nog niet kunnen vinden... Hoe kom ik daar? Als admin? Reseller? Gebruiker?
Want zo te zien kan ik alleen als admin de DNS wijzigen, maar deze opties zie ik niet. :sweatdrop:

Marco Mahieu
03/03/10, 12:40
Ohja, daar zat die optie ja. Zoals ik al zij, hij zit ergens.

Dus je moet DNS beheer bij een gebruiker aan hebben staan, inloggen bij die gebruiker, en dan onder e-mail vind je het knopje "MX records"

TimeLord
03/03/10, 12:47
Klasse! Ik heb het nu inderdaad gevonden... Stond rechts in het Email management menu, terwijl ik onder DNS zat te zoeken. (Nadat ik DNS beheer voor de gebruiker had ingeschakeld).

Bedankt!!

Marco Mahieu
03/03/10, 12:50
Klasse! Ik heb het nu inderdaad gevonden... Stond rechts in het Email management menu, terwijl ik onder DNS zat te zoeken. (Nadat ik DNS beheer voor de gebruiker had ingeschakeld).

Bedankt!!

Klopt, en is het probleem nu ook verholpen? (Lijkt me wel, maar voor de zekerheid ;))

TimeLord
03/03/10, 13:26
Het was met mijn oplossing ook al verholpen, maar dit is natuurlijk wel netter. Nadeel is alleen dat ik met jouw oplossing niet de aliassen voor het domein zie, maar enkel het hoofddomein.

Marco Mahieu
03/03/10, 13:32
Het was met mijn oplossing ook al verholpen, maar dit is natuurlijk wel netter. Nadeel is alleen dat ik met jouw oplossing niet de aliassen voor het domein zie, maar enkel het hoofddomein.

Logisch, op e-mail gebied is een alias precies hetzelfde als het hoofddomein... Als je de optie voor het hoofddomein uit zet, dan is hij uit, dus ook voor de alias...

TimeLord
03/03/10, 14:14
Dat zou je wel verwachten, maar dit was niet zo. In de DNS op het admin gedeelte stond een hele andere MX record ingesteld dan toen ik ging kijken als gebruiker in de MX records.

Marco Mahieu
03/03/10, 14:19
Dat zou je wel verwachten, maar dit was niet zo. In de DNS op het admin gedeelte stond een hele andere MX record ingesteld dan toen ik ging kijken als gebruiker in de MX records.

Nu gooi je 2 dingen door de war:

1) De optie of de e-mail voor een domein intern verwerkt moet worden of niet is gezamelijk. De e-mail boxen bestaan namelijk maar 1 keer, maar luisteren alleen naar meerdere namen.

2) De DNS gegevens van een alias zijn NIET gelijk aan het hoofddomein. De MX records zul je dus per domein, en dus ook per alias, goed moeten zetten.

TimeLord
03/03/10, 14:25
In het DNS overzicht van de admin zie je alle domeinen. Als je op een domein klikt, kom je daar ook de MX records tegen. Hier stond relay4.xxxx.nl, relay3.xxxx.nl
en bij de MX records onder de gebruiker stond nog de oude relay1.xxxx.nl en relay2.xxxx.nl
Het maakt ook verder niet uit, ik heb alles gelijk getrokken nu.

Randy
03/03/10, 14:42
Even anders doen. Voor het domein het vinkje bij de 'MX records' uitzetten voor lokale aflevering in DirectAdmin en het MX record wijzigen naar de klant.

Er is echter een betere optie: gebruik jouw server als relay, zodat de grootste bagger er door RBL's uitgehaald wordt en SpamAssassin eventueel nog wat finetuning doet, al dan niet in combinatie met filtering door ClamAV.

Pas de exim.conf aan en maak door het domein een manuele transportroute. Dat doe je door onder de 'domain_literal' een manaualroute toe te voegen:



# domain_literal:
# driver = ipliteral
# transport = remote_smtp

#
# Afleveren op Exchange
#
hub_route:
driver = manualroute
transport = remote_smtp
route_list = domein1.nl 212.79.254.230 ; domein2.nl 212.79.254.230

TimeLord
03/03/10, 14:57
Bedankt Randy!
Wat een mooie en perfecte oplossing. De klant zal zeer tevreden zijn!