flyingmichael
Goto Top

Kolab und amavisd Dienst? Mailserver funktioniert nicht

Guten Morgen Zusammen,

ich habe mir bei Strato einen V-Server gehostet mit Cent-OS 7 . Darauf will ich einen funktionierenden Kolab Server zum laufen bekommen.
Ich folge der Offiziellen Installationsanleitung. Der Server scheint zu funktionieren, ich habe eine Web-Admin Oberfläche, doch sobald ich mich auf Roundcubemail anmelde und Mails verschicke kommen diese nicht an und es werden auch keineu empfangen.

Bei genauerer Prüfung habe ich festgestellt, das der Dienst amavisd nicht startet. Ich finde keine Lösung dafür kann mir evtl. jemand weitrehelfen?

Fehlermeldung: Job for amavisd.service failed. See 'systemctl status amavisd.service' and 'journalctl -xn' for details.
# systemctl status amavisd.service
amavisd.service - Amavisd-new is an interface between MTA and content checkers.
   Loaded: loaded (/usr/lib/systemd/system/amavisd.service; enabled)
   Active: failed (Result: start-limit) since Di 2014-12-16 08:50:06 CET; 10s ago
     Docs: http://www.ijs.si/software/amavisd/#doc
  Process: 1214 ExecStart=/usr/sbin/amavisd -c /etc/amavisd/amavisd.conf (code=exited, status=227/NO_NEW_PRIVILEGES)
sowie:
]# journalctl -xn
-- Logs begin at Di 2014-12-16 08:40:04 CET, end at Di 2014-12-16 08:50:50
Dez 16 08:50:32 **** clamd[400]: No stats for Database ch
Dez 16 08:50:32 **** clamd[400]: No stats for Database ch
Dez 16 08:50:33 **** clamd[400]: Reading databases from /
Dez 16 08:50:33 **** clamd[400]: Reading databases from /
Dez 16 08:50:33 **** clamd[400]: LibClamAV Warning: *****
Dez 16 08:50:33 **** clamd[400]: LibClamAV Warning: ***
Dez 16 08:50:33 **** clamd[400]: LibClamAV Warning: ***
Dez 16 08:50:33 **** clamd[400]: LibClamAV Warning: *****
Dez 16 08:50:50 **** clamd[400]: Database correctly reloa
Dez 16 08:50:50 **** clamd[400]: Database correctly reloa
lines 1-11/11 (END)
Vielen Dank im Voraus!

Content-Key: 257717

Url: https://administrator.de/contentid/257717

Ausgedruckt am: 29.03.2024 um 14:03 Uhr

Mitglied: Frank
Frank 16.12.2014 um 11:23:56 Uhr
Goto Top
Hi,

Schau mal nach, ob dein ClamAV Antivirenscanner überhaupt läuft (ps -ef|grep clam). Der Clam Daemon (/usr/sbin/clamd) muss laufen, sonst verweigert amavis den Start (wenn ClamAV in der Amavis Config unter "@av_scanners = (...)" konfiguriert ist).

P.S nimm bitte aus dem Beitrag den "Realnamen" deine Mailhosts (mail.h....de). Nicht das der sonst missbraucht wird und wir sind Schuld face-smile

Gruß
Frank
Mitglied: flyingmichael
flyingmichael 16.12.2014 aktualisiert um 13:59:20 Uhr
Goto Top
HI,

mit dem Befehl bekomme ich diese Ausgabe:
[root@mail ~]# ps -ef|grep clam
amavis     400     1  0 08:40 ?        00:00:14 /usr/sbin/clamd -c /etc/clamd.d/amavisd.conf --nofork=yes
root      1963  1875  0 13:38 pts/0    00:00:00 grep --color=auto clam
Dort kann ich nicht viel erkennen..

kannst du mir da vielleicht weiterhelfen?

Sorry ich bin da eher ein Neuling aber will gerne dazu lernen.
Kann ich den AV auch deaktivieren? oder sollte man das nicht machen?

