모든 iptables 규칙 보기

모든 iptables 규칙 보기

iptables규정을 좀 더 자세히 볼 수 있는 방법이 있나요 ?

최근에 다양한 IP에 가장을 추가했습니다.

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
service iptables save
service iptables restart

이것은 이미 내가 원하는 것을 수행하지만 다음을 사용할 때:

iptables -L

내가 얻는 결과는 내가 일반적으로 얻는 것과 동일합니다.

Chain INPUT (policy ACCEPT)
target    prot opt source        destination

Chain FORWARD (policy ACCEPT)
target    prot opt source        destination

Chain OUTPUT (policy ACCEPT)
target    prot opt source        destination

규칙(내가 추가한 규칙 포함)을 보려면 어떻게 해야 합니까? (시스템은 CentOS 6입니다)

답변1

-L, 옵션을 사용하여 현재 방화벽 규칙을 나열하는 경우 --list해당 Netfilter 테이블( filter, nat또는 중 하나 mangle) 도 지정해야 합니다 . 따라서 테이블에 대한 규칙을 추가하는 경우 옵션 을 사용하여 명시적으로 지정 해야 합니다 .rawsecuritynat-t--table

iptables --table nat --list

또는 옵션 약어를 사용하십시오.

iptables -t nat -L

특정 테이블을 지정하지 않으면 해당 filter테이블이 기본 테이블로 사용됩니다.


-n더 빠른 결과를 얻으려면 호스트 이름 대신 숫자 IP 주소를 인쇄하는 옵션 을 포함하여 --numeric역방향 DNS 조회를 기다릴 필요가 없습니다.

-v옵션을 포함하면 더 많은 정보를 얻을 수 있습니다 --verbose.

답변2

iptablesfilter, 및 5개의 서로 다른 테이블을 제어 nat합니다 . 주어진 호출에서 옵션 인수에 의해 지정된 테이블 중 하나만 표시되거나 수정됩니다 (기본값은 ). 방화벽의 전체 상태를 보려면 각 테이블을 차례로 호출해야 합니다.manglerawsecurityiptables-tfilteriptables

또한 규칙을 정확하게 표현하려면 options 를 전달해야 합니다 -v. 그렇지 않으면 필터링 규칙의 인터페이스와 같은 일부 중요한 기준이 출력에서 ​​생략됩니다(예: "모든 항목 허용" 규칙과 "루프백 인터페이스의 모든 항목 허용" 규칙은 구별하는 데에만 사용할 수 있음 -v).

따라서 필요한 netfilter 규칙의 완전한 데모를 얻으려면

iptables -vL -t filter
iptables -vL -t nat
iptables -vL -t mangle
iptables -vL -t raw
iptables -vL -t security

또는 iptables-save모든 테이블의 모든 규칙을 구문 분석 가능한 형식으로 표시하는 프로그램을 호출할 수 있습니다 iptables-restore. 이 형식은 사람이 읽을 수도 있습니다( iptables테이블을 작성하는 명령에 대한 일련의 호출 과 매우 유사함 ).

답변3

iptables -S나를 위해 작동합니다. 서비스가 다운된 경우에도 모든 활성 규칙을 나열하는 것 같습니다.

매뉴얼 페이지에서:

-S, --list-rules [chain] 선택한 체인의 모든 규칙을 인쇄합니다. 체인을 선택하지 않으면 모든 체인이 iptables-save처럼 인쇄됩니다. 다른 모든 iptables 명령과 마찬가지로 지정된 테이블에 적용됩니다(기본값은 필터입니다).

답변4

당신은 그것을 사용할 수 있습니다 :

# lsmod | grep ip_tables
ip_tables              13193  4 iptable_raw,iptable_mangle,iptable_nat,iptable_filter

모든 테이블을 찾고 테이블 내의 특정 규칙을 표시합니다.

관련 정보