GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So integrieren Sie ClamAV in PureFTPd zum Virenscannen unter CentOS 7

Dieses Tutorial erklärt, wie Sie ClamAV in PureFTPd zum Virenscannen auf einem CentOS 7-System integrieren können. Am Ende prüft ClamAV immer dann, wenn eine Datei über PureFTPd hochgeladen wird, die Datei und löscht sie, wenn sie einen Virus oder Malware enthält.

1 Vorbemerkung

Sie sollten ein funktionierendes PureFTPd-Setup auf Ihrem CentOS 7-Server haben, z. wie in diesem Tutorial gezeigt:Virtual Hosting with PureFTPd and MySQL (Incl. Quota and Bandwidth Management) on CentOS 7.

2 Installieren von ClamAV

ClamAV ist nicht in den offiziellen CentOS-Repositorys verfügbar, daher aktivieren wir das EPEL-Repository (falls Sie dies noch nicht getan haben. Beginnen Sie mit dem Importieren der RPM-GPK-Schlüssel.

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Dann aktivieren wir das EPEL-Repository auf unserem CentOS-System, da viele der Pakete, die wir im Laufe dieses Tutorials installieren werden, nicht im offiziellen CentOS 7-Repository verfügbar sind:

yum -y install epel-release
yum -y install yum-priorities

Bearbeiten Sie /etc/yum.repos.d/epel.repo...

nano /etc/yum.repos.d/epel.repo

... und fügen Sie die Zeile priority=10 zum Abschnitt [epel] hinzu:

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
[...]

Dann aktualisieren wir unsere bestehenden Pakete auf dem System:

yum update

Danach können wir ClamAV wie folgt installieren:

yum -y clamav clamav-server clamav-data clamav-update clamav-filesystem clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd

Bearbeiten Sie die Datei /etc/freshclam.conf und kommentieren Sie die Beispielzeile aus:

nano /etc/freshclam.conf

durch Hinzufügen eines # vor der Beispielzeile:

.....
# Comment or remove the line below.
# Example

....

Bearbeiten Sie dann die Datei /etc/clamd.d/scan.conf:

nano /etc/clamd.d/scan.conf

und kommentieren Sie die Beispielzeile aus, wie wir es in der obigen Datei getan haben, und entfernen Sie das # vor der LocalSocket-Zeile.

.....
# Comment or remove the line below.
# Example

....
LocalSocket /var/run/clamd.scan/clamd.sock
....

Als nächstes erstellen wir die Systemstartlinks für clamd und starten es:

systemctl enable [email protected]
freshclam

Starten Sie dann den Dienst clamav:

systemctl start [email protected]

Sie können den Status des ClamAV-Daemons mit diesem Befehl überprüfen:

 systemctl  status [email protected]

Das Ergebnis sollte so aussehen:

[[email protected] system]# systemctl status [email protected]
? [email protected] - Generic clamav scanner daemon
Loaded: loaded (/usr/lib/systemd/system/[email protected]; disabled; vendor preset: disabled)
Active: active (running) since Thu 2016-04-07 15:44:28 CEST; 1min 48s ago
Main PID: 10945 (clamd)
CGroup: /system.slice/system-clamd.slice/[email protected]
??10945 /usr/sbin/clamd -c /etc/clamd.d/scan.conf --nofork=yes
Apr 07 15:44:36 server1.example.com clamd[10945]: HTML support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: XMLDOCS support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: HWP3 support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: Self checking every 600 seconds.
Apr 07 15:44:36 server1.example.com clamd[10945]: PDF support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: SWF support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: HTML support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: XMLDOCS support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: HWP3 support enabled.
Apr 07 15:44:36 server1.example.com clamd[10945]: Self checking every 600 seconds.

3 Konfigurieren von PureFTPd

Zuerst öffnen wir /etc/pure-ftpd/pure-ftpd.conf und setzen CallUploadScript auf yes :

nano /etc/pure-ftpd/pure-ftpd.conf
[...]
# If your pure-ftpd has been compiled with pure-uploadscript support,
# this will make pure-ftpd write info about new uploads to
# /var/run/pure-ftpd.upload.pipe so pure-uploadscript can read it and
# spawn a script to handle the upload.
# Don't enable this option if you don't actually use pure-uploadscript.

CallUploadScript yes
[...]

Als nächstes erstellen wir die Datei /etc/pure-ftpd/clamav_check.sh (die /usr/bin/clamdscan aufruft, wenn eine Datei über PureFTPd hochgeladen wird)...

nano /etc/pure-ftpd/clamav_check.sh
#!/bin/sh
/usr/bin/clamdscan --fdpass --remove --quiet --no-summary -c /etc/clamd.d/scan.conf "$1"

... und ausführbar machen:

chmod 755 /etc/pure-ftpd/clamav_check.sh

Jetzt starten wir das Programm pure-uploadscript als Daemon – es ruft unser Skript /etc/pure-ftpd/clamav_check.sh auf, wenn eine Datei über PureFTPd hochgeladen wird:

pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh

Natürlich wollen Sie den Daemon nicht bei jedem Systemstart manuell starten - deshalb öffnen wir /etc/rc.local...

nano /etc/rc.local

... und fügen Sie die Zeile /usr/sbin/pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh hinzu - z.B. wie folgt:

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

/usr/sbin/pure-uploadscript -B -r /etc/pure-ftpd/clamav_check.sh
touch /var/lock/subsys/local

Abschließend starten wir PureFTPd neu:

systemctl restart [email protected]

Das ist es! Wann immer jetzt jemand versucht, Malware über PureFTPd auf Ihren Server hochzuladen, werden die "schlechten" Dateien stillschweigend gelöscht.

4 Image der virtuellen Maschine

Dieses Tutorial ist als fertige virtuelle Maschine im OVA / OVF-Format für Howtoforge-Abonnenten verfügbar. Das VM-Format ist kompatibel mit VMWare und Virtualbox und anderen Tools, die dieses Format importieren können. Sie finden den Download-Link im rechten Menü oben. Klicken Sie auf den Dateinamen, um den Download zu starten.

Die Anmeldedaten der VM lauten:

SSH-Anmeldung

Benutzername:root
Passwort:howtoforge

MariaDB-Anmeldung

Benutzername:root
Passwort:howtoforge

Bitte ändern Sie die Passwörter nach dem ersten Booten.

  • PureFTPD:http://www.pureftpd.org/
  • ClamAV:http://www.clamav.net/
  • CentOS:http://www.centos.org/

Cent OS
  1. So integrieren Sie ClamAV in PureFTPd zum Virenscannen unter Ubuntu 12.10

  2. So integrieren Sie ClamAV in PureFTPd zum Virenscannen auf Debian Squeeze

  3. So konfigurieren Sie PureFTPd zum Akzeptieren von TLS-Sitzungen unter CentOS 6.2

  4. So integrieren Sie ClamAV in PureFTPd zum Virenscannen unter CentOS 6.2

  5. So installieren Sie XCache für PHP unter CentOS

So richten Sie PureFTPd unter CentOS 7 ein

So installieren Sie Websvn für Subversion in CentOS 7

So installieren Sie ClamAV unter CentOS 6

So installieren Sie ClamAV unter CentOS 7

So installieren Sie Drush für Drupal unter CentOS 7

So installieren Sie ClamAV unter CentOS 8