![iptables -F를 제공한 후 호스트에 연결할 수 없습니다.](https://rvso.com/image/768905/iptables%20-F%EB%A5%BC%20%EC%A0%9C%EA%B3%B5%ED%95%9C%20%ED%9B%84%20%ED%98%B8%EC%8A%A4%ED%8A%B8%EC%97%90%20%EC%97%B0%EA%B2%B0%ED%95%A0%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
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
콘솔 재부팅 후 호스트 시스템에 액세스할 수 있습니다. 감사해요