nftablesは特定のIPアドレスのRedisのみを受け入れます。

nftablesは特定のIPアドレスのRedisのみを受け入れます。

REDISサーバーを構成しており、特定のIPアドレスセットの接続のみを許可したいと思います。

これはDebian 10サーバーで、推奨フレームワークはnftですが、以前は使用していませんでした。

デフォルトのルールセットは次のとおりです。

#!/usr/sbin/nft -f

flush ruleset

table inet filter {
        chain input {
                type filter hook input priority 0;
        }
        chain forward {
                type filter hook forward priority 0;
        }
        chain output {
                type filter hook output priority 0;
        }
}

1.1.1.1IPからRedisへの着信接続を許可し、2.2.2.2他のすべての接続を削除するには、このファイルにどのルールを追加する必要がありますか?

ポートはREDISで使用されています6379

ベストアンサー1

他の人が同じ問題を偶然発見した場合に備えて、私が最大の問題は、ルールを誤った順序で使用したことです。

承認ルールの前に削除ルールを追加しましたが、その逆のようです。

以下は、2以外のすべてのIPアドレスを削除するためのルール例です。

ip saddr 1.1.1.1 tcp dport 6379 accept
ip saddr 2.2.2.2 tcp dport 6379 accept
tcp dport 6379 drop

フルルールファイル:

#!/usr/sbin/nft -f

flush ruleset

table inet filter {
        chain input {
                type filter hook input priority 0;
                # allow connection to redis from
                ip saddr 1.1.1.1 tcp dport 6379 accept
                ip saddr 2.2.2.2 tcp dport 6379 accept
                tcp dport 6379 drop
        }
        chain forward {
                type filter hook forward priority 0;
        }
        chain output {
                type filter hook output priority 0;
        }
}

おすすめ記事