web-dev-qa-db-ja.com

カーネルを再コンパイルせずにCentOS 5.3のnf_conntrackカーネルモジュールを無効にする方法

CentOS 5.3を実行していて、nf_conntrackモジュールを無効にしてhaproxyのネットワークパフォーマンスを向上させたいと考えています。私はいくつかの単純なルールでiptablesを実行しています。接続追跡は本当に必要ありません。

Rackspaceクラウドサーバーで実行しているため、カスタムカーネルを実行できません。 modprobeを実行してみましたが、うまくいきません。

[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)

これを取り除いた後も引き続きiptablesを実行したいので、すべてのネットフィルターを破棄することはできません。誰もが何か考えを持っていますか?

10
user22277
  1. iptablesの状態モジュールへの参照をすべて削除します。したがって、次のようなルールはありません

    -A INPUT -m state --state RELATED、ESTABLISHED -j ACCEPT

    状態モジュールにはnf_conntrack(ip_conntrack)モジュールが必要です

  2. / etc/sysconfig/iptables-configの次の行(存在する場合)を削除します

    IPTABLES_MODULES = "ip_conntrack_netbios_ns"

    そのモジュールには、破棄しようとしているip_conntrackが必要です。

  3. 状態ルールなしでiptablesをリロードします。

    Sudo iptables -F

    #実際のルールを追加

  4. モジュールをドロップします。私は使用しなければなりませんでした:

    Sudo modprobe -r xt_NOTRACK nf_conntrack_netbios_ns nf_conntrack_ipv4 xt_state

    Sudo modprobe -r nf_conntrack

  5. / proc/net/nf_conntrackへの参照がないことを確認してください

16
user22277
  • モジュールを/etc/modprobe.d/blacklist.confに追加するのはどうですか?

  • やってみました:

    rmmod -f modulename
    

    ただし:

           -f --force 
    このオプションは非常に危険な場合があります。カーネルのコンパイル時にCONFIG_MODULE_FORCE_UNLOADが設定されていない限り、効果がありません。
    このオプションを使用すると、使用されている、
    、または削除するように設計されていない、または
    が安全でないとマークされている(lsmod(8)を参照)。
    

Haproxyを実行している場合、ポート80でconntrackを無効にするには、iptablesで2種類のルールが必要です。1つはクライアントからバランサーへの接続用、もう1つはバランサーからバックエンドへの接続用です。

以下は有効な例です。

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
4
Ricardo Fraile

「modprobe -rf xt_state」および「modprobe -rf nf_conntrack_ipv6」を実行すると、「FATAL:Module xt_state is in use。」(centos)と表示されます。

「modused」は便利かもしれません、それはどんなモジュールの使用カウントも減らすことができます: http://www2.informatik.uni-freiburg.de/~danlee/fun/modused/

キーは次のとおりです。serviceip6tables stop

nf_conntrack、xt_state、iptable_nat、nf_nat、nf_conntrack_ipv4、nf_conntrack_ipv6を/etc/modprobe.d/blacklist.confに追加します

0
diyism