Gruß
Michael
Mitglied: Frank
Frank 16.12.2014 aktualisiert um 14:14:26 Uhr
Goto Top
Hallo Michael,

  • Was passiert, wenn du ein "sudo freshclam" in der Shell ausführst?
  • Was sagt denn das Logfile von ClamAV -> "/var/log/clamav/clamav.log"?
  • Was sagt denn das Logfile von Amavis -> /var/log/mail.log -> aber da bitte nur den Teil, wenn Amavis nicht startet?
  • Was steht denn in der "/etc/clamd.d/amavisd.conf "?
  • Was steht im Amavis Config File ab dem Punkt ""@av_scanners =" (aber nur bitte der ClamAV Bereich)?
Beispiel für die Amavis Config (bei mir):
 ['ClamAV-clamd',  
   \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.ctl"],  
   qr/\bOK$/m, qr/\bFOUND$/m,
   qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],

Gruß
Frank
Mitglied: flyingmichael
flyingmichael 16.12.2014 aktualisiert um 15:07:19 Uhr
Goto Top
Hallo Frank, also mit freshclam führt er updates durch, die sind aber alle up-to-date. keine Fehlermeldung
Das Logfile für ClamAV konnte ich unter diesem Pfad nicht finden den Ordner clamav gibt es unter logs nicht.
Das Amavis Logfile fand ich nur unter /var/log/maillog? also ohne "." dort waren 2 Kleineu Zeilen aber von gestern und kein Fehler oder ähnliches.
In meiner Conf steht folgendes :
LogSyslog yes

# Specify the type of syslog messages - please refer to 'man syslog' 
# for facility names.
LogFacility LOG_MAIL

# This option allows you to save a process identifier of the listening
# daemon (main thread).
PidFile /var/run/clamd.amavisd/clamd.pid

# Remove stale socket after unclean shutdown.
# Default: disabled
FixStaleSocket yes

# Run as a selected user (clamd must be started by root).
User amavis

# Path to a local socket file the daemon will listen on.
LocalSocket /var/run/clamd.amavisd/clamd.sock
~

und in der Config:

