iptables로 차단하는 속도가 느립니까?


1

다음 명령으로 모든 Tor 노드를 차단했습니다.

sudo iptables -A INPUT -s $ip -j DROP

나는 이와 같은 약 1,700 개의 IP 블록이 있다고 생각합니다.

이 명령을 사용하여 차단하는 것이 느릴 수 있다는 것을 읽었습니다. 이것이 사실입니까? 그렇다면 더 좋은 대안은 무엇입니까?

답변:


3

Jan Engelhardt (OpenSUSE 커뮤니티에서 커널 패키징에 참여한 사람)에 따르면 :

32 비트 환경에 대한 최대 규칙 수의 이론상 한은 약 3 천 8 백만

그러나 거대한 규칙을 가진 실제 병목 현상은 메모리입니다. /proc/vmalloc이러한 규칙을 적용 할 때 컴퓨터 속도를 크게 저하시키는 스와핑을 피하기 위해 메모리를 모니터링해야합니다 .

이미 언급했듯이 IPSet 은 이러한 과도한 차단 규칙을 관리하는 것이 좋습니다. 새 규칙을 할당하고 다음과 같은 효과적인 방식으로 이전에 할당 된 규칙을 삭제할 수 있습니다.

# Create the new set and add the entries to it
ipset -N new-set ....
ipset -A new-set ....
...
# Swap the old and new sets
ipset -W old-set new-set
# Get rid of the old set, which is now under new-set
ipset -X new-set

2

속도가 느리고 규칙에 따라 하드웨어에 문제가 없을 수 있습니다. 더 좋은 대안은 세트를 참조하는 ipsets 및 iptables 규칙을 사용하는 것입니다. Ipsets 는 주소와 네트워크를 효율적인 데이터 구조로 저장하여 기본 넷 필터 처리와 비교할 때 훨씬 더 빨리 검색 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.