Log aceita pacotes com o ufw

0

Estou usando o ufw no Ubuntu 18.04 LTS, e quero registrar ambos os pacotes aceitos e aceitos (estou ciente de que isso gerará muitos logs).

Eu posso fazer isso aumentando o nível de log do ufw com ufw logging high - mas também quero registrar algumas informações adicionais que não estão incluídas por padrão (opções TCP e número de sequência), então isso não funcionará para mim .

Acredito que o local correto para adicionar regras de criação de log personalizadas é /etc/ufw/before.rules , e adicionei isso no final do arquivo, pouco antes do COMMIT :

-A INPUT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
-A FORWARD -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "

No entanto, isso é apenas o registro de pacotes descartados, não aceitos. Eu acho que isso é algo a ver com a ordem das regras do iptables, mas eu não vejo mais nada em before.rules que possa causar curto-circuito no log de pacotes aceitos.

Algumas outras restrições são que não desejo registrar nenhuma conexão de saída ou qualquer tráfego de loopback.

Alguma idéia de como posso registrar os pacotes descartados e aceitos com informações extras?

    
por Cocowalla 10.09.2018 / 10:31

1 resposta

0

-A acrescenta regras no final da corrente iptables .

Se você quiser registrar todos os pacotes, antes de mais nada, tente usar -I :

-I INPUT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
-I FORWARD -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "

Dito isso, a melhor maneira de resolver esses problemas é criar novas cadeias e modificar suas regras para usar essas cadeias em vez das cadeias padrão.

Como exemplo (simples), você pode ter dois novos alvos:

iptables -N LOG_DROP
iptables -N LOG_ACCEPT

e crie regras "padrão" como

iptables -A LOG_DROP -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
iptables -A LOG_DROP -j DROP

iptables -A LOG_ACCEPT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
iptables -A LOG_ACCEPT -j ACCEPT

Em seguida, nas suas regras, você pode "enviar" para LOG_DROP em vez de DROP e LOG_ACCEPT em vez de ACCEPT :

iptables -A INPUT -p tcp --dport 22 -j LOG_DROP # Log and drop input packets to port 22
    
por 10.09.2018 / 10:42