iptables -F를 제공한 후 호스트에 연결할 수 없습니다.

iptables -F를 제공한 후 호스트에 연결할 수 없습니다.

RedHat Linux 서버에서 방화벽 설정을 지우려고 했습니다.

을 드린 후 iptables -F서버에 접속할 수 없습니다.

# iptables -L
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:diamondport
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:33336
ACCEPT     sctp --  anywhere             anywhere             sctp dpts:1024:65535
ACCEPT     udp  --  anywhere             anywhere             udp dpt:gtp-user
ACCEPT     udp  --  anywhere             anywhere             udp dpts:6000:lm-x

 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
# iptables -F

이 문제를 해결하도록 도와주세요.

답변1

iptables -F를 실행하면 모든 체인의 모든 규칙이 삭제됩니다. 그러나 각 체인에는정책귀하는 삭제하지 않습니다. 귀하의 경우 INPUT 체인에 대한 DROP입니다. 따라서 모든 규칙을 삭제하고 규칙과 일치하지 않는 트래픽에 대해 DROP 정책을 적용합니다. 즉, 모든 것이 삭제됩니다.

iptables -L -n을 실행하여 이를 확인할 수 있습니다. 다음과 같은 내용이 표시됩니다.

Chain INPUT (policy DROP)
target     prot opt source               destination
[it's empty]

이는 정상적인 동작입니다. 기본 정책을 변경할 수 있지만 보안 측면에서 완전히 다른 동작으로 이어질 수 있습니다. 일치하는 규칙이 없으면 트래픽이 항상 허용되며 이는 아마도 원하는 것이 아닐 수 있습니다.

가장 좋은 방법은 iptables 정책을 수정하여 영구화하기 위해 iptables 정책을 플러시하거나 저장하지 않는 것입니다 iptables-save. 이렇게 하면 이전 구성을 저장하고 복원( iptables-restore < rules.bak)하거나 필요에 따라 수정할 수 있습니다.

답변2

콘솔 재부팅 후 호스트 시스템에 액세스할 수 있습니다. 감사해요

관련 정보