Iluminat23
20.07.08, 13:31
Da ich in "FAQ Tips" kein Beiträge erstellen kann erstelle ich das mal hier (Woops, wollte es in "Linux in heterogenen Netzen" rein hauen. Wenn es sich als brauchbar herreusstellen sollte kann es ein Mod ja verschieben.
Hier soll erklärt werden, wie man Samba3 mit einen Virenscanner ausstatten kann ohne dafür ein extra Kernelmodul zu installieren, wie bei Dazuko. Hierfür nutzen wir die Eine Erweiterung für Samba welches VFS nutzt. Unter [1] ist die Beschreibung des Moduls zu finden. Leider scheint die Entwicklung des Modules zum Stehen gekommen sein, doch bei mir funktioniert es trotzdem sehr gut (samba-3.0.28a).
Was zum Erstellen der Module benötigt wird:
Den Code des samba-vscan Moduls. [2]
Ich habe samba-vscan-0.3.6c-beta5 verwendet [3]
Den Quellcode des auf dem Zielsystem laufenden Samba
Wird benötigt um das Modul zu kompilieren, Samba selbst muss dabei nicht neu kompiliert werden.
Siehe Anhang A für Informationen zu verschiedenen Distributionen (Debian, gentoo)
Ein Kompilier (Idealerweise die gleiche Version mit der auch Samab kompiliert wurde.) und eventuell noch einige Headerdateien (z.B. heißen die libc-Header bei Debian libc6-dev).
Erstellen, Installieren und Einrichten der Module Schritt für Schritt:
Sambasourcen vorbereiten:
cd /[SAMBA-SOURCEN]/source/
./configure
make proto
Entpacken der samba-vscan-Sourcen:
[code]cd ../examples/VFS
tar xvzf /[PFAD_ZUM_ARCHIV]/samba-vscan-0.3.6c-beta5.tar.gz
mv samba-vscan-0.3.6c-beta5 samba-vscan
cd samba-vscan
Erstellen der Module
./configure
Wenn die Sambaversion nicht automatisch erkannt wird kann, weil eure Distribution den Versionsstring manipuliert hat, versucht es mit der Option --with-samba-version=VERSION. Dies sieht dann z.B. so aus:
[code]./configure --with-samba-version=3.0.28a[code]
Hier bitte sachen die euer Distributor eingefügt hatte weg lassen, als nicht soetwas als String angeben: 3.0.28a-debian-r8.
Nach dem ./configure erhält man eine liste der unterstüzten Module:
[code]Compile samba-vscan backends : oav sophos fprotd fsav trend icap mksd kavp clamav nai antivir
Man kann nun einzelne Module oder alle aufeinmal erstellen. Um alle Module zu erstellen muss man einfach make eingeben:
make
Um ein oder mehrer Module zu bauen kann man folgendes eingeben:
make MODULNAME1 MODULNAME2 ... also um nur das clamav-Modul zu erstellen muss folgenden gemacht werden.
make clamav
Installieren der Module
Je nach Distribution muss das Modul an eine andere Stelle installiert werden. Unter Debian und unter gentoo ist es
/usr/lib/samba/vfs. make install würde die module nach /usr/local/samba/lib/vfs installieren. Somit sollten die Module von Hand kopiert werden.
cp vscan-*.so /usr/lib/samba/vfs Die Module haben das Namensschema: vscan-<Produkt>.so bei clamav: vscan-clamav.so.
Die Konfiguration der Module
Es wird noch eine Konfigurationsdatei für die Module benötigt. eine Beispieldatei liegt dem samba-vscan Archiv bei. Diese sollte man in das Verzeichnis mit den Samba-Konfigurationsdateien kopieren. Für den einsatz von clamav sähe dies so aus:
cp clamav/vscan-clamav.conf /etc/samba/[code]
Nun muss die smb.conf noch angepasst werden, hier ein Beispieleintrag für clamav aussehen könnte:
[code][vscan]
comment = virus-protected /tmp directory
path = /tmp
vfs object = vscan-clamav
vscan-oav: config-file = /etc/samba/vscan-clamav.conf
writeable = yes
browseable = yes
guest ok = yes
Somit sollte samba-vscan laufen (es muss natürlich noch der entsprechende Virenscanner installiert sein, für vscan-clamav muss der clamd installiert sein). es können noch viele einstellungen in den Konfigurationsdateien zu den einzelnen Modulen getätigt werden, diese sind aber ausreichend gut Dokumentiert. Auch die Datei INSTALL in samba-vscan Archiv ist sehr Ausführlich und sollte bei Problemen mit dieser Anleitung sicher helfen können. Dort sind auch wege erklärt wie man samba-vscan mit sambaversionen < 3 installiert und noch einiges mehr.
Anhang
Installation der Samba Sourcen
Debian
apt-get source samba
Installiert die Sourcen ins Aktuelle Verzeichnis. Es kann nötig sein, dass noch 'dpkg-dev' installiert werden muss.
apt-get install dpkg-dev
Dies installiert auch gleich den Kompiler und nötige Libraries mit.
gentoo
emerge -1 samba
Den emerger laufen lassen, bis angefangen wird zu Kompilieren. Dann mit Strg-C abbrechen. Die Sourcen liegen dann im Verzeichnis:
/var/tmp/portage/net-fs/samba-[VERSION]/work/samba-[VERSION]/
__________________
[1] OpenAntiVirus Projects (http://www.openantivirus.org/projects.php) - samba-vscan (on-access virus scanning with Samba)
[2] OpenAntivirus Downloads (http://www.openantivirus.org/download/)
[3] samba-vscan-0.3.6c-beta5.tar.gz (http://www.openantivirus.org/download/samba-vscan-0.3.6c-beta5.tar.gz)
Viel erfolg mit samba-vscan.
-- iluminat23
Hier soll erklärt werden, wie man Samba3 mit einen Virenscanner ausstatten kann ohne dafür ein extra Kernelmodul zu installieren, wie bei Dazuko. Hierfür nutzen wir die Eine Erweiterung für Samba welches VFS nutzt. Unter [1] ist die Beschreibung des Moduls zu finden. Leider scheint die Entwicklung des Modules zum Stehen gekommen sein, doch bei mir funktioniert es trotzdem sehr gut (samba-3.0.28a).
Was zum Erstellen der Module benötigt wird:
Den Code des samba-vscan Moduls. [2]
Ich habe samba-vscan-0.3.6c-beta5 verwendet [3]
Den Quellcode des auf dem Zielsystem laufenden Samba
Wird benötigt um das Modul zu kompilieren, Samba selbst muss dabei nicht neu kompiliert werden.
Siehe Anhang A für Informationen zu verschiedenen Distributionen (Debian, gentoo)
Ein Kompilier (Idealerweise die gleiche Version mit der auch Samab kompiliert wurde.) und eventuell noch einige Headerdateien (z.B. heißen die libc-Header bei Debian libc6-dev).
Erstellen, Installieren und Einrichten der Module Schritt für Schritt:
Sambasourcen vorbereiten:
cd /[SAMBA-SOURCEN]/source/
./configure
make proto
Entpacken der samba-vscan-Sourcen:
[code]cd ../examples/VFS
tar xvzf /[PFAD_ZUM_ARCHIV]/samba-vscan-0.3.6c-beta5.tar.gz
mv samba-vscan-0.3.6c-beta5 samba-vscan
cd samba-vscan
Erstellen der Module
./configure
Wenn die Sambaversion nicht automatisch erkannt wird kann, weil eure Distribution den Versionsstring manipuliert hat, versucht es mit der Option --with-samba-version=VERSION. Dies sieht dann z.B. so aus:
[code]./configure --with-samba-version=3.0.28a[code]
Hier bitte sachen die euer Distributor eingefügt hatte weg lassen, als nicht soetwas als String angeben: 3.0.28a-debian-r8.
Nach dem ./configure erhält man eine liste der unterstüzten Module:
[code]Compile samba-vscan backends : oav sophos fprotd fsav trend icap mksd kavp clamav nai antivir
Man kann nun einzelne Module oder alle aufeinmal erstellen. Um alle Module zu erstellen muss man einfach make eingeben:
make
Um ein oder mehrer Module zu bauen kann man folgendes eingeben:
make MODULNAME1 MODULNAME2 ... also um nur das clamav-Modul zu erstellen muss folgenden gemacht werden.
make clamav
Installieren der Module
Je nach Distribution muss das Modul an eine andere Stelle installiert werden. Unter Debian und unter gentoo ist es
/usr/lib/samba/vfs. make install würde die module nach /usr/local/samba/lib/vfs installieren. Somit sollten die Module von Hand kopiert werden.
cp vscan-*.so /usr/lib/samba/vfs Die Module haben das Namensschema: vscan-<Produkt>.so bei clamav: vscan-clamav.so.
Die Konfiguration der Module
Es wird noch eine Konfigurationsdatei für die Module benötigt. eine Beispieldatei liegt dem samba-vscan Archiv bei. Diese sollte man in das Verzeichnis mit den Samba-Konfigurationsdateien kopieren. Für den einsatz von clamav sähe dies so aus:
cp clamav/vscan-clamav.conf /etc/samba/[code]
Nun muss die smb.conf noch angepasst werden, hier ein Beispieleintrag für clamav aussehen könnte:
[code][vscan]
comment = virus-protected /tmp directory
path = /tmp
vfs object = vscan-clamav
vscan-oav: config-file = /etc/samba/vscan-clamav.conf
writeable = yes
browseable = yes
guest ok = yes
Somit sollte samba-vscan laufen (es muss natürlich noch der entsprechende Virenscanner installiert sein, für vscan-clamav muss der clamd installiert sein). es können noch viele einstellungen in den Konfigurationsdateien zu den einzelnen Modulen getätigt werden, diese sind aber ausreichend gut Dokumentiert. Auch die Datei INSTALL in samba-vscan Archiv ist sehr Ausführlich und sollte bei Problemen mit dieser Anleitung sicher helfen können. Dort sind auch wege erklärt wie man samba-vscan mit sambaversionen < 3 installiert und noch einiges mehr.
Anhang
Installation der Samba Sourcen
Debian
apt-get source samba
Installiert die Sourcen ins Aktuelle Verzeichnis. Es kann nötig sein, dass noch 'dpkg-dev' installiert werden muss.
apt-get install dpkg-dev
Dies installiert auch gleich den Kompiler und nötige Libraries mit.
gentoo
emerge -1 samba
Den emerger laufen lassen, bis angefangen wird zu Kompilieren. Dann mit Strg-C abbrechen. Die Sourcen liegen dann im Verzeichnis:
/var/tmp/portage/net-fs/samba-[VERSION]/work/samba-[VERSION]/
__________________
[1] OpenAntiVirus Projects (http://www.openantivirus.org/projects.php) - samba-vscan (on-access virus scanning with Samba)
[2] OpenAntivirus Downloads (http://www.openantivirus.org/download/)
[3] samba-vscan-0.3.6c-beta5.tar.gz (http://www.openantivirus.org/download/samba-vscan-0.3.6c-beta5.tar.gz)
Viel erfolg mit samba-vscan.
-- iluminat23