Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[SMTP] Batched SMTP relay opzetten?

Pagina: 1
Acties:

  • 0fbe
  • Registratie: Januari 2004
  • Laatst online: 29-11 07:16
Beste Forummers,

Op het moment heb ik een Exchange 2007 server draaien achter een redelijke internet verbinding. Om er voor te zorgen dat ik mijn SMTP mail nog steeds kan ontvangen, als de internet verbinding of de server down is, wil ik graag op een dedicated server een batched SMTP relay opzetten.

Deze relay moet twee functies hebben:
  • Alle mail via SMTP ontvangen en relayen naar de server indien deze beschikbaar is. Als dat niet het geval is, de mail in een queue zetten voor latere aflevering.
  • De mail op spam filteren dmv SpamAssassin.
Op het internet zijn een aantal oplossingen te vinden die met ETRN werken. Echter heeft Exchange 2007 en hoger geen ETRN support meer. Hierdoor zijn deze oplossingen niet meer toepasbaar.

Heeft iemand enig idee of het bovenstaande toch met Postfix of EXIM te bereiken valt of met een ander stukje software?

  • GraveR
  • Registratie: Januari 2000
  • Laatst online: 22-08 19:26
Kan vrij simpel met Postfix door voor dat domein een transport-rule aan te maken, voorbeeld

Uit /etc/postfix/main.cf
relay_domains = [...],<domein>.<tld>
transport_maps = hash:/etc/postfix/transport

Uit /etc/postfix/transport
<domein>.<tld> smtp:<naamvandeeigenlijkeontvanger>.<domein>.<tld>:<poort>

Indien je alleen een IP hebt en geen naam:
<domein>.<tld> smtp:[ip]:<poort>

Na iedere aanpassing van /etc/postfix/transport draaien:
postmap /etc/postfix/transport

De MX kun je laten staan op de Postfix-machine.

[ Voor 9% gewijzigd door GraveR op 11-09-2010 19:55 ]


  • 0fbe
  • Registratie: Januari 2004
  • Laatst online: 29-11 07:16
Bedankt voor je reactie,
Zover ik weet gaat dit inderdaad goed met het relayen naar een server die online is. Indien deze niet online is zal er een non-delivery report gestuurd worden. En dat is juist wat ik dus niet wil.

[ Voor 65% gewijzigd door 0fbe op 11-09-2010 20:34 ]


  • GraveR
  • Registratie: Januari 2000
  • Laatst online: 22-08 19:26
simplendi schreef op zaterdag 11 september 2010 @ 20:31:
Bedankt voor je reactie,
Zover ik weet gaat dit inderdaad goed met het relayen naar een server die online is. Indien deze niet online is zal er een non-delivery report gestuurd worden. En dat is juist wat ik dus niet wil.
Je kunt ervanuitgaan dat ik dit getest heb alvorens het neer te kwakken. Er komt inderdaad een 4xx-transient error, maar een DSN wordt pas, als waarschuwing, over X tijdseenheden verstuurd (geconfigureerd met delay_warning_time, deze staat standaard op 0h, dus uit).
Sep 11 19:47:39 <munged> postfix/smtp[5487]: <munged>: to=<<munged>@<munged>.<munged>>, relay=none, delay=0.09, delays=0.06/0/0.03/0, dsn=4.4.1, status=deferred (connect to <munged>[<munged>]:2525: Connection refused)

[ Voor 5% gewijzigd door GraveR op 11-09-2010 21:06 ]


  • 0fbe
  • Registratie: Januari 2004
  • Laatst online: 29-11 07:16
Even een schop:

Een tijdje draait postfix al naar toebehoren, omdat we relatief veel spam krijgen, zaten we te denken om Greylisting in te schakelen. Daarvoor hebben we postgrey op de server geïnstalleerd en deze werkt ook. Echter wordt alle e-mail voor de relay_domains gewoon door gegeven zonder enige vorm van greylisting.

Onze config:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

myhostname = host.domain.tld
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = host.domain.tld , localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all


relay_domains = relaydomain.tld
transport_maps = hash:/etc/postfix/transport.db

message_size_limit = 100000000

#spam fighting rules
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_helo_restrictions = 
    reject_unknown_helo_hostname
    reject_non_fqdn_helo_hostname
    
smtpd_recipient_restrictions = 
    reject_unauth_destination
    reject_invalid_hostname
    reject_non_fqdn_hostname
    reject_non_fqdn_sender
    check_policy_service inet:127.0.0.1:10023

Wat ik ook probeer met smtpd_recepient_restrictions, alles wordt direct geforward. Nu vermoedde ik dat deze restrictions niet gecheckt worden voor relay domains maar dat kan ik nergens vinden in de postfix documentatie