-

   rss_rss_hh_new

 - e-mail

 

 -

 LiveInternet.ru:
: 17.03.2011
:
:
: 51

:


Zabbix

, 30 2017 . 15:51 +


Zabbix . . , , , . Linux - , event-log Windows , Zabbix, , . .


, , , IT- , . , best practices , . , ELK , , . , . . . , Windows Server . , Zabbix, ? , , , , Zabbix , .

!


Event- .



EvtSys , EventLog Syslog.
, , 2 :

  • Microsoft , 4 , , , , , , . , , , . , , .
  • RSyslog zabbix_sender , .

.


.



Heka . , Logstash, . JRuby, , , , , . . :



, . . EvtSys Syslog Heka. syslog-, (payload) , . Zabbix . Zabbix-, , , Zabbix-. . , .

EvtSys


EvtSys, , , . , . EvtSys 4.5. , -t. LP , 2 , . EvtSys:

evtsys -i -h  -p  -f 17 -t 


Windows- facility local1, , . -t. , Zabbix. Heka Zabbix.


. Heka , . , Heka . Logstash, Heka . , :



Splitter Filter . . , , , Heka. , Heka.

  1. syslog- UDP .
  2. syslog-, .
  3. (payload) .
  4. .
  5. json- Zabbix.
  6. Zabbix.


Heka :



MultiDecoder. , ( syslog-decoder), ( events-decoder). , Heka. , . /etc/heka/conf.d/20-eventlog.toml.

Heka


.

[eventlog]
type = "UdpInput"
address = ":10514"
decoder = "syslog-decoder"


, 1024, . EvtSys syslog-. , .

[syslog-decoder]
type = "MultiDecoder"
subs = ["rsyslog-decoder", "events-decoder"]
cascade_strategy = "all"
#log_sub_errors = true


, ( ). cascade_strategy , , subs. log_sub_errors = true. Heka sub- .

[events-decoder]
type = "MultiDecoder"
subs = ["event-4624-decoder", "event-4625-decoder", "event-4724-decoder", "event-4738-decoder", "event-4740-decoder"]
cascade_strategy = "first-wins"
#log_sub_errors = true


Events-decoder , first-wins. , . , .

[rsyslog-decoder]
type = "SandboxDecoder"
filename = "lua_decoders/rsyslog.lua"
 
        [rsyslog-decoder.config]
        type = "RSYSLOG_TraditionalForwardFormat"
        template = '%TIMESTAMP% %HOSTNAME% %HOSTNAME% %syslogtag:1:32%%msg:::sp-if-no-1st-sp%%msg%'
        tz = "Europe/Moscow"


, Heka, , RSyslog. , . %HOSTNAME% . , , , -t EvtSys, . , , . . : Hostname? .

Event- , -, . regexp .

[event-4624-decoder]
type = "PayloadRegexDecoder"
match_regex = '^(?P4624):(?:[^:]+:){10}\s(?P[^\s]+)[^:]+:\s(?P[^\s]+)(?:[^:]+:){8}\s(?P[^\s]+)'
 
        [event-4624-decoder.message_fields]
        Type = "windows.eventlog"
        Key = 'eventlog.%EventID%'
        Value = '   %Domain%\%Account%   %IP%.'


, . . ( Type), ( encoder-).

[ZabbixEncoder]
type = "SandboxEncoder"
filename = "lua_encoders/zabbix_trapper.lua"


Lua. ( ). , Zabbix-.

[event-out-zabbix]
type = "TcpOutput"
message_matcher = "Type == 'windows.eventlog'"
address = "127.0.0.1:10051"
encoder = "ZabbixEncoder"
reconnect_after = 1


Zabbix. , Type. Encoder, .

reconnect_after = 1. . , TcpOutput TCP . : Zabbix - , . Heka Zabbix Wireshark, , TcpOutput . , , , TcpOutput Zabbix. , , , - Heka, Zabbix-. ? ;)


: RstEncoder . RstEncoder , , . , , . :

[event-out-file]
type = "FileOutput"
message_matcher = "Type == 'windows.eventlog'"
path = "/tmp/events.log"
perm = "666"
flush_count = 100
flush_operator = "OR"
encoder = "RstEncoder"


, flush_operator = OR. , . encoder, , message_matcher , . , . message_matcher , .

Zabbix Trapper


, encoder. /usr/share/heka/. encoder, /usr/share/heka/lua_encoders/zabbix_trapper.lua. , .

Zabbix Trapper Heka
require "os"
require "string"
require "table"
 
--  JSON.
-- https://www.kyne.com.au/~mark/software/lua-cjson.php
local cjson = require("cjson")
 
function process_message()
--    Zabbix.
    local host = read_message("Hostname")
--   .
    local key = read_message("Fields[Key]")
--   .
    local value = read_message("Fields[Value]")
 
--   JSON-. 
    local message = {}
--   ,        syslog .
    message["host"] = string.sub(host, 1, -2)
    message["key"] = key
    message["value"] = value
 
    local buffer = {message}
 
    local zabbix_message = {}
    zabbix_message["request"] = "sender data"
    zabbix_message["data"] = buffer
 
--   payload  ,       ,   JSON.
    inject_payload("json", "Payload", cjson.encode(zabbix_message))
    return 0
end



CJSON , Lua, /usr/share/heka/lua_modules/cjson.so.

Zabbix


, Zabbix Trapper, () eventlog.1102.

Zabbix


    3.0
    2016-10-01T13:30:30Z
    
        
             
        
    
    
        
    
    
        
            {Template Windows Users Audit:eventlog.4732.nodata(120)}=0
            {HOST.NAME}:      .
            
            0
            4
            {HOST.NAME}:      .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.1102.nodata(120)}=0
            {HOST.NAME}:   .
            
            0
            4
            {HOST.NAME}:   .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4740.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            3
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4735.nodata(120)}=0
            {HOST.NAME}:     .
            
            0
            4
            {HOST.NAME}:     .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4738.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            4
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4781.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            4
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4725.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            4
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4724.nodata(120)}=0
            {HOST.NAME}:     .
            
            0
            4
            {HOST.NAME}:     .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4731.nodata(120)}=0
            {HOST.NAME}:     .
            
            0
            4
            {HOST.NAME}:     .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4720.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            4
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4734.nodata(120)}=0
            {HOST.NAME}:     .
            
            0
            3
            {HOST.NAME}:     .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4726.nodata(120)}=0
            {HOST.NAME}:    .
            
            0
            3
            {HOST.NAME}:    .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4733.nodata(120)}=0
            {HOST.NAME}:      .
            
            0
            3
            {HOST.NAME}:      .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4624.nodata(10)}=0
            {HOST.NAME}:     .
            
            0
            1
            {HOST.NAME}:     .
{ITEM.LASTVALUE}
            0
            
        
        
            {Template Windows Users Audit:eventlog.4625.nodata(120)}=0
            {HOST.NAME}:        .
            
            0
            2
            {HOST.NAME}:        .
{ITEM.LASTVALUE}
            0
            
        
    




, . , , . 2 , .

?


. , . , , . , :

  • .
  • .
  • ( ).
  • TCP ( ).


, Zabbix- .



, , Zabbix , . security-.



. , - , Windows-, , . , , , .

P.S. , . - , .
Original source: habrahabr.ru (comments, light).

https://habrahabr.ru/post/329794/

:  

: [1] []
 

:
: 

: ( )

:

  URL