질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

제 iptables좀 함 봐주세요.

작성자 정보

  • 조준성 작성
  • 작성일

컨텐츠 정보

본문

우선 문제는 이렇습니다.

CentOS 5.0깔고 원격에서 웹서버가 안되더라고요.

그래서 iptables를 stop시키고 해보니 되더군요 --> iptables 문제라는 걸 파악했슴다.

이제 iptables에 80포트를 허용하느라  다음과 같이했습니다. (요건 매뉴얼에 써진대로 그대로 친거랍니다.)

# iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# service iptables save
# service iptables restart

그리고 나서 iptables를 보니 잘 적용되어 있더라고요. 그런데 여전히 iptables를 가동시키면 접속이 안되고, stop시키면 접속이 잘됩니다. 도대체 뭘 잘못한 걸까요. 다음은 제 iptables입니다.  

[root@salimist sysconfig]# cat iptables
# Generated by iptables-save v1.3.5 on Fri Jul 27 19:09:15 2007
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [76:8104]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p esp -j ACCEPT
-A RH-Firewall-1-INPUT -p ah -j ACCEPT
-A RH-Firewall-1-INPUT -d 224.0.0.251 -p udp -m udp --dport 5353 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Fri Jul 27 19:09:15 2007
[root@salimist sysconfig]#


 

관련자료

댓글 2

lino님의 댓글

  • lino
  • 작성일
안되는게 당연합니다. iptables는 룰순서대로 적용되는 것은 아시겠죠.
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 위에
-A INPUT -j RH-Firewall-1-INPUT이 먼저 적용이 됩니다.
RH-Firewall-1-INPUT 체인 정책을 죽 따라가다 보면 마지막에 -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 정책에서 일치하지 않는 모든 패킷을 거부하게 됩니다.

정리하면 -A INPUT -j RH-Firewall-1-INPUT이 님이 명령으로  설정한 정책보다 먼저 앞에 나오기 때문에 그렇습니다.

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 를 -A INPUT -j RH-Firewall-1-INPUT 앞에 두거나 -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 위에 정의하시면 됩니다.

iptables 정의할 때 룰 순서에 의해 적용된다는 걸 잊지 마세요.

조준성님의 댓글

  • 조준성
  • 작성일
아 그런거였군요.
전 그것도 모르고, 사실 어제 한줄한줄 지워보면서 결국 해결은 했답니다.
하지만 이렇게 설명을 듣고 나니 한결 더 좋네요.
감사드립니다.
iptables 정의할 때 룰 순서 중요하다는 것 앞으로 명심하겠습니다.
좋은 한주 시작하세요

공지사항


뉴스광장


  • 현재 회원수 :  60,076 명
  • 현재 강좌수 :  36,001 개
  • 현재 접속자 :  490 명