spamassassin_rules
spamassassin_rules copied to clipboard
Implementacja DirectAdmin
Witam, Bawiłem się trochę dostosowaniem local.cf.reguly.ZABOJCASPAMU do środowiska DA i obsługi wielu domen. Konkretnie mam na myśli zamiana ciągu WLASNADOMENA na liste domen obsługiwanych globalnie w obrębie DA. Może komuś się przyda.
Najpierw konwersja listy domen na ciąg obsługiwany przes SA
cat /etc/virtual/domainowners | cut -d ":" -f 1 | tr "\n" "|" | head -c-1 >> listadomen
A następnie podmiana w pliku reguł.
sed "s/=WLASNADOMENA/=$(cat listadomen)/" local.cf.reguly.ZABOJCASPAMU
No i oczywiście dodanie w pliku /etc/mail/spamassassin/local.cf na samym dole
include /etc/mail/spamassassin/local.cf.BL.SPAMTRAP
include /etc/mail/spamassassin/local.cf.BL.ZABOJCASPAMU
Podaje swój skrypt oparty na komentarzu powyżej do pobierania reguł do globalnego Spamassassin.
Wystarczy dodać na samym dole pliku:
/etc/mail/spamassassin/local.cf
linijkę:
include /etc/mail/spamassassin/local.cf.reguly.ZABOJCASPAMU
Następnie uruchomić skrypt (kod poniżej).
kod skrytpu:
#!/bin/bash
#
# Wgrywanie reguł ze strony http://zabojcaspamu.pl
# Serwer z DirectAdminem
# Katalog docelowy z ktorego zaczytuje reguły SA
SAVE_DIR="/etc/mail/spamassassin"
# LINK
LINK="https://raw.githubusercontent.com/zabojcaspamu/spamassassin_rules/master/local.cf.reguly.ZABOJCASPAMU"
# PLIK
FILE="local.cf.reguly.ZABOJCASPAMU"
wget -q -O $SAVE_DIR/$FILE $LINK
LISTADOMEN=`cat /etc/virtual/domainowners | cut -d ":" -f 1 | tr "\n" "|" | head -c-1`
sed -i "s/=WLASNADOMENA/=$LISTADOMEN/" $SAVE_DIR/$FILE
sed -i "s/\/WLASNADOMENA\//\/$LISTADOMEN\//" $SAVE_DIR/$FILE
/etc/init.d/exim restart
Dziala wam skrypt poprawnie? Moze go gdzies u siebie upublicznisz? Chetnei podlinkuje
U mnie działa poprawnie. Ja byłem tylko inicjatorem wątku.
U mnie działa. Poczyniłem drobną modyfikację, tak aby zaciągał także blacklistę:
#!/bin/bash
#
# Wgrywanie reguł ze strony http://zabojcaspamu.pl
# Serwer z DirectAdminem
# Katalog docelowy z ktorego zaczytuje reguły SA
SAVE_DIR="/etc/mail/spamassassin"
# LINKI
RULES_LINK="https://raw.githubusercontent.com/zabojcaspamu/spamassassin_rules/master/local.cf.reguly.ZABOJCASPAMU"
BL_LINK="https://raw.githubusercontent.com/zabojcaspamu/spamassassin_rules/master/local.cf.BL.ZABOJCASPAMU"
# PLIKI
RULES_FILE="local.cf.reguly.ZABOJCASPAMU"
BL_FILE="local.cf.reguly.ZABOJCASPAMU"
wget -q -O $SAVE_DIR/$RULES_FILE $RULES_LINK
wget -q -O $SAVE_DIR/$BL_FILE $BL_LINK
LISTADOMEN=`cut -d ":" -f 1 /etc/virtual/domainowners | tr "\n" "|" | head -c-1`
sed -i "s/=WLASNADOMENA/=$LISTADOMEN/" $SAVE_DIR/$RULES_FILE
sed -i "s/\/WLASNADOMENA\//\/$LISTADOMEN\//" $SAVE_DIR/$RULES_FILE
/etc/init.d/exim restart
BL_FILE="local.cf.reguly.ZABOJCASPAMU"
Powinno być --> BL_FILE="local.cf.BL.ZABOJCASPAMU"
/etc/init.d/exim restart
systemctl restart exim #debian 11 (bullseye)