iptables -F 모든 iptables 규칙을 영구적으로 삭제합니까?

iptables -F 모든 iptables 규칙을 영구적으로 삭제합니까?

RHEL 교육 문서에서 저자는 다음과 같이 말합니다.

...현재 시스템에서 방화벽을 비활성화하려면 다음 명령을 실행하십시오.iptables-F

그는 "비활성화"라는 단어를 명시적으로 사용했는데, 이는 다시 활성화하는 것이 간단하다는 의미입니다. iptables 매뉴얼 페이지를 읽는 동안 다음을 보았습니다.

선택한 체인을 새로 고칩니다(제공하지 않으면 테이블의 모든 체인이 새로 고쳐집니다). 이는 다음과 같습니다.삭제모든 규칙은 하나씩 나열됩니다.

예상되는 동작을 명확히 할 수 있나요?

답변1

이러한 iptables규칙은 Red Hat 시스템의 두 위치에 저장됩니다:

  • 방화벽 코드는 실행 중인 커널 메모리의 네트워크 I/O에서 이를 확인합니다. 규칙을 새로 고치면 iptables -F이 규칙 세트만 삭제됩니다.

  • 시작 시 로드됩니다 /etc/sysconfig/iptables. service iptables reload재부팅하지 않고도 다시 로드를 사용하거나 강제로 로드할 수 있습니다 ...restart.

따라서 대답은 '아니오'입니다. 새로 고침 규칙 iptables -F은 영구적이지 않습니다.

setup방화벽 규칙에 들어가서 수정하면 /etc/sysconfig/iptables.iptables

답변2

또한 참고로 현재 iptables 규칙을 모두 새로 고치는 방법은 다음과 같습니다.

#!/bin/sh
echo "Stopping firewall and allowing everyone..."
iptables=/sbin/iptables
$iptables -F
$iptables -X
$iptables -t nat -F
$iptables -t nat -X
$iptables -t mangle -F
$iptables -t mangle -X
$iptables -P INPUT ACCEPT
$iptables -P FORWARD ACCEPT
$iptables -P OUTPUT ACCEPT

관련 정보