Ubuntuサーバーでのネットワーク活動の記録

Ubuntuサーバーでのネットワーク活動の記録

私はインターネットにさらされたUbunuサーバーを管理しており、事後分析が可能な方法ですべてのネットワーク活動を監視および追跡する必要があります。

私は私にあまりにも多くの詳細を提供するtsharkまたはtcpdump、私が望む詳細を提供しないvnstat(帯域幅のみを表示します)、リアルタイムモニタリングツールとしてはまともなtcptrackなどのいくつかのツールを試しましたが、さらなる分析のためのロギングオプションは提供されません。

私が考えているのはtcptrackとvnstatの間です。

すべての接続を記録し、必要に応じてすべての接続とすべての接続試行のIP、ポート、およびタイムスタンプを示す包括的なレポートを提供するデーモンです。理想的には(そしてこれはただのボーナスポイントです)、情報をmysqlやpostgresqlなどの一部のSQLデータベースに保存して、任意の選択ステートメントを実行してカスタムレポートを取得できます(たとえば、すべてのアクティビティの監視)。単一のIP、または特定のサービスを使用するすべてのIPのリストを抽出します。

ログにはtcpdumpを使用し、結果を表示するためにtcptrackを使用するなど、いくつかのツールを組み合わせてみましたが、期待どおりに動作しません。

それでは、この「アイデア」に近いツールはありますか?

答え1

目的を達成する最も簡単な方法は、iptablesLOGまたはULOGターゲットのロギングを使用することです。

これにより、次の種類のログ情報が残ります。

8月13日 14:42:07 srv1 IN=eth0 OUT= MAC=00:0c:29:8c:2b:6c:00:d0:02:eb:e8:0a:08:00 SRC=75.125.70.194 DST =XXX .XXX.XXX.XXX LEN=40 TOS=00 PREC=0×00 TTL=54 ID=9566 PROTO=TCP SPT=57144 DPT=445 SEQ=2770468863 ACK=0 WINDOW=512 SYN URGP=0

8月13日 14:45:29 srv1 IN=eth0 OUT= MAC=00:0c:29:8c:2b:6c:00:d0:02:eb:e8:0a:08:00 SRC=75.125.70.194 DST =XXX .XXX.XXX.XXX LEN=40 TOS=00 PREC=0×00 TTL=55 ID=13702 PROTO=TCP SPT=58528 DPT=445 SEQ=1217789951 ACK=0 Window=512 SYN URGP=0

次に、そのシステムで何が起こっているのかを確認したいときawkgrep

2これらのルールは、着信または発信する「新しい」接続をすべて記録する必要があります。ルールを見つけやすくするために、ルールの前に以下が追加されます。

iptables -I INPUT -m state --state NEW -j LOG --log-prefix "New Connection: "
iptables -I OUTPUT -m state --state NEW -j LOG --log-prefix "New Connection: "

その結果、次のログエントリが生成されます。

[2134.566659] 新しい接続: IN=OUT=wlan0 SRC=192.168.178.229 DST=192.168.178.21 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=65094 DF PROPT=UDP

引用する

関連情報