Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Naplózás a nyílt forráskódú

Hasonló előadás


Az előadások a következő témára: "Naplózás a nyílt forráskódú"— Előadás másolata:

1 Naplózás a nyílt forráskódú
nxlog rendszerrel Botyánszki Botond

2 Miért naplózzunk? Törvényi megfelelőség (PSZÁF, PCI-DSS, SOX, stb)
Belső policy Biztonsági incidensek felderítése Üzembiztonság Debugolás Audit Monitoring

3 A teljes IT infrastruktúra naplózása központosítva
A feladat: A teljes IT infrastruktúra naplózása központosítva

4 Az nxlog naplózó rendszer
2011. Októberében lett nyílt forráskódú Letölthető a Sourceforge-ról: Multi-platform: Moduláris – Különféle funkciók betölthető modulokba szeparálva Kis erőforrásigény – Nagy teljesítmény Több-szálú párhuzamosított feldolgozás. Memóriafogyasztás néhány Mb. Több ezer hálózati kapcsolat kezelése párhuzamosan. Events per sec – százezres nagyságrend. C-ben implementálva – kicsi és gyors.

5 Apache access.log feldolgozása
Az Apache access.log naplóját válogassuk szét a HTTP státusz kód szerint úgy, hogy a kliens és a szerver hibák külön fájlba kerüljenek. A két hibatípus naplóit a client_error.log illetve a server_error.log fájlba mentjük. [14/Aug/2010:23:42: ] "GET /index.html HTTP/1.1" " "Mozilla/5.0 (X11; Linux x86_64;) Gecko/ (like Firefox/3.5.9)" Az access.log fájl a Common Log Format (CLF) szerint értelmezhető. A 400-as hibakód tartomány a kliens, az 500-as a szerver hibákat jelöli.

6 Apache access.log feldolgozása
<Input access_log> Module im_file File '/var/log/apache2/access.log' Exec if $raw_event =~ /^(\S+) (\S+) (\S+) \[([^\]]+)\] \"(\S+) (.+) HTTP.\d\.\d\" (\d+) (\S+) \"([^\"]+)\" \"([^\"]+)\"/\ { \ $Hostname = $1; \ if $3 != '-' $AccountName = $3; \ $EventTime = parsedate($4); \ $HTTPMethod = $5; \ $HTTPURL = $6; \ $HTTPResponseStatus = integer($7); \ $FileSize = $8; \ $HTTPReferer = $9; \ $HTTPUserAgent = $10; \ } </Input> nxlog.conf <Output client_error> Module om_file File '/var/log/apache2/client_error.log' Exec if ($HTTPResponseStatus < 400) or \ ($HTTPResponseStatus >= 500) drop(); </Output> <Output server_error> File '/var/log/apache2/server_error.log' Exec if ($HTTPResponseStatus < 500) drop(); <Route apache> Path access_log => client_error, server_error </Route>

7 Apache access.log feldolgozása
<Input access_log> Module im_file File '/var/log/apache2/access.log' Exec if $raw_event =~ /^(\S+) (\S+) (\S+) \[([^\]]+)\] \"(\S+) (.+) HTTP.\d\.\d\" (\d+) (\S+) \"([^\"]+)\" \"([^\"]+)\"/\ { \ $Hostname = $1; \ if $3 != '-' $AccountName = $3; \ $EventTime = parsedate($4); \ $HTTPMethod = $5; \ $HTTPURL = $6; \ $HTTPResponseStatus = integer($7); \ $FileSize = $8; \ $HTTPReferer = $9; \ $HTTPUserAgent = $10; \ } </Input> [14/Aug/2010:23:42: ] "GET /index.html HTTP/1.1" " "Mozilla/5.0 (X11; Linux x86_64;) Gecko/ (like Firefox/3.5.9)"

8 Apache access.log feldolgozása
<Input access_log> Module im_file File '/var/log/apache2/access.log' Exec if $raw_event =~ /^(\S+) (\S+) (\S+) \[([^\]]+)\] \"(\S+) (.+) HTTP.\d\.\d\" (\d+) (\S+) \"([^\"]+)\" \"([^\"]+)\"/\ { \ $Hostname = $1; \ if $3 != '-' $AccountName = $3; \ $EventTime = parsedate($4); \ $HTTPMethod = $5; \ $HTTPURL = $6; \ $HTTPResponseStatus = integer($7); \ $FileSize = $8; \ $HTTPReferer = $9; \ $HTTPUserAgent = $10; \ } </Input> <Output client_error> Module om_file File '/var/log/apache2/client_error.log' Exec if ($HTTPResponseStatus < 400) or \ ($HTTPResponseStatus >= 500) drop(); </Output> <Output server_error> File '/var/log/apache2/server_error.log' Exec if ($HTTPResponseStatus < 500) drop(); <Route apache> Path access_log => client_error, server_error </Route>

9 Központosított naplózáshoz
EventLog MSSQL File MySQL Syslog File Heterogén környezet Különféle források Titkosított továbbítás Előfeldolgozás, mintaillesztés Tárolás adatbázisba Riportok, statisztikák, riasztások

10 Kérdések 5 percben? Köszönöm a figyelmet!
Botyánszki Botond | |


Letölteni ppt "Naplózás a nyílt forráskódú"

Hasonló előadás


Google Hirdetések