新しいDebian 12(AWS EC2)にnftablesをインストールしました。ポート22/tcpを介してインスタンス(外部EC2 IP)に接続します。 EC2に言及した理由は、EC2が奇妙なトリックを実行する可能性があるためです。その後、nftableをインストールしました。
sudo apt install nftables
sudo systemctl enable nftables
sudo systemctl start nftables
現在の設定は空です。
flush ruleset
table inet filter {
chain input {
type filter hook input priority filter;
}
chain forward {
type filter hook forward priority filter;
}
chain output {
type filter hook output priority filter;
}
}
私の問題は簡単です。パケットを許可するルールがない場合は、セッションがブロックされ、再開できる必要があることを読んで予想しました。これが真実ではないのはなぜですか、私のセッションを許可するのはなぜですか?
実際にストリームがブロックされたのは、明示的にストリームをブロックしたときにのみ可能であることがわかりました。
ベストアンサー1
私のセッションはパッキングを許可するルールなしでブロックする必要があります。
デフォルトでは、ルールセットはすべてを許可します。
policy drop;
実際にすべての接続をブロックするには、各行の後に追加する必要がありますtype filter ...
。各ルールを1行に入力する場合、セミコロンはオプションです。
このような厳格なルールを持つことは本当に賢明ではありません。少なくともループバック接続を許可する必要があります。そうしないと、多くのプログラムが不明な方法で動作しません。
入力用、iif lo accept
出力用oif lo accept
。
そして、すべてのチェーンが接続を確立できるようにする必要があります。ct state established,related accept
- ルールはすべてのチェーンに対して同じです。