Toon posts:

[Postfix+Amavis] Mail van bepaalde IPs niet filteren?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste heren en dames,

Ik heb een Debian Sarge mailserver gebouwd, met daarop Postfix en Amavisd-new (allebei gewoon uit de standaard Debian packages). Deze server draait voor 1000+ mailboxes (IMAP m.b.v. cyrus) en is ingesteld om virussen en spam te filteren. Echter, in het serverpark waar dat ding draait, staan een hoop andere servers die mail sturen via de Debian Sarge mailserver... Ik zou graag zien dat deze mail (van een beperkt aantal IPs) niet gescand wordt op virussen en spam. Deze mail wordt namelijk gecontroleerd verzonden, daar zal dus geen spam of virus bijzitten.

De huidige (relevante) configuratie in main.cf van Postfix:
code:
1
content_filter = smtp-amavis:127.0.0.1:10024


en in master.cf:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
smtp-amavis     unix    -       -       y       -       3       smtp -o smtp_data_done_timeout=1200
127.0.0.1:10025 inet    n       -       n       -       -       smtpd
    -o content_filter=
    -o local_recipient_maps=
    -o relay_recipient_maps=
    -o smtpd_restriction_classes=
    -o smtpd_client_restrictions=
    -o smtpd_helo_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o mynetworks=127.0.0.0/8
    -o strict_rfc821_envelopes=yes
    -o smtpd_error_sleep_time=0
    -o smtpd_sort_error_limit=1001
    -o smtpd_hard_error_limit=1000


Ik wil dus als het ware zeggen tegen Postfix in main.cf:
code:
1
2
content_filter = smtp-amavis:127.0.0.1:10024
content_filter_exclude_ips = [een paar IPs van de andere servers]


Zodat mail van die andere servers niet gescand wordt (dat scheelt resources). Ik heb al zitten kijken naar een interne instelling van Amavis (iets met "local domains acl"), maar dat gaat niet lukken aangezien het niet gaat om mail van een domein, maar van een IP-adres. Volgens mij moet dit dus echt in Postfix opgelost worden.
Iemand suggesties? Op het internet wordt alleen maar gesproken over per-domain filtering, maar dat is dus niet van toepassing!

  • stefklep
  • Registratie: Januari 2003
  • Laatst online: 06-02 11:04

stefklep

((Stefklepje))

en als je daar nou gewoon een ip invult en geen domain mischien werkt het dan ook wel? of heb je dat al geprobeerd ?

  • Shuriken
  • Registratie: November 1999
  • Laatst online: 12-02 13:53

Shuriken

Life is all about priorities

nvm...je gebruikt geen spamassasin erbij....

[ Voor 59% gewijzigd door Shuriken op 29-03-2005 13:01 . Reden: Oops ]

I rather have a bottle in front of me, then a frontal lobotomie


Verwijderd

Topicstarter
Jawel, ik gebruik wel spamassassin, maar via Amavis... Of was dat je vraag niet?

Verwijderd

Topicstarter
@Stefklep: ik denk niet dat dat werkt, aangezien Amavis niet meer kan checken (misschien via een brakke header-check op headers die niet voor iedere MTA hetzelfde zijn) van welk IP het mailtje oorspronkelijk afkomstig is...

  • weijl
  • Registratie: Juli 2002
  • Niet online
hebben die boxes geen mailname dan?
weet niet of dat op externe ranges werkt (volgens mij wel hoor), maar op interne ranges zeker.

maw, elke server die mail verstuurd op IP basis geef je een mailname, (wsl hebben ze die al '/etc/mailname') bijv:
hoofdserver.domein.nl
andereserver1.domein.nl
andereserver2.domein.nl
etc..

dit zou opzich al moeten werken, zo niet zou je ook nog kunnen proberen om die namen in je hosts file op te nemen met de juiste IP's, volgens mij ben je er dan ook al.

et is maar een idee, maar ik heb het idee dat het hiermee wel te realiseren is, ik durf het alleen niet met 100% zekerheid te zeggen.

[ Voor 29% gewijzigd door weijl op 29-03-2005 13:56 ]


Verwijderd

Topicstarter
Ik snap je punt niet helemaal... Wat kan ik dan met die mailname?

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 11-02 20:32
Als de andere mailservers hun mail aanleveren op poort 10025 op je debian machine, en je de mynetworks aanpast met de IP's van die machines zou je het content filter moeten omzeilen.

Ik draai hier een FreeBSD machine met postfix en amavisd maar ik gok dat het hetzelfde werkt op een Debian bak: Postfix neemt mail aan op poort 25, gooit het door naar amavisd op poort 10024, welke het na de scan weer doorgooid naar postfix op poort 10025.

