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

iptables rule적용 문제..(내용이 좀 길어요 ^^)

작성자 정보

  • 짜증지대로 작성
  • 작성일

컨텐츠 정보

본문

우선
iptables 의 내용이 리붓 되거나 리스타트 되어도 쭉 적용되게 하기위해

iptables-config 에서 IPTABLES_SAVE_ON_STOP="yes"
IPTABLES_SAVE_ON_RESTART="yes"
이렇게 이부분 yes로 바꾸어 주었습니다..

그리고는 /etc/sysconfig/iptables 로 이동해서

작업을 했습니다 작업 내용은
# Generated by iptables-save v1.3.5 on Wed Jul 28 10:59:19 2010
*filter
:INPUT ACCEPT [1381:721576]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1205:195723]
:RH-Firewall-1-INPUT - [0:0]
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -i eth0 -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 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
-A RH-Firewall-1-INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j REJECT --reject-with icmp-port-unreachable
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type 8 -j REJECT --reject-with icmp-port-unreachable
-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type 11 -j REJECT --reject-with icmp-port-unreachable
-A RH-Firewall-1-INPUT -p udp -m udp --dport 1:65535 -j DROP
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 1:65535 -j DROP
COMMIT
# Completed on Wed Jul 28 10:59:19 2010

이렇게 한다음 service iptables save하고 /etc/init.d/iptables restart 했습니다.

그리고 netstat -anl 하니깐
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 :::22 :::* LISTEN
tcp 0 528 ::ffff:59.231.121.XX:22 ::ffff:123.215.95.197:51310 ESTABLISHED
raw 3852 0 0.0.0.0:1 0.0.0.0:* 7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 5248 @/tmp/fam-root-
unix 2 [ ] DGRAM 1247 @/org/kernel/udev/udevd
unix 7 [ ] DGRAM 4848 /dev/log
unix 2 [ ] DGRAM 5358
unix 3 [ ] STREAM CONNECTED 5307
unix 3 [ ] STREAM CONNECTED 5306
unix 2 [ ] DGRAM 5302
unix 3 [ ] STREAM CONNECTED 5251 @/tmp/fam-root-
unix 3 [ ] STREAM CONNECTED 5250
unix 2 [ ] DGRAM 5032
unix 2 [ ] DGRAM 4989
unix 2 [ ] DGRAM 4856
이렇게 나옵니다.

일단 873번 과 21번 포트가 열려 있ㄷ가는게 이상합니다.
여전히 FTP는 접속 잘~~됩니다. 원래 데몬이 살아있어도 iptables이 적용되면 접속이 차단되어야 하는거 아닌가요?

그리고 iptables -nL 하니깐
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain RH-Firewall-1-INPUT (1 references)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255
ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT ah -- 0.0.0.0/0 0.0.0.0/0
ACCEPT udp -- 0.0.0.0/0 224.0.0.251 udp dpt:5353
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:631
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:631
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
REJECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x16/0x02 reject-with icmp-port-unreachable
REJECT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 8 reject-with icmp-port-unreachable
REJECT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 11 reject-with icmp-port-unreachable
DROP udp -- 0.0.0.0/0 0.0.0.0/0 udp dpts:1:65535
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpts:1:65535
여긴 또 이렇게 나옵니다 그런데 왜 iptables 적용이 안되는지 궁급합니다.

리부팅을 해 봤는데도 적용이 안되네요
구글하다가 iptables를 700으로 바꾸어 줘야 한다길래
/etc/sysconfig/iptables 의 퍼미션도 700으로 바꾸었구요
그러니 녹색으로 변하던데요....
yum으로 iptables 업데이트도 했습니다..

iptables작업은 #]에서 iptables 적책 일일이 다 쳐서 적용 시켰습니다.

제가 작업한 것 중에 빠트린거나 뭐 잘못된거 있으면 알려 주십시오..

그리고 iptables 에 filter테이블만 작성 해주면 되지 않나요? mangle이나 nat테이블도 작성하시는 분도 있던데.

답변 부탁드립니다 감사합니다.~~~~~~~~^^

관련자료

댓글 2

눈여울님의 댓글

  • 눈여울
  • 작성일
-A RH-Firewall-1-INPUT -i eth0 -j ACCEPT  이설정에 의해서

아래의 정책들이 적용되지 않고 모드 ACCEPT되어버립니다 .

짜증지대로님의 댓글의 댓글

  • 짜증지대로
  • 작성일
아 감사합니다. 안그래도 구글 하루종일 검색하다 좀 전에 알아서 해결 다 했네요..ㅠㅠ

오늘 하루 종일 삽질했네요 ㅎㅎ 답변 주셔서 감사합니다

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,806 개
  • 현재 접속자 :  111 명