GNU/Linux >> Znalost Linux >  >> Panels >> Webmin

Analýza souborů protokolu Webalizer

Tato kapitola vysvětluje, jak vytvořit zprávy ze souborů protokolu vašeho webu nebo proxy serveru pomocí Webalizeru balík.

Obsah

Modul Webalizer Logfile Analysis

Webalizer je volně dostupný program pro analýzu a generování zpráv ze souborů protokolu Apache Webserver, Squid a WU-FTPd. Pokud provozujete webovou stránku a chcete zjistit, které stránky jsou nejvíce navštěvovány, v jaké časy přichází největší návštěvnost nebo ze kterých zemí pochází, Webalizer je nástroj, který můžete použít. Pokud spravujete Squid Proxy Server a chcete vidět, ke kterým stránkám klienti nejčastěji přistupují a kdy je proxy nejvíce využíván, může generovat zprávy zobrazující tyto informace také.

Na rozdíl od mnoha jiných serverů, které může Webmin konfigurovat, je Webalizer relativně jednoduchý. Když je příkaz webalizer spuštěn, načte soubor protokolu a vygeneruje stránky HTML a obrázky na základě záznamů v tomto protokolu. Může také číst statistiky shromážděné v předchozích spuštěních ze souboru historie, takže zpráva může obsahovat data, která již nejsou v souboru protokolu. Stejný soubor historie je poté aktualizován informacemi z nejnovější zprávy pro použití při následném zpracování. To umožňuje správci systému bezpečně odstranit původní soubor protokolu, jakmile byl shrnut.

Webalizer ve výchozím nastavení používá globální konfigurační soubor /etc/webalizer.conf, který určuje druhy tabulek a grafů, které se mají generovat, a názvy, které se mají použít. V systému, který je hostitelem více virtuálních serverů, obvykle existuje několik konfiguračních souborů, takže pro různé lokality lze nastavit různé možnosti hlášení. Bohužel neexistuje způsob, jak zkombinovat obě možnosti z globálních konfiguračních souborů i konfiguračních souborů pro jednotlivé protokoly – při generování sestavy lze použít pouze jednu.

Protože k souborům protokolu jsou vždy připojovány nové požadavky, Webalizer obvykle spouští podle plánu program jako Cron. Nemá svůj vlastní serverový proces nebo démona, a tak závisí na plánovači, který jej vyvolá každý den nebo dva, aby znovu zpracoval každý soubor protokolu a znovu vygeneroval každou zprávu.

Díky své relativní jednoduchosti se Webalizer chová identicky na všech variantách Unixu. To znamená, že funkčnost a rozvržení modulu Webmin je také totožné, i když modul Scheduled Cron Jobs musí být nainstalován a funkční, aby funkce plánovaného hlášení fungovala.

Ikonu modulu Webalizer Webmin najdete v kategorii Servery. Když na něj poprvé kliknete, zobrazí se stránka se seznamem všech souborů protokolu, které byly Apache nebo Squid nakonfigurovány pro použití ve vašem systému, jak je znázorněno na obrázku 39-1. Analýzou konfigurací těchto chyb může modul obecně zjistit, kde jsou umístěny všechny protokoly ve vašem systému, které lze analyzovat – do modulu však můžete snadno přidat i další soubory protokolů pro vytváření sestav.

Hlavní obrazovka Webalizer Logfile Analysis

Pokud modul zjistí, že Webalizer není ve vašem systému skutečně nainstalován, hlavní stránka místo toho zobrazí chybovou zprávu. Pokud k tomu dojde, budete jej muset nainstalovat buď z distribučního CD Linuxu, nebo z webové stránky programu na adrese www.webalizer.org. Mnoho verzí Linuxu standardně obsahuje balíček Webalizer, který můžete nainstalovat pomocí modulu Software Packages.

