avast! for Linux

V dnešním článku se podíváme na nedávno oficiálně uvolněný antivirový program určený především na servery.

23.7.2004 08:00 | Ondřej Čečák | přečteno 7385×

Krabice avast! for Linux

Česká společnost ALWIL Software vydala 15. července nový produkt avast! for Linux. Antivirový program avast! není na českém ani na zahraničním trhu žádnou novinkou a už několik let sbírá různá kladná hodnocení. Samotná linuxová verze se dala vyzkoušet, už když byl ještě program v beta verzi.

Linuxová verze antiviru je primárně určena na server, ale případně se dá použít na ochranu desktopu. Jako jeden z mála programů nabízí scanování "on-access" tedy rovnou při práci se soubory.

Antivirový engine

Na antivirových programech je nejdůležitější to, co tepe uvnitř – vlastní antivirové jádro avastu je shodné s verzí pro OS Windows, takže má i stejné udávané vlastnosti – třeba trvalou schopnost 100% detekce virů "in the wild" (tj. těmi, které se aktuálně šíří) a dobrý výkon.

Instalace

Pojďme se ale podívat na samotnou instalaci. Nejprve je nutné stáhnout archiv s programem (testoval jsem verzi 1.0.6). Po zkopírování souborů (= nainstalování; program je closed source) avast shared library je možné nainstalovat i vlastní program. Instalace je vyřešená skriptem v shellu, který jednoduše nabízí adresáře, kam se jednotlivé soubory kopírují. Samozřejmostí jsou i skripty pro odinstalování programu.

ALWIL software nabízí u avast! for linux (stejně jako u jiných produktů) měsíční zkušební lhůtu, ve které si můžete program plnohodnotně vyzkoušet. Jediné co musíte udělat, je požádat o licenční soubor, který následně zkopírujete do adresáře s nainstalovaným programem.

Dazuko

Pro umožnění on-access scanování je nutné stáhnout a nainstalovat open source modul do kernelu – Dazuko.

Kompilace na jádře 2.6.7 (pozor, je nutné mít zapnutou volbu CONFIG_SECURITY) se mi ale bohužel nezdařila, zkusil jsem tedy jádro řady 2.4.x; na trošku starší 2.4.20 se modul úspěšně zkompiloval, ovšem jeho zavedení nebylo možné kvůli unresolved symbols (konkrétně _mmx_memcpy). Je pravda, že 2.4.20 už není úplně ideální, tak jsem cvičně zkusil také verzi 2.4.26 a hle, modul dazuko 2.0.2 se úspěšně zkompiloval i zavedl (debian stable "Woody"). Nutné je ještě vytvořit v adresáři /dev položku dazuko, to ale funguje podle manuálu a bez problémů.

Update virové databáze

U antivirových programů je opravdu důležité, aby měli aktuální databázi. Aktualizace databáze je u programu avast! řešena perlovým skriptem avastvpsupdate.pl, který stahuje veškeré updaty inkrementálně (tzn. že se stahují opravdu pouze nové věci). Při instalaci by se měl skript zkopírovat do odpovídajících adresářů cronu tak, aby se automaticky spouštěl.

Program (zatím?) neumožňuje přímý upgrade – v případě nutnosti je potřeba novou verzi ručně stáhnout a nainstalovat.

Co nám avast! nabízí

Program se skládá ze čtyř komponent:

Avast – on-demand scanner

Označení on-demand scanner znamená normální scanování podle vašich požadavků. Vlastní test provádí binárka avast, která dokáže testovat libovolný připojený disk, lokální či vzdálený. Pro jeho spuštění stačí zadat příkaz avast a cestu, která se má scanovat. Jednotlivé soubory, které se testují jsou vypisovány spolu s jejich stavem (OK, infikován virem apod.). Program samozřejmě umí nahlížet do nezašifrovaných archivů a zkoumat jejich obsah.

Po dokončení testování (defaultně se testují jenom programy s "nebezpečnými" příponami, testovat lze ovšem po zadání patřičného parametru vše) vypíše program statistiku o scanování. Např.:

  #
  # Statistics:
  #
  # scanned files:        20918
  # scanned directories:  467
  # infected files:       0
  # total file size:      1.6 GB
  # virus database:       0430-0 19.07.2004
  # test elapsed:         12m:3s 614ms
  # 

Tato statistika spolu s hlavičkou a průběhem může být ukládána do souboru. Chyby může program logovat přímo přes syslog.

Implicitně soubory program pouze testuje, pokud najde virus, pokračuje v testech dále a je pouze na vás, co s tím uděláte. Můžete si ovšem nastavit, aby se v případě nalezení viru zastavil a nabídl možnosti, popř. aby se soubor pokusil "vyléčit" nebo aby ho rovnou smazal.

Velmi zajímavý je parametr --console, který umožňuje spuštění v režimu, kdy se program chová jako filtr – na standardní vstup mu pošlete data k otestování a pokud v nich nejsou zjištěny viry, data budou odeslána na standardní výstup. V případě, že je virus nalezen, se na standardní výstup neodešle nic a na chybový výstup jsou vypsány patřičné informace. Výhodné užití by mohlo být ve všelijakých skriptech atp.

Typické použití by mohlo vypadat třeba takto:

