回答:
iptablesを使用すると、各ルールがトリガーされた回数に関する統計情報を取得できるため、対象のポート(ポート20とポート80など)にLOGルールを追加できます。
iptables -A INPUT -p tcp --dport 22
iptables -A INPUT -p tcp --dport 80
その後
iptables -n -L -v
このポートを介して送信されたパケット数とバイト数が表示されます。もちろん、興味のあるポートを出力から解析する必要があります。
正確な値が必要な場合は、-xを追加します。
iptables -n -L -v -x
-J
は会計に適しています。
iptables構成にアカウンティングルールを追加できます。これらはESTABLISHEDおよびRELATEDトラフィックを受け入れる前に発生する必要があります。そうしないと、通過するトラフィックをカウントできなくなります。Webトラフィックをカウントするには、次のようなルールを試してください。
iptables -A INPUT -p tcp --dport 80
たくさんある場合は、会計チェーンを作成して、他のチェーンから隔離してカウンターを報告し、ゼロにすることができます。
Shorewallのは、ファイアウォール、あなたが簡単にあなたのルール・セットに会計ルールを追加することができます。
出力トラフィック統計を含めることを忘れないでください。
# Port 80 (HTTP).
iptables -A INPUT -p tcp --dport 80
iptables -A OUTPUT -p tcp --sport 80
# Port 443 (HTTPS).
iptables -A INPUT -p tcp --dport 443
iptables -A OUTPUT -p tcp --sport 443
iptables -n -L -v
iptables -n -L -v -x
iptables -n -L -v -x | grep -i "Chain\|:443\|:80"
Chain INPUT (policy DROP 357 packets, 22828 bytes)
1286265 75076978 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
1305378 75018232 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
Chain OUTPUT (policy ACCEPT 303516 packets, 94716311 bytes)
442 255112 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:80
46 10515 tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:443
LOG
ルールを設定する必要はありません(ログファイルがあふれます)。ルールがトリガーされる回数をカウントするだけです。