Pokud plánujete použít modul k analýze více souborů protokolů, je důležité se ujistit, že globální konfigurace Webalizer je správně nastavena tak, aby to podporovala. Verze dodávaná s některými distribucemi Linuxu (jako je Redhat) nesprávně používá absolutní cesty pro soubory historie a mezipaměti, které ukládají informace o předchozích spuštěních zpracování. Chcete-li tento problém vyřešit, před nastavením možností pro jakékoli soubory protokolu postupujte podle následujících kroků:

  1. Na hlavní stránce modulu klikněte na Upravit globální možnosti tlačítko ve spodní části. Tím se dostanete do formuláře pro úpravy možností, které platí pro všechny soubory protokolu.
  2. V Historie Webalizeru soubor, ujistěte se, že je vybrán druhý přepínač a v textovém poli se objeví webalizer.hist. Pokud je zobrazena nějaká absolutní cesta jako /var/stats/webalizer.hist, změňte ji.
  3. Podobně se ujistěte, že přírůstkový soubor Webalizer pole je nastaveno na webalizer.current a ne nějaká úplná cesta.
  4. Soubor mezipaměti DNS Webalizer lze ponechat nastavenou na absolutní cestu, pokud chcete, aby byly informace DNS sdíleny mezi různými sestavami.
  5. Klikněte na tlačítko Uložit tlačítko ve spodní části stránky pro uložení nového nastavení.

Úprava možností přehledu

