PDA

Bekijk Volledige Versie : exim allowed-host user-based



huizinga
07/01/10, 02:11
Wij draaien een MX-based spamfilter. Een redelijk aantal klanten van ons met een eigen mailserver (exchange server op kantoor) maken hiervan gebruik. in exchange kan je aangeven dat mail alleen vanuit de ipadressen van het spamfilter mogen komen om te voorkomen dat verstuurders het spamffilter overslaan en de mail rechtstreeks afleveren bij de exchange server.

Nu willen we het spamfilter ook gaan aanbieden voor klanten die op een directadmin server zitten. Aangezien er voor dit spamfilter een extra bijdrage betaald moet worden en dus niet elke klant dit heeft wil ik op user niveau kunnen instellen welke users wel en niet restricted zijn om mail alleen te ontvangen van het spamfilter. (ik kan moeilijk alle klanten op de server verplichten voor het spamfilter te betalen)

Wat het mooiste zou zijn is dat ik een config file heb waar de usernames van de spamfilter gebruikers in staan die dan door de exim configuratie gebruikt wordt om te kijken of de afzender-mailserver wel allowed is.

Ik heb al eens het een en het ander getest maar ik krijg het niet voor elkaar om deze instelling user-based te maken.

Iemand suggesties? ervaring hiermee?

ju5t
07/01/10, 09:34
hostlist accept_hosts = 127.0.0.1 : 10.2.39.121

acl_check_rcpt:

deny message = Not allowed to send e-mail to this server
domains = ${lookup{$value}lsearch{/var/conf/relay_users}}
hosts = !+accept_hosts

Alweer even terug, maar iets in deze richting?

huizinga
07/01/10, 12:19
Het werkt een heel eind, maar ik loop nog tegen 1 probleem aan.

dit heb ik gedaan:



bij:
# define local lists
domainlist spamloos_domains = lsearch;/etc/spamloos_relay_users
hostlist spamloos_accept_hosts = /etc/spamloos_hosts_ip


onder:
# ACL that is used after the RCPT command
check_recipient:

deny message = Not allowed to send e-mail to this server directly.
domains = +spamloos_domains
hosts = !+spamloos_accept_hosts


als ik connect vanuit het mx-spamfilter wordt mijn mail accepted.
als ik connect vanuit een ander ip krijg ik een 550 (zoals verwacht)

Nu zit ik met 1 probleempje:
Als ik de smtp van de directadmin server gebruik en een mail verstuur naar een host in "spamloos_domains" krijg ik ook een 550.

De rede is logisch, de mail wordt intern gerouteerd naar de juiste mailbox en niet eerst door het spamfilter verzonden.

In directadmin heb je een mooi vinkje waarmee je kunt aangeven dat de mail op een externe mailserver afgeleverd wordt. Als ik die aan zet wordt hij niet meer intern gerouteerd, maar ook niet meer geaccepteerd als hij terug aan komt omdat hij de domeinnaam dan gewoon uit de "accepted domains" haalt.

Een idee hoe ik dit laatste probleem kan oplossen?

ju5t
07/01/10, 13:23
Volgens mij moet je dan 127.0.0.1 : : 10.2.39.121 gebruiken, de dubbele : pakt als het goed is intern gerouteerde e-mail op. Worth a shot.

huizinga
07/01/10, 14:12
Volgens mij moet je dan 127.0.0.1 : : 10.2.39.121 gebruiken, de dubbele : pakt als het goed is intern gerouteerde e-mail op. Worth a shot.

Ga ik zo proberen.. maar eigenlijk wil ik dus dat die mail helemaal niet intern gerouteerd wordt maar door het spamfilter gaat.. (anders zouden mijn klanten onderling niet door het spamfilter gaan, en ook mail vanuit websites op de shared-hosting bak niet gefilterd worden.. om dan maar niet te denken aan het moment dat iemand een exploit vind bij een van mijn klanten op die machine en spam gaat versturen, dan zijn al mijn klanten een gemakkelijk doelwit..)

Kan ik niet ergens mee aangeven dat mail voor de betreffende domeinnamen altijd extern gerouteerd wordt, maar wel geaccepteerd wordt als het van het mx-spamfilter af komt..

edit:
zowel 127.0.0.1 : : 10.2.39.121 als 127.0.0.1 : 10.2.39.121 in de spamloos_accept_hosts zetten heeft geen resultaat

huizinga
22/01/10, 19:25
Iemand nog een idee?