@av_scanners = (

# ### http://www.clanfield.info/sophie/ (http://www.vanja.com/tools/sophie/)
# ['Sophie',  
#   \&ask_daemon, ["{}/\n", '/var/run/sophie'],  
#   qr/(?x)^ 0+ ( : | [\000\r\n]* $)/m,  qr/(?x)^ 1 ( : | [\000\r\n]* $)/m,
#   qr/(?x)^ [-+]? \d+ : (.*?) [\000\r\n]* $/m ],

# ### http://www.csupomona.edu/~henson/www/projects/SAVI-Perl/
# ['Sophos SAVI', \&sophos_savi ],  

# ### http://www.clamav.net/
['ClamAV-clamd',  
  \&ask_daemon, ["CONTSCAN {}\n", "/var/run/clam.amavisd/clamd.sock"],  
  qr/\bOK$/m, qr/\bFOUND$/m,
  qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
# # NOTE: run clamd under the same user as amavisd, or run it under its own
# #   uid such as clamav, add user clamav to the amavis group, and then add
# #   AllowSupplementaryGroups to clamd.conf;
# # NOTE: match socket name (LocalSocket) in clamav.conf to the socket name in
# #   this entry; when running chrooted one may prefer socket "$MYHOME/clamd".  
Gruß

Michael
Mitglied: Frank
Frank 16.12.2014 aktualisiert um 15:44:52 Uhr
Goto Top
Hi Michael,

sorry ich übersah, dass es sich hier um ein CentOS 7 handelt. Da werden die Logs natürlich mit "journalctl" angezeigt. CentOS 7 ist ein "Systemd" System.
Gebe doch mal folgendes in einem zweiten Bash Fenster ein:
journalctl -f
und dann startest du "amavis" noch einmal neu (alternativ gebe "journalctl -p err" ein um hauptsählich die Fehler zu sehen). Wir brauchen auf jeden Fall etwas mehr Info nach dem Start von Amavis und warum er abbricht.

Ein weitere Idee wäre ein Rechteproblem beim User "clamav". Prüfe mal ob du ein " /var/spool/amavisd" oder ein " /var/spool/amavisd/tmp" hast. Wenn ja prüfe die Grupperechte:
cat /etc/group |grep clamav
Ausgabe:
clamav:x:117:amavis
amavis:x:118:clamav
Ist das nicht so bei Dir (bis auf die IDs wie z.B. 117 oder 118), dann kannst du folgendes eingeben:
usermod -a -G amavis clamav
usermod -a -G clamav amavis
chmod g+rwx /var/lib/amavis/tmp
Dann Amavis noch einmal starten und im zweiten Fenster mit "journalctl -f" schauen, was er ausgibt.

Wenn es nicht funktioniert, poste hier mal die "tmp" Ausgabe von "ls -la /var/lib/amavis". Wichtig sind hier die tmp Rechte:
drwxrwx---  4 amavis amavis 4096 Dez 16 15:34 tmp

P.S. benutze auf administrator.de für Log- und Shell-Befehle bitte immer den < code > Tag (siehe Formatierung). Schau mal in deinen Kommentar rein (über "Bearbeiten") wie das hier geht.

Gruß
Frank
Mitglied: flyingmichael
flyingmichael 16.12.2014 um 16:15:13 Uhr
Goto Top
Hallo,

also nach einem versuchten restart kam das:

Dez 16 16:07:22  **FQDN** amavisd[2896]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:07:22  **FQDN** amavisd[2900]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:08:15 **FQDN** imap[2825]: starttls: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits new) no authentication
Dez 16 16:08:15 **FQDN** imap[2825]: login: localhost [::1] vorname.nachname@he***********m.de PLAIN+TLS User logged in SESSIONID=< **FQDN**-2825-1418742495-1>
Dez 16 16:08:15 **FQDN** imap[2825]: USAGE vornamel^nachname@he********em.de user: 0.013997 sys: 0.007998
Dez 16 16:08:29 **FQDN** amavisd[2915]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:08:29 **FQDN** amavisd[2919]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:08:29 **FQDN** amavisd[2923]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:08:29 **FQDN** amavisd[2927]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument
Dez 16 16:08:29 **FQDN** amavisd[2931]: Failed at step NO_NEW_PRIVILEGES spawning /usr/sbin/amavisd: Invalid argument

die beiden Verzeichnisse existieren der User Clamav und die Gruppe jedoch nicht deshalb kam ich eine Fehlermeldung. Ist das evtl. das Problem?

Danke schonmal für die Mühen!

Grüße

Michael
Mitglied: Frank
Frank 16.12.2014 aktualisiert um 17:16:44 Uhr
Goto Top
Hallo Michael,

könnte sein. Du hast also folgendes ausprobiert und dann kam ein Fehler?
usermod -a -G amavis clamav
usermod -a -G clamav amavis
chmod g+rwx /var/lib/amavis/tmp
Gibt es bei dir denn den User "amavis" oder "clamav" (schau mal in die /etc/shadow)
Wie sieht es mit der Berechtigung des "/var/lib/amavis/tmp" Verzeichnis aus?

Hier ein Auszug der Fehlermeldung NoNewPrivileges:
NoNewPrivileges=
Takes a boolean argument. If true, ensures that the service process and all its children can never gain new privileges. This option is more powerful than the respective secure bits flags (see above), as it also prohibits UID changes of any kind. This is the simplest, most effective way to ensure that a process and its children can never elevate privileges again.

Der "systemd"-Service dazu sieht dann ungefähr so aus:
[Service]
Type=forking
User=amavis
Group=amavis
PIDFile=/var/run/amavisd/amavisd.pid
ExecStart=/usr/sbin/amavisd -c /etc/amavisd/amavisd.conf
Restart=on-failure
PrivateTmp=true
PrivateDevices=true
NoNewPrivileges=true

Da steht dann auch das "NoNewPrivileges=true" drin. Dieser wird dann ausgelöst, wenn Privileg- bzw. Rechteprobleme entstehen (z.B. durch ClamAV).
Es sieht also alles nach einem Rechteproblem aus.

Gruß
Frank
Mitglied: 16568
16568 16.12.2014 um 22:48:33 Uhr
Goto Top
Zitat von @Frank:
Es sieht also alles nach einem Rechteproblem aus.

Quod errat demonstrandum. (status=227/NO_NEW_PRIVILEGES)
Ursachen dazu gibt es viele.
Beispielsweise SELinux aktiv...?

Lonesome Walker