tcpdump rotação circular baseada no tempo

2

Apesar de ler a man page e pesquisar no StackExchange e na Internet em geral, não consegui descobrir uma maneira de fazer uma contagem baseada em tempo, rotativa, limitada, tcpdump.

Por exemplo, quero ter um arquivo por hora, com no máximo 24 horas. Mas eu não quero que o tcpdump pare depois de 24 arquivos, eu quero que ele delete o mais antigo e crie um novo arquivo. Eu quero que ele seja executado para sempre, mas nunca faça mais de 24 arquivos.

A página man parece indicar que, se você usa -C -W -G juntos, pode conseguir isso, mas meu teste não mostrou que isso funcione.

Usando -G -W e strftime após 5 arquivos

# tcpdump -w foo.%F_%H%M%S -G 5 -W 5 -Z root port 22
tcpdump: listening on enp0s3, link-type EN10MB (Ethernet), capture size 65535 bytes
Maximum file limit reached: 5

Usar todos os três juntos parece limitar o número de arquivos gerados por período de tempo. Por exemplo, o abaixo irá capturar até 5 x 1MB de arquivos em cada janela de 5s. Se houver mais de 5MB em 5s, apenas os últimos 5MB serão mantidos. O número total de arquivos, no entanto, crescerá para sempre.

# tcpdump -w foo.%F_%H%M%S -G 5 -C 1 -W 5 -Z root port 22

Isso capturará arquivos de 5 x 1 MB e substituirá em um anel.

# tcpdump -w foo -C 1 -W 5 -Z root port 22

Mas quero girar pelo tempo, não pelo tamanho.

    
por Slashterix 31.01.2017 / 07:44

1 resposta

3

Considere o seguinte como um exemplo que produz seis arquivos de captura por minuto indefinidamente:

# tcpdump -i eth0 -G 10 -w dump-%S.pcap .

Observe que apenas a segunda variável de tempo %S precisa ser especificada no nome do arquivo de modelo, com um período de tempo de dez segundos especificado por -G . Quando o tempo de captura muda de minuto para minuto, tcpdump sobrescreve o segundo arquivo marcado anteriormente.

Agora, uma captura rotacional e cíclica diária por hora pode ser obtida por:

# tcpdump -i eth0 -G 3600 -w dump-%H.pcap .

O mesmo raciocínio se aplica aqui. tcpdump cria um novo arquivo a cada 3600 segundos, nomeando-o com a hora atual. Ao alterar os dias, os arquivos de horas anteriores são substituídos sequencialmente.

    
por 24.05.2017 / 18:38

Tags