tcpdumpがiptablesが傍受するパケットをキャプチャするのはなぜですか?これらのパケットをフィルタリングする方法は?

tcpdumpがiptablesが傍受するパケットをキャプチャするのはなぜですか?これらのパケットをフィルタリングする方法は?

このコマンドを使用してSIPトラフィックをデバッグしています。tcpdump -i eth0 -nt port 5060 -v

出力は次のとおりです。

IP (tos 0x0, ttl 113, id 6082, offset 0, flags [none], proto UDP (17), length 504)
    128.90.192.88.56177 > 172.31.78.225.5060: SIP, length: 476
        REGISTER sip:54.84.215.2:5060 SIP/2.0
        To: <sip:[email protected]>
        From: <sip:[email protected]>;tag=e5f4a9461830e4f7a15059
        Via: SIP/2.0/UDP 10.2.38.49:56177;branch=A3DG5FK-d91443-95107561815059-1--d91443-;rport
        Call-ID: e5f4a946183180e4f7a15059
        CSeq: 1 REGISTER
        Contact: <sip:[email protected]:56177>
        Expires: 3600
        Max-Forwards: 70
        Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
        User-Agent: Samsung OfficeServ
        Content-Length: 0

IP (tos 0x0, ttl 105, id 28245, offset 0, flags [none], proto UDP (17), length 500)
    128.90.59.90.49529 > 172.31.78.225.5060: SIP, length: 472
        REGISTER sip:54.84.215.2:5060 SIP/2.0
        To: <sip:[email protected]>
        From: <sip:[email protected]>;tag=e5f4a933383e4f7a13062
        Via: SIP/2.0/UDP 10.4.0.14:49529;branch=A3DG5FK-d91443-17576214913062-1--d91443-;rport
        Call-ID: e5f4a93338364e4f7a13062
        CSeq: 1 REGISTER
        Contact: <sip:[email protected]:49529>
        Expires: 3600
        Max-Forwards: 70
        Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
        User-Agent: Samsung OfficeServ
        Content-Length: 0

... etc...

私のサーバーが長すぎるため、多くのボットがこれを発見し、上記のように迷惑な間違った要求を送信しています。

IPをブロックしましたが、tcpdump128.90.192.88128.90.59.90まだトラフィックをキャプチャしています。

root@ip-172-31-78-225:~# iptables -nL | grep 128.90.192.88
DROP       all  --  128.90.192.88        0.0.0.0/0

これらのパケットをどのようにフィルタリングできますか?私のファイアウォールは1000以上のIPをブロックし、多くのIPを使用してフィルタを構築したくありません。ホワイトリストを作成できることを知っていますが、これらのパケットをフィルタリングしてキャプチャされる理由を理解する方法があるかどうか疑問に思います。また、間違った要求を送信するボットをブロックするためにこのアプローチを使い続けたいと思います。ブロックされていないパケットのみを分析して、そのIPをブロックするかどうかを判断できればよいでしょう。

答え1

申し訳ありません。この質問は他の質問と重複する可能性があります。https://stackoverflow.com/a/57073203/637142

とにかく解決策は次のとおりです。


#NFLOG traffic going to port 5060 (both tcp and udp)
iptables -A INPUT -p udp --dport 5060 -j NFLOG
iptables -A INPUT -p tcp --dport 5060 -j NFLOG

# now capure any trific from NFLOG
tcpdump -i nflog -nUlNt -v

関連情報