Než budete moci vygenerovat sestavu ze souboru protokolu, musíte nastavit určité možnosti, jako je výstupní adresář, uživatel systému Unix pro spuštění sestavy a nastavení rozložení sestavy. Za předpokladu, že byl protokol automaticky identifikován modulem a je zobrazen na hlavní stránce, postupujte takto:

  1. Na hlavní stránce modulu klikněte na název souboru protokolu webového serveru, pro který chcete vygenerovat zprávu. Zobrazí se stránka se seznamem aktuálních nastavení pro tento soubor, jak ukazuje Obrázek 39-2.
  2. Všechny soubory protokolu v přehledu pole přesně ukazuje, které soubory budou použity v jakékoli zprávě vytvořené aplikacemi Webmin a Webalizer. Protože mnoho systémů je nakonfigurováno tak, aby pravidelně přesouvalo, zkracovalo, komprimovalo a případně odstraňovalo soubory protokolu Apache a Squid (často pomocí programu jako logrotate), modul bude obsahovat všechny soubory ve stejném adresáři, které začínají stejným názvem jako primární soubor protokolu. Pokud tedy hlásíte například na /var/log/httpd/access_log, zobrazí se v tomto poli také soubory access_log.0.gz, access_log.1.gz atd. v /var/log/httpd.
  3. V části Zapsat zprávu do adresáře zadejte adresář, ve kterém mají být vytvořeny HTML stránky pro sestavu. Ten již musí existovat a obecně by měl být pod kořenem dokumentu webové stránky – například /home/example.com/stats . Musí být ve vlastnictví nebo zapisovat uživatelem uvedeným v dalším poli. Ujistěte se, že adresář není používán pro nic jiného, ​​protože Webalizer vytvoří soubor index.html a další HTML stránky, které mohou přepsat cokoli, co již obsahuje.
  4. Do Spustit webalizer jako uživatel zadejte jméno uživatele Unixu, kterému mají být vygenerované soubory přehledů vlastněny. pole. Měl by to být uživatel, který vlastní soubory HTML webové stránky, aby je mohl v případě potřeby upravit nebo přesunout. Nebo můžete zadat root pokud jsou zprávy pouze pro vaši vlastní potřebu. Vzhledem ke způsobu, jakým modul spouští Webalizer, nemusí mít zadaný uživatel přístup k souboru protokolu pro čtení – musí však mít možnost zapisovat do adresáře sestav!
  5. Nechat Vždy znovu zpracovat soubory protokolu? *pole nastaveno na *Ne , takže Webalizer může využít informace uložené v mezipaměti z předchozích spuštění sestav. Nastavení na Ano způsobí, že všechny mezipaměti a předchozí statistiky budou před každým spuštěním zahozeny, takže celý soubor protokolu bude znovu zpracován. To znamená, že žádná data, která již nejsou v souborech protokolu, nebudou zahrnuta do sestavy. Výběrem Ano je nejužitečnější, pokud chcete obejít ukládání starých statistik Webalizerem do mezipaměti, které může být nesprávné, pokud se soubor protokolu od posledního spuštění úplně změnil.
  6. V Možnosti přehledu vyberte Vlastní možnosti aby modul zkopíroval globální konfigurační soubor Webalizer pro tento protokol, abyste mohli později definovat možnosti, které se vztahují pouze na tuto sestavu. Pokud máte v systému pouze jednu webovou stránku nebo se nestaráte o přizpůsobení sestav pro různé virtuální servery, můžete vybrat Použít globální možnosti místo toho přepínač. Pokud ano, kroky 9 až 19 lze ignorovat. Poslední možnost pro toto pole, Jiný konfigurační soubor , umožňuje zadat existující konfigurační soubor Webalizer, který se má použít při generování sestavy. To může být užitečné, pokud jste program dříve používali v tomto souboru protokolu a již jste pro něj upravili nastavení.
  7. Opusťte Plánované generování přehledů nastaveno na Zakázáno pro teď. Sekce „Hlášení podle plánu“ vysvětluje, jak je povolit.
  8. Klikněte na tlačítko Uložit tlačítko v dolní části stránky. Pokud ve vašem zadání nebyly žádné chyby, vrátíte se na hlavní stránku modulu.
  9. Pokud jste v kroku 6 zvolili *Vlastní možnosti *, klikněte znovu na název souboru protokolu a poté na Možnosti úprav tlačítko v dolní části stránky. Zobrazí se formulář možností zobrazený na obrázku 39-3.
  10. V poli Název hostitele webu vyberte druhý přepínač a do textového pole zadejte název svého webu z adresy URL, například www.example.com .
  11. Chcete-li přizpůsobit druhy souborů, které Webalizer považuje za stránky, upravte přípony v poli *Typy souborů k hlášení*. Jiné typy (jako jsou obrázky nebo zvukové soubory) se pro většinu účelů hlášení nezapočítávají.
  12. Pokud vaše stránky používají jiné soubory HTML indexu adresáře než ty, které začínají indexem. (například home.html ) zadejte jejich názvy souborů na stránky indexu adresáře pole. Normálně může být toto pole ponecháno prázdné.
  13. Webalizer obvykle převádí časy v souborech protokolu na místní časové pásmo vašeho systému. Chcete-li místo toho vynutit použití GMT, změňte Nahlásit časy v GMT? pole na Ano . Pokud si přehled nezobrazují lidé v různých časových pásmech, měli byste jej nechat nastaveno na Ne ačkoli.
  14. Pokud soubor protokolu může obsahovat záznamy, které jsou datovány po záznamech, které se objevily dříve, nastavte pole *Zpracovat položky protokolu mimo pořadí?* na Ano . To mírně zpomalí generování přehledů, ale pokud Ne je vybrán a protokol obsahuje záznamy mimo pořadí, Webalizer jej nezpracuje úplně. Některé webové servery, jako je Netscape, mají na svědomí generování souborů protokolu, jako je tento.
  15. Soubor historie Webalizeru , Přírůstkový soubor Webalizeru a mezipaměť DNS Webalizer pole lze obecně ponechat beze změny, pokud jsou nastavena na relativní cesty. V úvodu je podrobněji vysvětleno, proč je to nutné.
  16. V části Grafy a tabulky k zobrazení části, zrušte výběr těch, které nechcete zahrnout do sestavy.
  17. V části Řádky a viditelnost tabulky v sekci můžete změnit velikost každé tabulky, která se zobrazí, nebo ji úplně odstranit výběrem Žádná .
  18. Chcete-li zapnout vytváření dalších stránek v přehledu se seznamem všech klientů, kteří přistupují na váš web, navštívených adres URL atd., zaškrtněte příslušná zaškrtávací políčka v části *Vygenerovat stránky se seznamem všech*. V opačném případě budou do zprávy zahrnuty pouze tabulky s 20 nejlepšími.
  19. Nakonec klikněte na tlačítko Uložit tlačítko v dolní části stránky. Zprávy generované od této chvíle budou používat tyto možnosti.
Figure 39-2 “The log file options page” 

Ačkoli jsou výše uvedené pokyny napsány s ohledem na soubory protokolu Apache, vztahují se také na protokoly Squid. Jediný rozdíl je v tom, že Squid nemá žádný kořenový adresář dokumentů, takže budete muset vytvořit nový adresář pro sestavu. To by mohlo být v kořenovém adresáři vašeho webového serveru, takže zprávu může zobrazit kdokoli. Pokud ano, jméno uživatele Unixu, který vlastní HTML soubory webového serveru, by mělo být zadáno do Spustit webalizer jako uživatel pole.

