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 7674×
Č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.
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.
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.
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ů.
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.
Program se skládá ze čtyř komponent:
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 #
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!!
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.
Démon avastd
umožňuje scanování dalším aplikacím, kromě standardních
avastguard
a avastrelay
to mohou být i aplikace třetích
stran, protože jeho API je zdokumentované a umožňuje násobné spouštění.
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ů.
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.