iptable 규칙은 때때로 작동합니다

iptable 규칙은 때때로 작동합니다

나에게 많은 UDP 패킷을 보내는 공격자 IP를 차단했습니다.

iptables -I 입력 1 -s IP_OF_ATTACKER -j DROP

이 규칙은 모두 잘 작동했습니다.

iptables -nvL --line-numbers

22G 트래픽이 2~3일 동안 차단되었습니다.

num   pkts bytes target     prot opt in     out     source               destination
1    3203K   22G DROP       all  --  *      *       ATTACKER_IP          0.0.0.0/0

그러나 지난 2~3일부터 이 규칙은 더 이상 작동하지 않습니다. 공격자는 UDP 패킷을 보내고 있으며 iptables는 이를 차단하지 않습니다.

num   pkts bytes target     prot opt in     out     source               destination
1     707K 3553M DROP       all  --  *      *       ATTACKER_IP         0.0.0.0/0

이유가 무엇일까요?

추신: 호스팅 제공업체가 도움이 된다면 연락하지 말라고 제안하지 마세요. 제가 여기에 있지는 않을 것입니다. :)

편집하다

패킷을 분석/캡처하기 위해 Wireshark/tcpdump를 사용했습니다. 모든 패킷이 UDP임을 보여줍니다. 위에서 언급한 대로 iptables 명령을 사용하여 iptables 규칙이 얼마나 많은 데이터를 차단했는지 확인합니다. 위는 iptables 차단 데이터의 출력입니다. iptable이 모든 데이터를 차단했을 때 우리 서버는 모두 잘 작동했습니다.

**IP Table rules**
# Generated by iptables-save v1.4.21 on Mon Jun 15 23:26:40 2015
*raw
:PREROUTING ACCEPT [8393:667810]
:OUTPUT ACCEPT [7043:795032]
COMMIT
# Completed on Mon Jun 15 23:26:40 2015
# Generated by iptables-save v1.4.21 on Mon Jun 15 23:26:40 2015
*nat
:PREROUTING ACCEPT [2517:112725]
:INPUT ACCEPT [2517:112725]
:OUTPUT ACCEPT [1018:179752]
:POSTROUTING ACCEPT [1018:179752]
COMMIT
# Completed on Mon Jun 15 23:26:40 2015
# Generated by iptables-save v1.4.21 on Mon Jun 15 23:26:40 2015
*mangle
:PREROUTING ACCEPT [8393:667810]
:INPUT ACCEPT [8393:667810]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [7043:795032]
:POSTROUTING ACCEPT [7043:795032]
COMMIT
# Completed on Mon Jun 15 23:26:40 2015
# Generated by iptables-save v1.4.21 on Mon Jun 15 23:26:40 2015
*filter
:INPUT ACCEPT [23:1500]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [18:2068]
:fail2ban-ssh - [0:0]
-A INPUT -s xx.xxx.xx.xx/32 -j DROP
COMMIT
# Completed on Mon Jun 15 23:26:40 2015

답변1

나는 귀하의 iptables 목록이나 그것이 어떻게 그렇게 되었는지 완전히 이해하지 못합니다. 그러나 nat 및 mangle 테이블이 있는 것으로 보이므로 문제 패킷이 일반 INPUT 체인을 통과하지 않고 사전 라우팅 단계에서 다른 경로를 통해 iptables를 통해 전달되는 것이 전적으로 가능합니다. 그런데 연결당 한 번씩). 다음을 추가해 볼 수 있습니다.

sudo iptables -t raw -A PREROUTING -s IP_OF_ATTACKER -j DROP

테스트 컴퓨터에서 그렇게 했는데 정상적으로 작동하는 것 같습니다.

$ sudo iptables-save -c
# Generated by iptables-save v1.4.21 on Tue Jun 16 11:12:51 2015
*raw
:PREROUTING ACCEPT [40:2664]
:OUTPUT ACCEPT [33:4520]
[31:2696] -A PREROUTING -s 192.168.111.103/32 -j DROP
COMMIT
# Completed on Tue Jun 16 11:12:51 2015
# Generated by iptables-save v1.4.21 on Tue Jun 16 11:12:51 2015
*nat
:PREROUTING ACCEPT [15:1344]
...

참고: 나는 동일한 답변을 귀하의 페이지에 게시했습니다.우분투 포럼 게시.

관련 정보