shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Filtrar MAC do log do iptables


From: Julio C. Neves
Subject: Re: [shell-script] Filtrar MAC do log do iptables
Date: Tue, 27 Apr 2010 17:29:01 -0300

Fala Alexandre,
para fazer rapidamente, inseri um sed no seu pipeline para detonar a partir
de MAC=, todos os hexadecimais e dois-pontos, terminando com espaço em
branco. Mas acho que o ideal seria fazer tudo em sed. Veja se é isso que vc
quer:

$ echo "Apr 27 15:27:15 server kernel: INT-RECUSOU-tcp IN=eth1 OUT=eth0
SRC=172.16.19.10 DST=189.72.115.23 LEN=48 TOS=0x00 PREC=0x00 TTL=127
ID=42626 DF PROTO=TCP SPT=3855 DPT=445 WINDOW=65535 RES=0x00 SYN URGP=0
Apr 27 15:27:37 server kernel: INT-RECUSOU-tcp IN=eth1 OUT=eth0
SRC=172.16.19.10 DST=189.72.115.24 LEN=48 TOS=0x00 PREC=0x00 TTL=127
ID=42641 DF PROTO=TCP SPT=3857 DPT=445 WINDOW=65535 RES=0x00 SYN URGP=0
Apr 27 15:27:46 server kernel: SERV-RECUSOU-udp IN=eth0 OUT=
MAC=00:01:02:77:39:e5:00:18:d1:e1:6c:69:08:00 SRC=61.44.213.54
DST=10.1.1.254 LEN=131 TOS=0x00 PREC=0x00 TTL=106 ID=5960 PROTO=UDP
SPT=34422 DPT=61673 LEN=111" | grep kernel|grep RECUSOU | sed -e
's/MAC=[[:xdigit:]:]* //'|awk '{$9="";print $3 " " $6 " " $10 " " $11;}'
15:27:15 INT-RECUSOU-tcp DST=189.72.115.23 LEN=48
15:27:37 INT-RECUSOU-tcp DST=189.72.115.24 LEN=48
15:27:46 SERV-RECUSOU-udp DST=10.1.1.254 LEN=131

Abraços,
Julio
Cursos de Shell e Zenity em 2 fins de semana?
- Aracaju turma de Shell em 12/05 - address@hidden;
- DF turma de Shell em 12/06 - ligue (61)3223-3000;
- RJ turma de Shell em 14/06 - ligue (21)2210-6061;
- Floripa turma de Shell e Zenity 12/07 – address@hidden;
- Turmas fechadas em outras cidades ligue (21)8112-9988.


Em 27 de abril de 2010 15:35, Alexandre Gorges <address@hidden>escreveu:

>
>
> Boa tarde,
>
> Estou tentando montar um log do iptables e encontrei um problema.
> Algumas linhas do iptables possuem a coluna MAC= e algumas não.
> Montei um tail com awk para listar, mas estou com um problema para filtrar
> a
> coluna MAC=. Eu não quero imprimir essa coluna no relatório.
>
> O log original sai assim:
>
> Apr 27 15:27:15 server kernel: INT-RECUSOU-tcp IN=eth1 OUT=eth0
> SRC=172.16.19.10 DST=189.72.115.23 LEN=48 TOS=0x00 PREC=0x00 TTL=127
> ID=42626 DF PROTO=TCP SPT=3855 DPT=445 WINDOW=65535 RES=0x00 SYN URGP=0
> Apr 27 15:27:37 server kernel: INT-RECUSOU-tcp IN=eth1 OUT=eth0
> SRC=172.16.19.10 DST=189.72.115.24 LEN=48 TOS=0x00 PREC=0x00 TTL=127
> ID=42641 DF PROTO=TCP SPT=3857 DPT=445 WINDOW=65535 RES=0x00 SYN URGP=0
> Apr 27 15:27:46 server kernel: SERV-RECUSOU-udp IN=eth0 OUT=
> MAC=00:01:02:77:39:e5:00:18:d1:e1:6c:69:08:00 SRC=61.44.213.54
> DST=10.1.1.254 LEN=131 TOS=0x00 PREC=0x00 TTL=106 ID=5960 PROTO=UDP
> SPT=34422 DPT=61673 LEN=111
>
> O tail que fiz ficou:
>
> tail -5 t|grep kernel|grep RECUSOU|awk '{$9="";print "<b>Hora:" $3 "
> A&ccedil;&atilde;o: </b>" $6 " " $10 " " $11;}'
>
> Dessa forma o resultado foi
>
> <b>Hora:15:27:15 A&ccedil;&atilde;o: </b>INT-RECUSOU-tcp DST=189.72.115.23
> LEN=48
> <b>Hora:15:27:37 A&ccedil;&atilde;o: </b>INT-RECUSOU-tcp DST=189.72.115.24
> LEN=48
> <b>Hora:15:27:46 A&ccedil;&atilde;o: </b>SERV-RECUSOU-udp SRC=61.44.213.54
> DST=10.1.1.254
>
> Reparem nas primeiras linhas. Listou apenas DST e não as colunas SRC e DST.
> Eu estou querendo eliminar a coluna do MAC inteira, tratando como se nunca
> tivesse existido a coluna MAC=.
>
> Do log original, o que eu preciso seria as colunas da hora, RECUSOU, SRC,
> DST, PROTO, SPT, DPT
>
> []'s
> Alexandre Gorges
> http://www.google.com.br/profiles/algorges
> MSN/Gtalk/iCHAT/Skype/Buzz: address@hidden <algorges%40gmail.com>
> ICQ: 2031408
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]