Vytvoření a zobrazení přehledu

Jakmile nastavíte možnosti pro zprávu, je její generování ve skutečnosti jednoduché. Postupujte podle těchto kroků:

  1. Na hlavní stránce klikněte na název souboru protokolu, pro který se sestava generuje.
  2. Klikněte na Vygenerovat přehled tlačítko ve spodní části formuláře. Zobrazí se stránka zobrazující výstup Webalizeru při jeho spuštění v každém ze souborů protokolu, takže můžete vidět všechny chyby, které se vyskytnou. Při prvním zpracování velkého souboru protokolu to může trvat dlouho (možná hodiny), protože pro každou adresu IP klienta v souboru je nutné provést zpětné vyhledávání. Skutečná zátěž CPU a sítě je naštěstí minimální.
  3. Pokud vše půjde dobře, budou HTML stránky sestavy vytvořeny v cílovém adresáři. Chcete-li jej zobrazit, klikněte na odkaz *Zobrazit dokončenou zprávu* pod výstupem.
  4. První stránka přehledu zobrazuje graf návštěvnosti webových stránek podle měsíce s odkazy níže na stránky obsahující podrobnosti pro každý jednotlivý měsíc. Každá ze stránek měsíce zobrazuje tabulky a grafy návštěv podle dne, hodiny, klienta, stránky a země a může také zobrazovat návštěvy podle uživatele, prohlížeče a odkazujícího subjektu, pokud jsou tyto informace zahrnuty ve vašem protokolu. soubory.
  5. Stejný přehled lze zobrazit přímo z hlavní stránky modulu kliknutím na Zobrazit odkaz v Přehledu sloupec pro soubor protokolu nebo klepnutím na Zobrazit zprávu ve formuláři možností souboru protokolu.

Přehledy podle plánu

Namísto ručního generování sestavy ze souboru protokolu můžete tento modul použít k nastavení úlohy Cron, která pravidelně spouští Webalizer. Obecně by měla být sestava aktualizována každý jeden nebo dva dny v závislosti na velikosti souboru protokolu. Protože zpracování některých velkých protokolů trvá dlouho, příliš časté obnovování (například jednou za hodinu) může způsobit, že na stejném souboru protokolu bude spuštěno více procesů Webalizeru současně, což poškodí výslednou sestavu.

Obecně je dobré vygenerovat report pro soubor protokolu z Webminu alespoň jednou před nastavením plánovaného reportování, abyste viděli, jestli to opravdu funguje nebo ne. Jakmile to uděláte, postupujte takto:

  1. Na hlavní stránce modulu klikněte na název souboru protokolu. Tím se dostanete na formulář možností zobrazený na obrázku 39-2.
  2. Změňte Naplánovaný přehled generování pole na *Povoleno, v časech vybraných níže*.
  3. V minutách vyberte časy a dny, kdy má být soubor protokolu znovu zpracován , Hodiny , Dny , Měsíce a pracovní dny seznamy níže. U každého můžete vybrat Vše aby byl přehled generován každou minutu, hodinu nebo cokoliv jiného – nebo můžete zvolit Vybráno aby Webalizer běžel pouze v časech nebo datech vybraných ze seznamu. Chcete-li vybrat více položek, podržte při kliknutí klávesu Control nebo Shift. Můžete také zrušit výběr položek, které již byly vybrány, a kliknout se stisknutou klávesou Ctrl. Ve výchozím nastavení bude protokol zpracován každý den o půlnoci. Pokud máte více sestav, které se generují podle plánu, zkuste je rozložit tak, aby se nespouštěly všechny současně. Například ve svém druhém přehledu vyberte jako hodinu _1_ místo *0* a tak dále.
  4. Klikněte na tlačítko Uložit Chcete-li, aby Webmin vytvořil pro sestavu úlohu Cron. Budete to moci vidět v modulu Scheduled Cron Jobs, ale zde byste měli upravovat pouze data a časy.

Chcete-li vypnout pravidelné generování zpráv pro soubor protokolu, vyberte možnost Zakázáno pro naplánované generování přehledů pole místo toho. Úloha Cron bude odstraněna, ale časy a data, kdy byla nastavena ke spuštění, budou zapamatovány, abyste ji mohli snadno znovu povolit.

