install_postfix_advanced.sh: adjust '/etc/postfix/header_checks'.
This commit is contained in:
@@ -3616,41 +3616,58 @@ fi
|
|||||||
_file="/etc/postfix/header_checks.pcre"
|
_file="/etc/postfix/header_checks.pcre"
|
||||||
echononl " Create file '$_file' used for header replacing"
|
echononl " Create file '$_file' used for header replacing"
|
||||||
if [[ ! -f "$_file" ]]; then
|
if [[ ! -f "$_file" ]]; then
|
||||||
cat << EOF > "$_file"
|
cat << 'EOF' > "$_file"
|
||||||
# ---
|
# ---
|
||||||
# - Replace headers
|
# - Header Checks - /etc/postfix/header_checks
|
||||||
# ---
|
# ---
|
||||||
|
#
|
||||||
|
# Ziel: offensichtlich kaputte RFC-Header ablehnen (wenig False Positives)
|
||||||
|
|
||||||
# - Replace recieved from
|
########################################
|
||||||
#/^Received: from (.* \\([-._[:alnum:]]+ \\[[.[:digit:]]{7,15}\\]\\)).*?([[:space:]]+).*\\(Authenticated sender: ([^)]+)\\)(.*)/ REPLACE Received: from [127.0.0.1] (localhost [127.0.0.1])\$2(Authenticated sender: \$3)\$4
|
# A) Kaputter From:-Header
|
||||||
|
########################################
|
||||||
|
|
||||||
|
# 1) From: ist leer
|
||||||
|
/^From:\s*$/ REJECT Invalid From header (empty) - Spamschutzregel FROM-1001
|
||||||
|
|
||||||
|
# 2) Mehr als ein '@' im From:-Header -> syntaktisch kaputt
|
||||||
|
/^From:.*@.*@/ REJECT Invalid From header (multiple @) - Spamschutzregel FROM-1002
|
||||||
|
|
||||||
|
|
||||||
# ---
|
# 3) Mehrere Mailboxen durch Komma getrennt (wie: Die@..., Lions@..., ...)
|
||||||
# - Ignore Headers
|
# (Legitime Fälle nutzen i.d.R. Display-Namen/Group-Syntax; dieses Muster ist in Spam sehr häufig)
|
||||||
# ---
|
/^From:\s*[^<>,]+@[^,]+,\s*[^<>,]+@/ REJECT Invalid From header (multiple mailboxes) - Spamschutzregel FROM-1003
|
||||||
|
|
||||||
#/^\s*User-Agent/ IGNORE
|
# 4) Typische kaputte UTF-8-Fragmente
|
||||||
#/^\s*X-Enigmail/ IGNORE
|
/^From:.*\xC3\xA2/ REJECT Invalid UTF-8 in From header - Spamschutzregel FROM-1004
|
||||||
#/^\s*X-Mailer/ IGNORE
|
|
||||||
#/^\s*X-Originating-IP/ IGNORE
|
|
||||||
|
|
||||||
|
|
||||||
# ---
|
########################################
|
||||||
# - Reject / Discard headers
|
# B) Optional: sehr spezifische lokale Blacklist
|
||||||
# ---
|
########################################
|
||||||
|
|
||||||
/^To:.*<>/ REJECT Possible SPAM Blank email address To: header - Header-Spamschutzregel T0-1001
|
#/^Reply-To: .+\@inx1and1\..+/ REJECT Possible spam (local pattern)
|
||||||
|
|
||||||
/\(envelope-from <>\)/ REJECT Possible SPAM - Header-Spamschutzregel RECIEV-1001
|
|
||||||
|
|
||||||
/^Reply-To: .+\@inx1and1\..+/ REJECT Possible SPAM - Header-Spamschutzregel REPLY-1001
|
########################################
|
||||||
|
# C) Warn
|
||||||
|
########################################
|
||||||
|
|
||||||
/^From:.*<>/ REJECT Possible SPAM - Header-Spamschutzregel FROM-1001
|
# Date-Rejects sind oft zu aggressiv -> wenn nötig: lieber taggen oder loggen statt reject
|
||||||
|
/^Date: .* 19[0-9][0-9]/ WARN Date far in the past Header-Spamschutzregel DATE-1001
|
||||||
|
/^Date: .* 200[0-9]/ WARN Date far in the past Header-Spamschutzregel DATE-1002
|
||||||
|
/^Date: .* 201[0-9]/ WARN Date far in the past Header-Spamschutzregel DATE-1003
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# Bemerkungen
|
||||||
|
########################################
|
||||||
|
|
||||||
|
# (envelope-from <>) nicht pauschal rejecten:
|
||||||
|
# echte DSNs/Bounces haben legitimerweise MAIL FROM: <>
|
||||||
|
#/\(envelope-from <>\)/ REJECT Null envelope-from
|
||||||
|
|
||||||
/^Date: .* 19[0-9][0-9]/ REJECT Date from the past. Fix your system clock. - Header-Spamschutzregel DATE-1001
|
|
||||||
/^Date: .* 200[0-9]/ REJECT Date from the past. Fix your system clock. - Header-Spamschutzregel DATE-1002
|
|
||||||
/^Date: .* 201[0-9]/ REJECT Date from the past. Fix your system clock. - Header-Spamschutzregel DATE-1003
|
|
||||||
/^Date: .* 2020/ REJECT Date from the past. Fix your system clock. - Header-Spamschutzregel DATE-1004
|
|
||||||
EOF
|
EOF
|
||||||
if [[ $? -eq 0 ]] ; then
|
if [[ $? -eq 0 ]] ; then
|
||||||
echo_ok
|
echo_ok
|
||||||
|
|||||||
Reference in New Issue
Block a user