como faço para desabilitar o módulo do kernel nf_conntrack no CentOS 5.3 sem recompilar o kernel

10

Estou executando o CentOS 5.3 e quero desativar o módulo nf_conntrack para melhorar o desempenho da rede para o haproxy. Estou executando o iptables com algumas regras simples. Eu realmente não preciso do rastreamento de conexão.

Estou executando em servidores em nuvem da Rackspace, por isso não posso executar um kernel personalizado. Eu tentei executar o modprobe, mas isso não funciona.

[mmarano@w1 w1]$ sudo modprobe -n -r nf_conntrack
FATAL: Module nf_conntrack is in use.

[mmarano@w1 w1]$ uname -a
Linux w1.somewhere.com 2.6.24-23-xen #1 SMP Mon Jan 26 03:09:12 UTC 2009 x86_64 x86_64 x86_64 GNU/Linux
[mmarano@w1 w1]$ cat /etc/redhat-release 
CentOS release 5.3 (Final)

Eu quero continuar a rodar o iptables depois de extraí-lo, então não consigo abandonar todos os netfilters. Alguém tem algum pensamento?

    
por user22277 08.10.2009 / 02:24

4 respostas

16

  1. remova qualquer referência ao módulo de estado no iptables. Então, não há regras como

    -A INPUT -m state - estado RELACIONADO, ESTABELECIDO -j ACCEPT

    o módulo state requer o módulo nf_conntrack (ip_conntrack)

  2. remova a seguinte linha (se existir) em / etc / sysconfig / iptables-config

    IPTABLES_MODULES="ip_conntrack_netbios_ns"

    Esse módulo requer o ip_conntrack que estamos tentando eliminar.

  3. recarrega iptables sem suas regras de estado.

    sudo iptables -F

    # adicione suas regras reais

  4. elimine os módulos. Eu tive que usar:

    sudo modprobe -r xt_NOTRACK nf_conntrack_netbios_ns nf_conntrack_ipv4 xt_state

    sudo modprobe -r nf_conntrack

  5. confirme que você não tem uma referência a / proc / net / nf_conntrack

por 09.10.2009 / 22:17
5
  • Que tal adicionar o módulo a /etc/modprobe.d/blacklist.conf ?

  • Você já tentou:

    rmmod -f modulename
    

    Embora:

           -f --force
              This  option can be extremely dangerous: it has no effect unless
              CONFIG_MODULE_FORCE_UNLOAD was set when the kernel was compiled.
              With  this  option, you can remove modules which are being used,
              or which are not designed to be removed, or have been marked  as
              unsafe (see lsmod(8)).
    
por 08.10.2009 / 05:31
4

Se você estiver executando o Haproxy, precisará de dois tipos de regras no iptables para desativar o conntrack na porta 80: para as conexões dos clientes para o seu balanceador e outras do seu balanceador para os back-ends.

Aqui está um exemplo válido:

iptables -t raw -I PREROUTING -p tcp --dport 80 -j NOTRACK
iptables -t raw -I PREROUTING -p tcp  --sport 80 -j NOTRACK
iptables -t raw -I OUTPUT -p tcp --dport 80 -j NOTRACK
iptables -t raw -I OUTPUT -p tcp --sport 80 -j NOTRACK
    
por 04.09.2013 / 17:02
0

Quando eu faço "modprobe-rf xt_state" e "modprobe -rf nf_conntrack_ipv6" ele diz "FATAL: O módulo xt_state está em uso." (em centos).

"modused" pode ser útil, pode diminuir a contagem de uso de qualquer módulo: link

A chave é: service ip6tables stop

e adicione nf_conntrack, xt_state, iptable_nat, nf_nat, nf_conntrack_ipv4, nf_conntrack_ipv6 em /etc/modprobe.d/blacklist.conf

    
por 28.10.2014 / 07:28