HowTo qsheff aktualisieren [Zusatz zu V-Server Strato SA + ClamAV mit qsheff

Hallo!

1. Ist der Swsoft Forumsbeitrag schon etwas älter und bezieht sich auf Plesk 7.1
2. Ist dort keine Stellungnahme / Empfehlung seitens Swsoft zu lesen

Gruß flyingoffice
 
Full AK zu flyingoffice.

Ich denke Sanymedia hatte hier ein ganz anderes Problem:
1. Mehrfacher Aufruf von install-wrapper, welches die qmail-queue.orig jedesmal überschreibt. (Sogar eine Rekursion bilden kann.)
2. Ein deaktivieren des Dr.Web hat eine neue qmail-queue erstellt, die dann wieder nutzbar war.

huschi.
 
Meistens scheitert es daran das spamd einfach nicht läuft und wenn doch dann nicht im TCP/IP Mode.

Wie kann ich überprüfen, ob spamd auf Socket oder auf TCP/IP läuft und ob er dort an oder aus ist?
 
Ok, netstat hab ich gemacht, woran erkenne ich SA?
Bei den IP-Verbindungen stehen nur Ports, bei den Sockets kann ich nichts von SA erkennen; also wohl ein TCP/IP.
 
Code:
tcp        0      0 127.0.0.1:783           0.0.0.0:*               LISTEN

Das bedeutet doch, dass es an ist; folglich müsste das ganze doch funktionieren!
 
Ich hab hier noch was:

Die Ausgabe des netstat ist:
Code:
tcp        0      0 127.0.0.1:783           0.0.0.0:*               LISTEN      27839/spamd -d -c -

"-d -c -" - Fehlt da nicht ein "L"?
 
OK, es funktioniert jetzt alles, seit ich den Plesk-SA hier deinstalliert habe.

Er erkennt den Spam, deswegen mach ich mir um das "L" keine sorgen mehr. Ich hab jetzt nochmal:

Code:
# netstat -lnp | grep spam
tcp        0      0 127.0.0.1:783           0.0.0.0:*               LISTEN      26303/spamd -d -c -
und
Code:
# netstat -ap | grep spam
tcp        0      0 h1114923.serverkomp:783 *:*                     LISTEN      26303/spamd -d -c -
unix  2      [ ]         DGRAM                    4927846 26303/spamd -d -c -

Das zweite (mit "unix 2) scheint doch ein Socket zu sein. Darf der existieren, wenn ich SA über TCP/IP laufen lasse? Wenn nein, wie krieg ich ihn weg?
 
Bzgl. "-L": Ziehe Deinen Putty mal etwas größer.
Und "DGRAM" == Datagram == "User Datagram Protocol" == UDP

huschi.
 
OK. Größerziehen brachte aber keinen Erfolg. Ich hab noch 20 Zeichen platz bis zum Ende der Konsole und trotzdem nur ein "-".
 
Fehlermeldung clam.c:44 no such file...

Hallo, Leute.

Das alte qsheff läuft einwandfrei bei mir, aber ich wollt doch mal die neue v2 testen.
Habe alle Schritte wie genannt durchgeführt, es wurden auch alle neuen Pfade in "/var/qsheff" angelegt.
Wenn ich es jedoch laufen lasse, kommt bei jeder Email ein "clam.c:44 no such file or directory". Ich nehm an, es hat was mit dem Aufruf von clamav zu tun, aber ich wüsste nicht, wo der Fehler liegen sollte. Die Socket-Datei ist jedenfalls vorhanden.

Wäre ja wirklich klasse, wenn das Programm sagen würde, WELCHE Datei es nicht gibt. Ich hasse diese Fehlermeldung, zumal sie eine interne vom Compiler ist. Das Programm selbst sollte aber testen, ob die nötigen Dateien vorhanden sind und es melden, wenn sie fehlen.

Grüße
Thomas
 
clam.c ist Bestandteil des qsheff-Paketes. -> /qsheff-II-2.1-r2/src
Wie hast Du qsheff kompiliert und was sagt das Log von ./configure?

Code:
./configure --with-clamav --with-clamd-socket=/var/lib/clamav/clamd-socket --enable-subject-tag --enable-virus-tag

Ein paar mehr Infos sollten es schon sein ;)

Gruss Rico
 
Hallo,

ich habe das Tutorial für das Update auf qsheff II von V40 auf meinem Server durchgespielt. Es funktioniert bis auf eine Kleinigkeit soweit alles. Und zwar werden Anhänge nicht per clamd gescannt. D.h. Testviren bzw. Anhänge werden durchgelassen. Meine clamd.log enthält folgende Eintäge sobald E-Mails mit Anhängen reinkommen:

Code:
Sat Jan 24 13:02:30 2009 -> /var/qsheff/tmp/q1232798547-193763-7746/test.png: Unable to open file or directory ERROR
Sat Jan 24 13:04:25 2009 -> /var/qsheff/tmp/q1232798662-115864-9512/test.tar.gz: Unable to open file or directory ERROR

clamd kann also auf das tmp Verzeichnis bzw. die Dateien nicht zugreifen. qsheff erstellt aber die temporären Mail Verzeichnisse, dass konnte ich soweit nachvollziehen. Mit root:nofiles werden die temporären Verzeichnisse unter /var/qsheff/tmp/ angelegt.

Noch zur Info:
Ich nutze Suse 10.3, qsheff-II-2.1-r3, ripmime und clamav. Meine qsheff.conf sieht folgendermaßen aus:

Code:
#
# EnderUNIX qSheff configuration file
#
# http://www.enderunix.org/qsheff
#
# $Id: qsheff.conf-default.in,v 1.4 2006/08/31 12:15:15 simsek Exp $
#

QSHEFFDIR = /var/qsheff
LOGFILE = /var/log/qsheff.log
RIPMIME = "/usr/local/bin/ripmime"

# Disable this if you are using Bogofilter.
# The qsheff signature will affect the results!!!
enable_qsheff_sign = 1

# Set debug level
# qsheff will log entries which have a debug level less than this value.
# debug_level = 99 logs everything
# debug_level = 0  logs only internal errors
#
#  level   Identifier   Comment
# ------- ------------ -----------------------------------------------
#   0      ERR          Internal error.
#   2      QUEUE        qSheff passed the mail to qmail-queue.
#   3      VIRUS        Antivirus software found a virus.
#   5      CUSTOM       Custom filter program caught a spam pattern.
#  11      SPAM         Found spam pattern.
#  13      ATTACH       Caught prohibited attach file.
#  15      HEADER       Mail header problem.
#
debug_level = 99

# When enabled, qSheff doesn't return the "permanantly error"
# for spam or infected messages.
enable_spam_blackhole = 0
enable_virus_blackhole = 0

# 0: Don't panic when any function doesnt work
#    Just continue to finish job.
# 1: Spammer and antivirus must work.
#    Condone other errors.
# 2: Don't forgive any error.
#
# Note that: This feature is not implemented yet.
paronia_level = 0

# Drop mail if the From: line is empty.
drop_empty_from = 0

# When set to 1, enables quarantine for spams and virus mails.
enable_quarantine = 0

# When set to 1, enables ignore list feature.
# qSheff doesn't perform spam filtering for the addresses in qsheff.ignore
enable_ignore_list = 1

# When set to 1, enables header rules based on regular expressions.
# Header rules starts with a leading h: pattern.
# Check the qsheff.rules
enable_header_filter = 1

# When set to 1, enables body rules based on regular expressions.
# Header rules starts with a leading b: pattern.
# Check the qsheff.rules
enable_body_filter = 1

# When set to 1, enables attachment filtering.
# Check the qsheff.attach
enable_attach_filter = 1

# When set to 1, enables ClamAv antivirus client.
# qSheff connects to Clamd directly, through a socket file.
# The socket file must be specified at compile time
# by --with-clamd-socket option.
enable_clamd = 1

# When set to 1, enables user defined filtering programs.
# The CUSTOM_PROG variable must be defined.
enable_custom_prog = 0

# Pre-defined variables to pass custom filter program:
#
# %%mailfrom%% as email address: source address.
# %%mailto%% as email address: target address.
# %%remoteip%% as IP address: remote SMTP server.
# %%msgfile%% as filename: full path of stored incoming mail.
# %%tempdir%% as directory path: full of the tempdir includes parts of mail (attachments, body, header etc.)
#
# Examples:
# CUSTOM_PROG = "/usr/bin/myscript -f %%mailfrom%% -t %%mailto%% -r %%tempdir%%"
# CUSTOM_PROG = "/usr/local/bin/bogofilter --bogofilter-dir=/etc/bogofilter -I %%msgfile%%"
#
CUSTOM_PROG = "disabled"

# For the custom program return value 'ret',
# if CUSTOM_RET_MIN <= ret <= CUSTOM_RET_MAX
# qSheff will assume the mail has spam content.
# So qSheff will return 'permanently error'.
CUSTOM_RET_MIN = 1
CUSTOM_RET_MAX = 100

# Return value for errors.
# qSheff assumes that, all nagative return codes indicate a failure.
# if ret < 0 or ret == CUSTOM_RET_ERR => then return 'temporary error'
CUSTOM_RET_ERR = -1

# For bogofilter:
#CUSTOM_RET_MIN = 1
#CUSTOM_RET_MAX = 1
#CUSTOM_RET_ERR = 3

# This string will be appended to the end of the custom message.
# It may be your company or organisation name. Can be maximum 32 characters
# Custom error patch must be applied and enabled.
custom_sign = "%%My Company Name%%"

Im E-Mail Header erscheint auch "X-Mail-Scanner: Scanned by qSheff-II-2.1-r3 (http://www.enderunix.org/qsheff/)". Entweder hat es etwas mit Berechtigungen zu tun oder clamd reagiert zu langsam oder qsheff zu schnell?

Dank im Voraus
starr
 
Hallo,

ich habe mittlerweile das Problem mit clamd gelöst. Es lag tatsächlich an der nicht Lesbarkeit des qsheff spools durch unterprivilegierte Benutzer, in dem Fall vscan. Lösung ist clamd bzw. vscan entweder in Gruppen hinzuzufügen die die Berechtigung hätten oder clamd direkt als root ausführen.

Grüße
starr

P.s. Grundsätzlich gefällt mir die Ausführung als root nicht besonders und halte deshalb weiter die Augen nach anderen Möglichkeiten offen.
 
Auch ich habe mit der Kombination qmail, Spamassassin, ClamAV, QSheff und ripMime ein Problem. Die Installation der Einzel-Komponenten habe ich nach dieser Anleitung hier und nach Huschis HowTo durchgeführt. Vorher lief SpamAssassin mit qmail gut. Danach ging nix mehr. Also habe ich den ganzen Server neu installieren lassen (BTW: vServer bei Server4You mit Suse 10.3). Dann nochmal von vorne. Nix ging an Mails. Es kam keine an. Kommentarlso und es ging keine raus. Beim versenden habe ich die Meldung "qq temporary problem (#4.3.0)" vom Client erhalten (TheBat!). In den Server-Logs steht effektiv Nichts. Ich habe mail.info, mail.err, mail.warn, maillog, clamd durchgeschaut. Es steht nichts drin. Ich kann es eigentlich auch nicht glauben. Dann habe ich von qsheff den uninstall-wrapper ausgeführt und es geht wieder. Alelrdings natürlich ohne jeden Check. Nun wollte ich schrittweise vorgehen und habe nur das Script eingesetzt das den SpamAssassin-Check durchführt und erhalte auch da dieses Problem. Ich verstehe nichts mehr. Ich bin ja auch bereit zu suchen, aber ich habe jetzt den ganzen Abend gegoogelt und hier gelesen und nichts gefunden was mir weiter hilft. Ein kleiner Hinweis wo ich suchen soll wäre mir wirklich sehr recht.

Danke

Ach so: Alle VErsionen frisch installiert. Wobei SA und ClamAV eventuell nicht 100% frisch sind. QSheff und ripMime allerdings die allerneuesten Versionen.
 
Ich fange gerade nochmal ganz von vorne an und protokolliere mal.

Gerade habe ich per Yast SA und ClamAV installiert und bin gerade dabei den SA zu konfigurieren. Dann werde ich den mal alleine einbinden und das Post hier weiterführen.

So, ich habe das nun probiert und lande jetzt genau wieder da wo ich gestern war. Schon ohne ClamAV usw. Ich habe nach der normalen Yast-Installation erstmal keine Veränderung an der Standard-Konfig des SA gemacht. Ich habe erstmal qmail gestoppt:

Code:
/etc/init.d/qmail stop

dann habe ich die Original qmail-queue kopiert:

Code:
cp -p /var/qmail/bin/qmail-queue /var/qmail/bin/qmail-queue.twi

dann habe ich als qmail-queue folgendes Script eingefügt:

Code:
#!/bin/bash
if [ "$SMTPRCPTHOSTSOK" = "1" ] ; then
  /usr/bin/spamc | /var/qmail/bin/qmail-queue.twi
else
  /var/qmail/bin/qmail-queue.twi
fi

und dann alles wieder gestartet:

Code:
/etc/init.d/spamd start
/etc/init.d/qmail start

Und nun bekomme ich beim versenden wieder dieses

Code:
!17.02.2009, 09:08:57: SEND  - Nachricht wurde nicht versandt. Server Antwort - qq temporary problem (#4.3.0)

Hier Auszüge aus allen Logfiles die ich dafür finde:

/var/log/mail.info:
Code:
Feb 17 09:01:17 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1075 (p579b0bc9.dip.t-dialin.net)
Feb 17 09:01:41 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 88.228.181.116:4359 (not defined)
Feb 17 09:09:04 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1905 (p579b0bc9.dip.t-dialin.net)

/var/log/mail.warn:
Code:
Feb 17 09:01:17 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1075 (p579b0bc9.dip.t-dialin.net)
Feb 17 09:01:41 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 88.228.181.116:4359 (not defined)
Feb 17 09:09:04 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1905 (p579b0bc9.dip.t-dialin.net)

/var/log/mail.err: (Timestamp zeigt das gar nix drin steht)
Code:
Feb 17 08:09:24 vs2064231 pop3d: 1234854564.581871 LOGOUT, user=xxxxxx@xxxxxxxx.de, ip=[x.x.x.x], top=0, retr=3228, time=1, rcvd=48, sent=3625, maildir=/var/qmail/mailnames/xxxxxxxx.de/xxxxxxxx/Maildir

/var/log/messages: (Timestamp zeigt das gar nix drin steht)
Code:
Feb 17 08:52:01 vs2064231 /usr/sbin/cron[18195]: (root) CMD (/usr/local/psa/admin/sbin/backupmng >/dev/null 2>&1)
Feb 17 09:03:10 vs2064231 -- MARK --
Feb 17 09:07:01 vs2064231 /usr/sbin/cron[8178]: (root) CMD (/usr/local/psa/admin/sbin/backupmng >/dev/null 2>&1)

/var/log/warn: (Timestamp zeigt das gar nix drin steht)
Code:
Feb 17 09:01:17 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1075 (p579b0bc9.dip.t-dialin.net)
Feb 17 09:01:41 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 88.228.181.116:4359 (not defined)
Feb 17 09:09:04 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1905 (p579b0bc9.dip.t-dialin.net)

/usr/local/psa/var/log/maillog:
Code:
Feb 17 09:01:17 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1075 (p579b0bc9.dip.t-dialin.net)
Feb 17 09:01:41 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 88.228.181.116:4359 (not defined)
Feb 17 09:09:04 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 87.155.11.201:1905 (p579b0bc9.dip.t-dialin.net)

Wenn ein Logfile fehlt, dann bitte sagen. Ich sehe da wirklich nichts!

Hier nochmal ein Auszug aus der /usr/local/psa/var/log/maillog die ein restart des SA und qmail zeigt. Einen Sende-Versuch, Empfangsversuch und das abholen (mit keiner Mail im Postfach):
Code:
Feb 17 09:36:46 vs2064231 spamd[13981]: spamd: server killed by SIGTERM, shutting down
Feb 17 09:36:49 vs2064231 spamd[15951]: logger: removing stderr method
Feb 17 09:36:49 vs2064231 spamd[16101]: rules: meta test FM_DDDD_TIMES_2 has dependency 'FH_HOST_EQ_D_D_D_D' with a zero score
Feb 17 09:36:49 vs2064231 spamd[16101]: rules: meta test FM_SEX_HOSTDDDD has dependency 'FH_HOST_EQ_D_D_D_D' with a zero score
Feb 17 09:36:49 vs2064231 spamd[16101]: rules: meta test HS_PHARMA_1 has dependency 'HS_SUBJ_ONLINE_PHARMACEUTICAL' with a zero score
Feb 17 09:36:50 vs2064231 spamd[16101]: spamd: server started on port 783/tcp (running version 3.2.3)
Feb 17 09:36:50 vs2064231 spamd[16101]: spamd: server pid: 16101
Feb 17 09:36:50 vs2064231 spamd[16101]: spamd: server successfully spawned child process, pid 16158
Feb 17 09:36:50 vs2064231 spamd[16101]: spamd: server successfully spawned child process, pid 16159
Feb 17 09:36:50 vs2064231 spamd[16101]: prefork: child states: IS
Feb 17 09:36:50 vs2064231 spamd[16101]: prefork: child states: II
Feb 17 09:37:28 vs2064231 qmail: 1234859848.922679 status: exiting
Feb 17 09:37:29 vs2064231 qmail: 1234859849.011725 status: local 0/10 remote 0/20
Feb 17 09:37:59 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from x.x.x.x:2242 (pppppppp.dip.t-dialin.net)
Feb 17 09:38:38 vs2064231 pop3d: Connection, ip=[x.x.x.x]
Feb 17 09:38:38 vs2064231 pop3d: IMAP connect from @ [x.x.x.x]INFO: LOGIN, user=user@domain.de, ip=[x.x.x.x]
Feb 17 09:38:38 vs2064231 pop3d: 1234859918.700887 LOGOUT, user=user@domain.de, ip=[x.x.x.x], top=0, retr=0, time=0, rcvd=12, sent=39, maildir=/var/qmail/mailnames/domain.de/user/Maildir
Feb 17 09:39:12 vs2064231 relaylock: /var/qmail/bin/relaylock: mail from 81.169.142.246:38112 (thomas-wilhelmi.de)
Feb 17 09:39:40 vs2064231 pop3d: Connection, ip=[x.x.x.x]
Feb 17 09:39:40 vs2064231 pop3d: IMAP connect from @ [x.x.x.x]INFO: LOGIN, user=user@domain.de, ip=[x.x.x.x]
Feb 17 09:39:40 vs2064231 pop3d: 1234859980.970009 LOGOUT, user=user@domain.de, ip=[x.x.x.x], top=0, retr=0, time=0, rcvd=12, sent=39, maildir=/var/qmail/mailnames/domain.de/user/Maildir
Feb 17 09:39:43 vs2064231 pop3d: Connection, ip=[x.x.x.x]
Feb 17 09:39:44 vs2064231 pop3d: IMAP connect from @ [x.x.x.x]INFO: LOGIN, user=user@domain.de, ip=[x.x.x.x]
Feb 17 09:39:44 vs2064231 pop3d: 1234859984.200054 LOGOUT, user=user@domain.de, ip=[x.x.x.x], top=0, retr=0, time=0, rcvd=12, sent=39, maildir=/var/qmail/mailnames/domain.de/user/Maildir

PS: Ich habe den Clam nicht gestartet. Nur die Installation per Yast ist der Unterschied zu gestern als zumindest der SA funktionierte. Ich werde den jetzt nochmal deinstallieren.
 
Last edited by a moderator:
Back
Top