Dit zou je dan moeten wijzigen in je master.cf (wel de rest laten staan bij die regel ;))
127.0.0.1:10025 inet n - n - - smtpd
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8, 192.168.0.2, 192.168.0.3

Waar de 192 adressen dan natuurlijk die van de andere machines zijn. Op je andere machines moet je dan alleen aangeven (mits mogenlijk) dat de mail via de smarthost (Debian machine) op poort 10025 doorgestuurdt wordt. Kan dit niet dan heb ik zo 123 geen oplossing.

Verwijderd

Je had ook al gekeken naar de optie @bypass_spam_checks_acl in amavis.conf?

Verwijderd

Topicstarter
MrMenor: ja, maar dan moet je een lijst met domeinen opgeven, en dat gaat dus niet... Bovendien wil ik heel amavis niet betrekken in uitgaande mail, dit lijkt me meer een taak voor de MTA

  • weijl
  • Registratie: Juli 2002
  • Niet online
Verwijderd schreef op dinsdag 29 maart 2005 @ 13:58:
Ik snap je punt niet helemaal... Wat kan ik dan met die mailname?
et spijt als ik wat vaag over kom.
wat ik bedoel is dat je in je hosts file 'hostname' en 'ipaddress' invult, dan weet je systeem welke hostname/domein bij welk IP hoort. als je dan die zelfde namen gebruikt in je MTA (zoals eerder al vermeld,.. kan niet op IP maar wel op hostname/domein), dan resolved die volgens mij het juiste IP en ben je waar je wilt wezen.

wat ik bedoelde met die mailname is eigenlijk het zelfde. als al die boxes intern met elkaar verbonden staan, dan werkt dat op dezelfde manier.

ik weet dus niet 100% zeker of het klopt wat ik hier zeg, maar volgens mij werkt het zo.

  • riotrick
  • Registratie: Mei 2002
  • Laatst online: 24-01 10:44
KoeKk schreef op dinsdag 29 maart 2005 @ 15:32:
Als de andere mailservers hun mail aanleveren op poort 10025 op je debian machine, en je de mynetworks aanpast met de IP's van die machines zou je het content filter moeten omzeilen.

Ik draai hier een FreeBSD machine met postfix en amavisd maar ik gok dat het hetzelfde werkt op een Debian bak: Postfix neemt mail aan op poort 25, gooit het door naar amavisd op poort 10024, welke het na de scan weer doorgooid naar postfix op poort 10025.
8<
Dit is idd een prima oplossing. Ik doe pcies hetzelfde. We draaien een debian bak met postfix waar mail voor een zut domeinen op ontvangen en gescanned wordt. Wanneer we zelf een nieuwsbrief versturen doen we dat met het tweede smtp proces op poort 10025, waarmee je dus de spam/virus scan overslaat. Werkt prima zo.

Een andere oplossing is, wanneer de mailserver mail ontvangt en je alleen binnenkomende mail wilt filteren, dan kan je ook amavis / spamassassin via procmail aanroepen. Dan wordt uitgaande mail uberhaupt niet gescanned.

[ Voor 12% gewijzigd door riotrick op 29-03-2005 20:11 ]

Facebook :: Twitter :: PSN


Verwijderd

Topicstarter
Hmmm... Ik krijg het niet voor elkaar om voor bepaalde source IPs de packets te herschrijven (dus i.p.v. port 25 moet port 10025 gebruikt worden). Dit is wat ik nu doe:

code:
1
iptables -A PREROUTING -t nat -p tcp --dport 25 -s webserverIP -j DNAT --to-destination localhost:10025


Echter, als ik vanaf de webserver connect naar de mailserver (op poort 25), dan krijg ik een connection timeout... Iemand enig idee wat ik fout doe?

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 11-02 20:32
Ik zou zelf geen packets herschrijven (ik ben niet zo'n enorme IP goeroe ;)), Hoe verstuur je de mail op je clients? Draaien die een eigen SMTPD?

[ Voor 27% gewijzigd door KoeKk op 30-03-2005 09:27 ]


Verwijderd

Topicstarter
Nee, die connecten naar een hostname (zonder verder een poort op te geven, dus de std. poort 25). Als ik dat niet zou doen, dan betekent dat, dat ik ieder script/programma aan moet gaan passen om te connecten naar een poort anders dan 25. Dat is niet te doen... Dus vandaar dat ik van bepaalde IPs de packets wil herschrijven en intern doorduwen naar poort 10025, maar dat lukt dus niet...

Verwijderd

Topicstarter
Niemand enig idee waarom die rewrite niet werkt?
Pagina: 1