oc@hippo:/tmp# avast -p 4 haluz
File '/tmp/haluz/eicar.com' is infected by 'EICAR Test-NOT virus!!'
(D/d)delete, (R/r)repair, (C/c)continue: c
/tmp/haluz/eicar.com   [infected by: EICAR Test-NOT virus!!]
/tmp/haluz/onehalf.zip [OK]
File '/tmp/haluz/onehalf.zip/ONEHALF.!XE' is infected by 'One half-3544/3577'
(D/d)delete, (R/r)repair, (C/c)continue: d
Archived /tmp/haluz/onehalf.zip/ONEHALF.!XE    
     [infected by: One half-3544/3577]    deleted
File '/tmp/haluz/onehalf.zip/ONEHALF.DCD' is infected by 'One half-3544/3577'
(D/d)delete, (R/r)repair, (C/c)continue: d
Archived /tmp/haluz/onehalf.zip/ONEHALF.DCD    
     [infected by: One half-3544/3577]    deleted
Archived /tmp/haluz/onehalf.zip/ONEHALF.TXT    [OK]
File '/tmp/haluz/redx.com' is infected by 'Ambulance-795'
(D/d)delete, (R/r)repair, (C/c)continue: d
/tmp/haluz/redx.com    [infected by: Ambulance-795]    deleted
File '/tmp/haluz/ONEHALF.DCD' is infected by 'One half-3544/3577'
(D/d)delete, (R/r)repair, (C/c)continue: r
/tmp/haluz/ONEHALF.DCD [infected by: One half-3544/3577]  
     repair error: File can't be repaired
File '/tmp/haluz/ONEHALF.EXE' is infected by 'One half-3544/3577'
(D/d)delete, (R/r)repair, (C/c)continue: d
/tmp/haluz/ONEHALF.EXE [infected by: One half-3544/3577]       deleted

#
# Statistics:
#
# scanned files:        8
# scanned directories:  1
# infected files:       6
# total file size:      41.5 kB
# virus database:       0430-0 19.07.2004
# test elapsed:         51s 113ms
#

Avastguard – on-access scanner

Avast nabízí také rezidentní ochranu. Jednotlivé soubory ze zvoleného adresáře (adresářů) mohou být testovány na přítomnost virů při otevření, modifikaci, uložení nebo spuštění a v případě nalezení možné hrozby této činnosti zabránit, což je výhodné např. pokud je váš linuxový stroj souborovým serverem pro klienty na OS Windows.

Pro vlastní spuštění komponenty avastguard je nutné nejprve spustit démona avastd, který zprostředkovává vlastní testování na výskyt virů. Jak bylo řečeno výše, pro přístup ke kontrole souborů se používá modul dazuko.

Program jde poměrně dobře konfigurovat; standardně je přístup k potencionálně nebezpečnému souboru odepřen, ale soubor může být také např. smazán nebo přesunut jinam.

Opět si můžeme uvést typický příklad:

oc@hippo:/tmp$ cp eicar.com /home/oc/
cp: cannot create regular file `/home/oc/eicar.com': Operace není povolena
oc@hippo:/tmp$ cd
oc@hippo:~$ less eicar.com2
eicar.com2: Operace není povolena
oc@hippo:~$ chmod 755 eicar.com2
oc@hippo:~$ ./eicar.com2
./eicar.com2: ./eicar.com2: Operace není povolena

Vše je samozřejmě patřičně logované standardně přes syslog, např. výše zmíněná činnost se projeví při defaultní úrovní logování následovně:

avastguard[618]: info: Starting avast! guard
avastguard[618]: info: connected to avast! '/var/run/avast4filescanner.sock'
avastguard[618]: warning: /home/oc/eicar.com infected by EICAR Test-NOT virus!!
avastguard[618]: warning: /home/oc/eicar.com2 infected by EICAR Test-NOT virus!!
avastguard[618]: warning: /home/oc/eicar.com2 infected by EICAR Test-NOT virus!!

Avastrelay – mail scanner

Program také dokáže scanovat poštu, dokumentace popisuje použití s poštovními servery sendmail, postfix a qmail. Možnosti konfigurace jsou opět bohaté – nastavit si můžete např. oznamování v případě detekce viru.

Avastd – daemon

Démon avastd umožňuje scanování dalším aplikacím, kromě standardních avastguardavastrelay to mohou být i aplikace třetích stran, protože jeho API je zdokumentované a umožňuje násobné spouštění.

Cena

Schránky 1 rok 2 roky 3 roky
10 - 19 429 Kč 628 Kč 807 Kč
20 - 49 279 Kč 406 Kč 520 Kč
50 - 99 179 Kč 261 Kč 335 Kč
100 - 199 119 Kč 173 Kč 222 Kč

Cena programu se určuje podle počtu emailových schránek; minimum je 10 mailboxů a toto minimum se použije také v případě, že o scanování emailů nemáte zájem. Jak už bylo řečeno výše, využít můžete měsíční bezplatné zkušební lhůty pro plnohodnotné testování programu.

Pro OS Windows existuje speciální home verze, která je pro nekomerční použití zdarma. Vzhledem k tomu, že avast! for linux je program především na servery, jeho nekomerční použití zdarma se neplánuje. V budoucnu bude možná vytvořena speciální verze pro linuxové desktopy, zatím je vše ale pouze ve fázi plánů.

Závěr

Avast tučňák

Program avast! 4 pro linux se mi docela líbil, skvělé uplatnění může mít např. při on-access scanování adresářů vysdílených přes sambu pro Windows nebo při kontrole elektronické pošty. Zajímavý je i speciální mod on-demand scaneru pro použití ve skriptech.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=293