ClamAV
Clam AntiVirus jest zestawem narzędzi antywirusowych dla systemów UNIX, dostępnym na licencji GPL oraz zaprojektowanym z myślą o skanowaniu wiadomości e-mail na poziomie serwerów pocztowych. Pakiet dostarcza wielu narzędzi, takich jak elastyczny i skalowalny wielowątkowy demon, skaner z linii poleceń, i zaawansowane narzędzie do automatycznych aktualizacji baz sygnatur wirusów. Głównym elementem pakietu jest silnik antywirusowy, dostępny w formie współdzielonej biblioteki.
Oto lista głównych cech projektu:
- skaner poziomu linii poleceń
- szybki, wielowątkowy demon, obsługujący skanowanie on-access (w momencie dostępu do pliku)
- interfejs dla sendmaila
- zaawansowany aktualizator baz wirusów, wspierający aktualizacje skryptowe i sygnatury cyfrowe
- współdzielona biblioteka C, implementująca procedury detekcji wirusów
- skanowanie on-access (Linux® i FreeBSD®)
- baza sygnatur wirusów aktualizowana wielokrotnie w ciągu dnia (zobacz stronę domową, żeby sprawdzić aktualna liczbę sygnatur w naszych bazach)
- wbudowane wsparcie dla róznych formatów archiwów, włączając Zip, RAR, Tar, Gzip, Bzip2, OLE2, Cabinet, CHM, BinHex, SIS i inne
- wbudowane wsparcie dla praktycznie wszystkich formatów wiadomości e-mail
- wbudowane wsparcie dla plików wykonywalnych ELF i plików Portable Executable skompresowanych przez UPX, FSG, Petite, NsPack, wwpack32, MEW, Upack i obfuskowanych z użyciem SUE, Y0da Cryptor i innych
- wbudowane wsparcie dla popularnych formatów dokumentów, włączając w to pliki MS Office i MacOffice, HTML, RTF i PDF
Przeczytaj dokumentację by uzyskać więcej informacji.
Źródło: http://www.clamav.net/lang/pl/about/
Do kompilacji ClamAV pod Solarisem wykorzystuję specjalny skrypt, w którym mam zapisane opcje kompilacji. W Ubuntu i innych Linuxach znajdują się odpowiednie pakiety.
Poniżej zawartość skryptu z opcjami kompilacji dla Solaris 10 na SPARC z kompilatorem SunStudio:
#!/bin/sh
#
# for GCC:
#CC=gcc
#CFLAGS="-O2 -mcpu=v9"
#MAKE=gmake
#
# for Sun Studio
CC=cc
CXX=CC
CFLAGS="-xO2 -native"
CXXFLAGS=$CFLAGS
CPPFLAGS="-I/usr/local/include"
LDFLAGS="-L/usr/local/lib -R/usr/local/lib"
MAKE=gmake
export CC CFLAGS CPPFLAGS MAKE DMAKE_MODE
export CXX CXXFLAGS LDFLAGS LIBS
# $CC -v
$CC -V
set|grep PATH
set|grep FLAGS
KAT="clamav"
VER="0.97.5"
cd "$KAT-$VER"
tn="n"
echo "============================================="
echo "$MAKE clean [y|n] ?"
read tn
if [ "$tn" = "Y" ] || [ "$tn" = "y" ]; then
$MAKE distclean || $MAKE realclean || $MAKE clean
rm -f config.status
rm -f config.log
fi;
tn="n"
echo "============================================="
echo "configure [y|n] ?"
read tn
if [ "$tn" = "Y" ] || [ "$tn" = "y" ]; then
./configure \
--prefix=/usr/local/$KAT-$VER \
--infodir=/usr/local/info --mandir=/usr/local/man \
--sysconfdir=/data/etc/$KAT \
--localstatedir=/data/var/$KAT \
--disable-clamav \
--with-user=amavis --with-group=amavis \
fi;
tn="n"
echo "============================================="
echo "$MAKE [y|n] ?"
read tn
if [ "$tn" = "Y" ] || [ "$tn" = "y" ]; then
$MAKE && echo "Compilation successful"
fi;