Linux プラットフォームでのエージェントの適用
Linux プラットフォームでは、IPv4 ポリシーと IPv6 ポリシーの両方の適用がサポートされています。エージェントは、iptables または ip6tables、および ipset を使用してネットワークポリシーを適用します。ホストでエージェントを有効にすると、デフォルトで iptables を制御およびプログラムします。IPv6 ネットワークスタックが有効になっている場合、エージェントは、ip6tables を使用して IPv6 ファイアウォールを制御します。
Linux iptables または ip6tables
Linux カーネルには、IPv4 および IPv6 パケットフィルタルールのテーブルをセットアップ、維持、および検査するために使用される iptables および ip6tables があります。iptables および ip6tables は、多数の定義済みテーブルで構成されています。各テーブルには、事前定義されたチェーンが含まれており、ユーザー定義のチェーンを含めることもできます。これらのチェーンには一連のルールが含まれており、各ルールでパケットの一致基準を指定します。事前定義されたテーブルには、raw、mangle、filter、および NAT が含まれます。事前定義されたチェーンには、INPUT、OUTPUT、FORWARD、PREROUTING、および POSTROUTING が含まれます。
Secure Workload エージェントは、パケットを許可またはドロップするルールを含むフィルタテーブルをプログラムします。フィルタテーブルは、事前定義されたチェーンである INPUT、OUTPUT、および FORWARD で構成されます。これらに加えて、エージェントはカスタム TA チェーンを追加して、コントローラからポリシーを分類および管理します。これらの TA チェーンには、ポリシーから派生した Secure Workload ルールと、エージェントによって生成されたルールが含まれています。エージェントは、プラットフォームに依存しないルールを受信すると、それらのルールを解析して iptable、ip6table、または ipset ルールに変換し、フィルタテーブルの TA 定義チェーンに挿入します。ファイアウォールのプログラミング後、エージェントはルールやポリシーの逸脱がないかファイアウォールを監視し、逸脱がある場合は、ファイアウォールを再プログラミングします。また、ファイアウォールでプログラムされたポリシーを追跡し、ポリシーのステータスを定期的にコントローラに報告します。
この動作を表す例を次に示します。
プラットフォームに依存しないネットワーク ポリシー メッセージの一般的なポリシーの構成は次のとおりです。
source set id: “test-set-1”
destination set id: “test-set-2”
source ports: 20-30
destination ports: 40-50
ip protocol: TCP
action: ALLOW
. . .
set_id: “test-set-1”
ip_addr: 1.2.0.0
prefix_length: 16
address_family: IPv4
set_id: “test-set-2”
ip_addr: 3.4.0.0
prefix_length: 16
address_family: IPv4
エージェントは、他の情報とともに、このポリシーを処理し、プラットフォームに固有の ipset および iptabels ルールに変換します。
ipset rule:
Name: ta_f7b05c30ffa338fc063081060bf3
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 16784
References: 1
Members:
1.2.0.0/16
Name: ta_1b97bc50b3374829e11a3e020859
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 16784
References: 1
Members:
3.4.0.0/16
iptables rule:
TA_INPUT -p tcp -m set --match-set ta_f7b05c30ffa338fc063081060bf3 src -m set --match-
˓→set ta_1b97bc50b3374829e11a3e020859 dst -m multiport --sports 20:30 -m multiport --
˓→dports 40:50 -j ACCEPT
Cisco Secure Workload リリース 4.0 以降、nftables パッケージバージョン 1.0.0 以降がインストールされている Linux ワークロードでは、Cisco Secure Workload エージェントは、nftables を使用してポリシーをプログラムします。エージェントは、iptables または ip6tables ではなく nftables を使用して、サポートされているシステムにセキュリティポリシーを実装および適用します。
警告
ipset カーネルモジュール
エージェント設定プロファイルで、適用が有効になっており、ルールの維持が無効になっている場合、Linux ホストで実行されているエージェントにより、ipset カーネルモジュールの max_sets 設定が十分大きいことが確認されます。変更が必要な場合、エージェントは ipset カーネルモジュールを新しい max_sets 値でリロードします。[ルールの維持(Preserve Rules)] が有効になっている場合、エージェントにより現在の ipset モジュールの max_sets 値がチェックされますが、変更はされません。現在設定されている max_sets 値は、cat /sys/module/ip_set/parameters/max_sets で確認できます。
ホストファイアウォールのバックアップ
エージェント設定プロファイルで初めて適用が有効になると、Linux ホストで実行されているエージェントは、ホストのファイアウォールを制御する前に、ipset および ip[6] テーブルの現在のコンテンツを /opt/cisco/tetration/backup に保存します。
適用の設定を連続して無効化または有効化しても、バックアップは生成されません。このディレクトリは、エージェントのアンインストール後に削除されません。

フィードバック