Přidání dalšího souboru protokolu

I když se modul pokouší automaticky identifikovat všechny soubory protokolu ve vašem systému, přečtením konfiguračních souborů Apache a Squid mohou existovat některé, které mu chybí. To se může stát, že moduly Apache Webserver nebo Squid Proxy Server nebyly správně nastaveny, pokud máte na svém systému nainstalovanou více než jednu kopii Apache, nebo pokud byl webový server nakonfigurován tak, aby se přihlašoval k filtrovacímu programu spíše než k normálnímu soubor.

Pokud chcete vygenerovat zprávu ze souboru protokolu FTP serveru, budete určitě muset přidat soubor do modulu, protože protokoly WU-FTPd nezjišťuje automaticky. Můžete také přidat protokoly z jiných webových serverů, jako je Zeus, TUX, Netscape nebo NSCA, za předpokladu, že používají standardní formát CLF, který používá Apache. Je dokonce možné vytvořit zprávu o protokolech vytvořených aplikacemi Webmin a Usermin, které se nacházejí na /var/webmin/miniserv.log a /var/usermin/miniserv.log.

Kroky k ručnímu přidání souboru protokolu pro hlášení jsou:

  1. Na hlavní stránce modulu klikněte na odkaz *Přidat nový soubor protokolu pro analýzu* nad nebo pod tabulkou existujících protokolů.
  2. V Cesta k základnímu souboru protokolu zadejte úplnou cestu k souboru protokolu, například /usr/local/apache/var/foo.com.log . Pokud ve stejném adresáři existují nějaké další soubory protokolu, jejichž názvy začínají foo.com.log , budou také zahrnuty do zprávy.
  3. Z Typ souboru protokolu vyberte buď Apache pro soubory formátu CLF generované webovým serverem Squid pro protokoly z proxy serveru Squid nebo FTP pro protokoly přenosu z WU-FTPd.
  4. Zbytek formuláře lze vyplnit přesně stejným způsobem jako u existujícího souboru protokolu. Postupujte podle kroků 3 a dále v části „Upravit možnosti sestavy“ výše v této kapitole.

Jeden rozdíl mezi ručně přidanými soubory protokolu a soubory detekovanými modulem automaticky je přítomnost Delete ve spodní části stránky možností souboru protokolu. Kliknutím na něj odstraníte protokol ze seznamu na hlavní stránce, ale všechny zprávy a samotný soubor protokolu zůstanou nedotčeny.

Úprava globálních možností

Webalizer má hlavní konfigurační soubor s názvem /etc/webalizer.conf, který modul používá, pokud Možnosti sestavy pole je nastaveno na Použít globální možnosti . Zkopíruje se také, když vyberete *Vlastní možnosti*, abyste poskytli počáteční nastavení pro konfiguraci souboru protokolu – avšak následná změna globálních možností nebude mít žádný vliv na žádné protokoly, které již používají svůj vlastní konfigurační soubor.

Pokud máte ve svém systému pouze jeden soubor protokolu, který vyžaduje analýzu, je smysluplnější použít pouze globální soubor webalizer.conf namísto vytvoření jednoho pouze pro zprávu o tomto protokolu. A pokud plánujete nastavit vytváření přehledů pro více souborů protokolu, měli byste nejprve upravit globální konfiguraci Webalizeru, abyste poskytli šablonu, ze které se zkopírují konfigurace jednotlivých protokolů. Chcete-li jej upravit, postupujte takto :

  1. Na hlavní stránce modulu klikněte na Upravit globální možnosti ikona. Váš prohlížeč zobrazí formulář možností podobný tomu na obrázku 39-3.
  2. Chcete-li nakonfigurovat vzhled všech zpráv, postupujte podle kroků 11 a dále v části „Upravit možnosti sestavy“ dříve v této kapitole. Pole v tomto formuláři mají přesně stejný význam jako pole na stránce možností jednotlivých sestav.
  3. Klikněte na tlačítko Uložit tlačítko pro aktualizaci konfiguračního souboru s vašimi změnami.

