Hallo!
Ich benutze Exim auf einem Suse 10.2 System.
Um Spam zu verringen, möchte ich Greylisting einsetzen.
Dazu habe ich den Deamon "greylistd" über Yast installiert und testweise mit einem von Google gefundenen "Konfigurationscode" in meiner exim.conf eingerichtet.
Das ganze funktionierte gut und auch zuverlässig.
Leider habe ich nach ein paar Stunden festestellen müssen, dass intern keinen Mails mehr versendet werden konnte.
Nun gut! Das ganze hat mich nochmals dazu bewogen dieses ganze Greylisting und die Implementierung in Exim zu überdenken.
An dieser Stelle möchte ich die Konfiguration zur Diskussion stellen und um Hilfe bitte um am Schluss kein "offenes Relay" zu sein.
Mein ACL Bereich in der Exim.conf sieht wie folgt aus:
Die Greylisting ACL würde ich an der Stelle "Hier würde ich Greylisting beginnen lassen!
" (Siehe ACL exim.conf) beginnen lassen.
Quelle: E-Mail: Greylisting mit Exim und greylistd
An dieser Stelle ist mir noch etwas unklar:
zu "!hosts="
Zitat der oben genannten Quelle:
Nur auf nummer Sicher zu gehen:
Hierbei handelt es sich nur um den Empfang der E-Mails. Ich werde durch ein Whitelisting eines Hosts nicht automatisch zu einem offenen Realy?
"dnslists" und "verify" würde ich raus nehmen. Bzw. müsste ich mir über das zusätliche Verifizieren nochmals Gedanken machen.
Hebel ich mit dem oben genannten ACL Abschnitte nachfolgende "Sicherheitsmechnismen" aus?
Bzw. ist die geplante Stelle in der ACL für das Greylisting richtig?
Gruß,
Gammla
Ich benutze Exim auf einem Suse 10.2 System.
Um Spam zu verringen, möchte ich Greylisting einsetzen.
Dazu habe ich den Deamon "greylistd" über Yast installiert und testweise mit einem von Google gefundenen "Konfigurationscode" in meiner exim.conf eingerichtet.
Das ganze funktionierte gut und auch zuverlässig.
Leider habe ich nach ein paar Stunden festestellen müssen, dass intern keinen Mails mehr versendet werden konnte.
Nun gut! Das ganze hat mich nochmals dazu bewogen dieses ganze Greylisting und die Implementierung in Exim zu überdenken.
An dieser Stelle möchte ich die Konfiguration zur Diskussion stellen und um Hilfe bitte um am Schluss kein "offenes Relay" zu sein.
Mein ACL Bereich in der Exim.conf sieht wie folgt aus:
Code:
######################################################################
# ACL CONFIGURATION #
# Specifies access control lists for incoming SMTP mail #
######################################################################
begin acl
# This access control list is used for every RCPT command in an incoming
# SMTP message. The tests are run in order until the address is either
# accepted or denied.
acl_check_rcpt:
# Accept if the source is local SMTP (i.e. not over TCP/IP). We do this by
# testing for an empty sending host field.
accept hosts = :
# local via smtp on 127.0.0.1
accept hosts = 127.0.0.1
#############################################################################
# The following section of the ACL is concerned with local parts that contain
# @ or % or ! or / or | or dots in unusual places.
deny message = Restricted characters in address
domains = +local_domains
local_parts = ^[.] : ^.*[@%!/|]
deny message = Restricted characters in address
domains = !+local_domains
local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
#############################################################################
# Deny unless the sender address can be verified.
require verify = sender
#############################################################################
# There are no checks on DNS "black" lists because the domains that contain
# these lists are changing all the time. However, here are two examples of
# how you could get Exim to perform a DNS black list lookup at this point.
# The first one denies, while the second just warns.
#
# deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text
# dnslists = black.list.example
#
# warn message = X-Warning: $sender_host_address is in a black list at $dnslist_domain
# log_message = found in $dnslist_domain
# dnslists = black.list.example
#############################################################################
#
# Hier würde ich Greylisting beginnen lassen!
#
# Accept if the address is in a local domain, but only if the recipient can
# be verified. Otherwise deny. The "endpass" line is the border between
# passing on to the next ACL statement (if tests above it fail) or denying
# access (if tests below it fail).
accept domains = +local_domains
endpass
message = Empfaenger unbekannt / unknown user
verify = recipient
# Accept if the address is in a domain for which we are relaying, but again,
# only if the recipient can be verified.
accept domains = +relay_to_domains
endpass
verify = recipient
# If control reaches this point, the domain is neither in +local_domains
# nor in +relay_to_domains.
# Accept if the message comes from one of the hosts for which we are an
# outgoing relay. Recipient verification is omitted here, because in many
# cases the clients are dumb MUAs that don't cope well with SMTP error
# responses. If you are actually relaying out from MTAs, you should probably
# add recipient verification here.
accept hosts = +relay_from_hosts
# Accept if the message arrived over an authenticated connection, from
# any host. Again, these messages are usually from MUAs, so recipient
# verification is omitted.
accept authenticated = *
# Reaching the end of the ACL causes a "deny", but we might as well give
# an explicit message.
deny message = relay not permitted
# This ACL is used after the contents of a message have been received. This
# is the ACL in which you can test a message's headers or body, and in
# particular, this is where you can invoke external virus or spam scanners.
# Some suggested ways of configuring these tests are shown below, commented
# out. Without any tests, this ACL accepts all messages. If you want to use
# such tests, you must ensure that Exim is compiled with the content-scanning
# extension (WITH_CONTENT_SCAN=yes in Local/Makefile).
acl_check_data:
# Accept the message.
accept
Die Greylisting ACL würde ich an der Stelle "Hier würde ich Greylisting beginnen lassen!
" (Siehe ACL exim.conf) beginnen lassen.
Code:
defer
message = $sender_host_address is not yet authorized to deliver \
mail from <$sender_address> to <$local_part@$domain>. \
Please try later.
log_message = greylisted.
!senders = : postmaster@*
!hosts = : +relay_from_hosts : \
${if exists {/etc/greylistd/whitelist-hosts}\
{/etc/greylistd/whitelist-hosts}{}} : \
${if exists {/var/lib/greylistd/whitelist-hosts}\
{/var/lib/greylistd/whitelist-hosts}{}}
!authenticated = *
domains = +local_domains : +relay_to_domains
dnslists = pbl.spamhaus.org : bl.spamcop.net : dnsbl.sorbs.net
verify = recipient/callout=10s,defer_ok
condition = ${readsocket{/var/run/greylistd/socket}\
{--grey \
$sender_address \
$sender_address \
$local_part@$domain}\
{5s}{}{false}}
Quelle: E-Mail: Greylisting mit Exim und greylistd
An dieser Stelle ist mir noch etwas unklar:
zu "!hosts="
Zitat der oben genannten Quelle:
Diese Hosts werden vom Greylisting generell ausgenommen: Einlieferungen, die nicht per SMTP erfolgen, sondern durch lokalen Aufruf von Exim; Einlieferungen durch Hosts, die per SMTP relayen dürfen, und Einlieferungen durch Hosts, die auf einer der bereits zuvor genannten Whitelists stehen.
Nur auf nummer Sicher zu gehen:
Hierbei handelt es sich nur um den Empfang der E-Mails. Ich werde durch ein Whitelisting eines Hosts nicht automatisch zu einem offenen Realy?
"dnslists" und "verify" würde ich raus nehmen. Bzw. müsste ich mir über das zusätliche Verifizieren nochmals Gedanken machen.
Hebel ich mit dem oben genannten ACL Abschnitte nachfolgende "Sicherheitsmechnismen" aus?
Bzw. ist die geplante Stelle in der ACL für das Greylisting richtig?
Gruß,
Gammla
Last edited by a moderator: