iptables log de conexão SSH

7

É possível escrever apenas uma entrada de registro quando uma conexão é estabelecida? Eu tentei:

iptables -I OUTPUT -p tcp --dport 22 -j LOG --log-level notice --log-prefix "outgoing ssh connection"

para registrar conexões SSH de saída, mas isso registra todos os pacotes e isso é como você pode imaginar um pouco avassalador para fins de monitoramento. Eu estou executando o SLES 11 SP3. Então, eu ficaria grato se alguém pudesse apontar uma maneira de escrever apenas uma entrada de log quando a conexão for estabelecida.

    
por phenom135 22.08.2013 / 09:22

2 respostas

5

A linha que você precisaria registrar o tráfego pode parecer possível como:

iptables -I OUTPUT -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j LOG --log-prefix "Outgoing SSH connection"

Em outro terminal, visualize os registros

while :; do iptables -L OUTPUT -v -n --line-n; sleep 2; done

Estou usando o estado -m - state. No entanto, eu recomendaria usar --ctstate

man iptables para mais.

Se achar que está sendo sobrecarregado pelos registros, considere a possibilidade de alterar o --log-level . O link pode lhe dizer mais.

    
por 22.08.2013 / 09:32
3

sugestão de val0x00ff de usar --state , também por Petter H em um comentário , deve funcionar bem.

No entanto, você não precisa introduzir o acompanhamento do estado da sessão apenas para isso. Você pode adicionar o sinalizador --syn para fazer a regra corresponder apenas aos pacotes com o conjunto de sinalizadores SYN, que é definido apenas em novas tentativas de conexão.

    
por 22.08.2013 / 09:40