현재이 스 니펫이 있습니다.
# flush all chains
iptables -F
iptables -t nat -F
iptables -t mangle -F
# delete all chains
iptables -X
이것을 실행 한 후에도 불 침투성 규칙이 계속 유지 될 가능성이 있습니까?
아이디어는 완전히 깨끗한 iptables 구성을 갖는 것입니다.이 구성은 새로운 규칙 세트로 쉽게 대체 할 수 있습니다 (라우트 / ifconfig의 매개 변수는 신경 쓰지 마십시오).
답변
간결하게 귀하의 질문에 대답하기 위해, 아니오 : 모든 테이블을 플러시 한 후 “남은”규칙이 없습니다. 그러나 철저하게하기 위해 내장 INPUT
및 FORWARD
체인 에 대한 정책을 다음 과 같이 설정할 수도 ACCEPT
있습니다.
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t nat -F
iptables -t mangle -F
iptables -F
iptables -X
ip6tables 규칙 지우기 :
ip6tables -P INPUT ACCEPT
ip6tables -P FORWARD ACCEPT
ip6tables -P OUTPUT ACCEPT
ip6tables -t nat -F
ip6tables -t mangle -F
ip6tables -F
ip6tables -X
… 그리고 그렇게해야합니다. iptables -nvL
이 (또는 매우 유사한) 출력을 생성해야 합니다.
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
답변
이것은 iptables 시스템을 매우 기본 상태로 완전히 재설정합니다 :
iptables-save | awk '/^[*]/ { print $1 }
/^:[A-Z]+ [^-]/ { print $1 " ACCEPT" ; }
/COMMIT/ { print $0; }' | iptables-restore
모든 정책은 현재 사용중인 모든 테이블을 비울뿐만 아니라 ACCEPT로 재설정됩니다. 내장 체인 이외의 모든 체인은 더 이상 존재하지 않습니다.
답변
방화벽을 비활성화해야 할 때마다 다음과 같습니다.
iptables-save > iptables.bak
service iptables stop
(페도라에 있습니다)
답변
iptables
커널에서 모듈을 언로드 할 수 있습니다 :
modprobe -r iptable_raw iptable_mangle iptable_security iptable_nat iptable_filter
UPD 불행하게도, 사실 너무 좋아. 테이블에 규칙 또는 사용자 정의 체인이있는 한 해당 모듈의 참조 카운트는 1이며 modprobe -r
실패합니다. 다음과 같이 규칙 및 사용자 정의 체인을 삭제할 수 있습니다.
echo $'*raw\nCOMMIT\n*mangle\nCOMMIT\n*security\nCOMMIT\n*nat\nCOMMIT\n*filter\nCOMMIT' | iptables-restore
또는:
iptables-save | awk '/^[*]/ { print $1 "\nCOMMIT" }' | iptables-restore
또한 이런 식으로 모듈을 언로드 할 수 있습니다 (하드 코딩 모듈 이름 없음).
lsmod | egrep ^iptable_ | awk '{print $1}' | xargs -rd\\n modprobe -r
밝은면에서 이것은 iptables-save
좋은 빈 출력을 생성합니다 🙂
답변
하나 또는 두 개의 명령으로이를 수행 할 수 있습니다.
$ sudo iptables-save > iptables.bak
$ sudo iptables -F
결과:
$ sudo iptables -nvL
Chain INPUT (policy ACCEPT 3138 packets, 5567K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 3602 packets, 6547K bytes)
pkts bytes target prot opt in out source destination
답변
최근에 내가 한 일이 모든 연결을 차단해야했습니다.
iptables-policy INPUT DROP
iptables-policy OUTPUT DROP
iptables-policy FORWARD DROP
저장에 관해서는 다음을 권장합니다
우분투 :
/etc/init.d/iptables save
/sbin/service iptables save
RedHat / CentOS :
/etc/init.d/iptables save
/sbin/iptables-save
과거에 이것을 사용했던 모든 현재 ufw 규칙을 백업하는 것 외에도
cp /lib/ufw/{user.rules,user6.rules} /<BACKUP LOCATION>
cp /lib/ufw/{user.rules,user6.rules} ./
나는 이것이 나중에 참조 할 때 유용 할 것이라고 생각합니다. 내가 나누겠다고 생각했다.
답변
구성을 iptables_backup.conf로 백업하고 모든 규칙을 정리하십시오.
iptables-save | tee iptables_backup.conf | grep -v '\-A' | iptables-restore
이전 구성을 복원하려면
iptables-restore < iptables_backup.conf