Pokud generujete více než jeden přehled, je mnohem smysluplnější nastavit možnosti pro každý jednotlivě. Tímto způsobem můžete pro každého nastavit jiný název hostitele webového serveru, takže název a odkazy na stránky v každém přehledu jsou správné.

Globální možnosti Webalizeru

Řízení přístupu k modulu

Jak vysvětluje kapitola 52, můžete vytvořit uživatele nebo skupinu Webmin, kteří mají přístup pouze k omezené podmnožině funkcí většiny modulů. V případě modulu Webalizer můžete uživateli udělit práva k úpravám možností a generování sestav pouze z některých protokolů ve vašem systému. To může být užitečné, pokud váš systém hostí více virtuálních serverů Apache, z nichž každý vlastní jiná osoba. Pokud má každý server svůj vlastní samostatný soubor protokolu, můžete uživateli Webminu udělit práva ke správě virtuálního serveru a jeho protokolové zprávy.

Jakmile je uživateli udělen přístup k modulu, postupujte podle následujících kroků, abyste jej omezili pouze na některé soubory protokolu ve vašem systému:

  1. V modulu Webmin Users klikněte na Webalizer Logfile Analysis vedle jména uživatele. Tím se zobrazí standardní formulář pro řízení přístupu k modulu.
  2. Změňte Lze upravit konfiguraci modulu? pole na Ne , takže nemůže upravovat cesty k Webalizeru nebo jeho globálnímu konfiguračnímu souboru.
  3. Nechte Lze zobrazit pouze existující přehledy? nastavit na Ne , takže uživatel může upravovat možnosti zpráv o souborech protokolu, které vlastní.
  4. Nastavte Lze upravit globální možnosti webalizeru? na Ne abyste zabránili možnostem úprav uživatele, které se mohou vztahovat na protokoly jiných lidí.
  5. V poli Spustit Webalizer jako uživatel , vyberte poslední přepínač a zadejte jméno uživatele Unixu, pod kterým se tento uživatel Webmin běžně přihlašuje. To mu zabrání v nastavování zpráv, které jsou generovány jako root, což by mohlo představovat vážné bezpečnostní riziko, protože by to umožnilo přepsání systémových souborů a souborů patřících jiným lidem.
  6. Do pole *Povolit zobrazení a úpravy sestav pouze pro protokoly* zadejte buď úplnou cestu k souboru protokolu (jako /var/log/httpd/example.com.log ) nebo adresář, který má pod sebou soubory protokolu (například /home/example.com/logs ). Modul skryje všechny automaticky zjištěné protokoly mimo tento adresář, takže uživatel nemůže nastavit sestavy pro webové stránky jiných lidí.
  7. Klikněte na tlačítko Uložit tlačítko pro aktivaci nových omezení.

Jakmile bude uživatel takto omezen, bude moci pomocí modulu nastavit hlášení pouze pro ty soubory protokolu v adresáři allow. Zprávy budou generovány pouze jako uživatel Unixu specifikovaný v kroku 5, což zabrání uživateli Webminu v přepisování souborů, které by normálně nebyl schopen na příkazovém řádku shellu. Díky tomu je použití modulu pro nedůvěryhodné osoby zcela bezpečné, ačkoli uživatel se zlými úmysly by mohl nastavit úlohu Cron pro vytváření sestav, která se spouští extrémně často a zabírá nadměrné množství času CPU.

Konfigurace modulu Webalizer Logfile Analysis

Cesty, které modul používá pro program Webalizer a jeho globální konfigurační soubor, můžete nastavit pomocí konfiguračního formuláře modulu, který je dostupný přes standardní Module Config odkaz na hlavní stránce. Po kliknutí na něj se zobrazí formulář obsahující následující pole:

Obrazovka konfigurace webalizeru
Webmin
  1. Protokol akcí Webmin

  2. Najít soubor protokolu Firefoxu?

  3. Linux připojit výstup konzoly k souboru protokolu?

  1. Rozdíl mezi /var/log/messages, /var/log/syslog a /var/log/kern.log?

  2. Zaznamenat aktivitu Ssh?

  3. Jak se přihlásit do cPanelu (vysvětleno)

  1. Přihlašovací obrazovka serveru je černá

  2. Nainstalujte Log.io na CentOS 7

  3. Soubory protokolu Linux