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

iptables의 ESTABLISHED,RELATED

작성자 정보

  • logo 작성
  • 작성일

컨텐츠 정보

본문


ftp 데몬에서 command포트로 21번을 사용하면,
 $iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT 가 잘 듣습니다.
 (책대로 20번 포트를 열지 않아도 클라이언트에서 active,passive등 어떤 모드로 서버에 접속해도 잘 접속이 됩니다.)

그런데 command포트로 21번을 제외한 다른 포트 즉,1000이나 21000번등으로 하면,
 $iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT 가 듣지 않습니다.
 (클라이언트에 방화벽이 없어 active 경우는 상관이 없지만 passvie mode로는 ESTABLISHED,RELATED가 안통하는지 접속은 되지만 list를 가져오지 못합니다.)

또, vsftpd를 ssl로 돌려 보았는데, ssl 모드로 돌릴 경우 command 포트로 21번을 사용해도,
 $iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT 가 듣지를 않습니다.
 (즉, 접속해도 list를 가져오지 못합니다. passive mode 포트 대역을 열어주면 접속이 가능합니다.)


" -m state --state ESTABLISHED,RELATED " 는 이미 연결되어 있으나 연결되어 있는 포트가 아닌 다른 포트로 다시 접근할때에 접근을 허가한다라고 알고 있는데 이해를 잘못하고 있는 건가요?

서버에서 직접 yum list 하면,
" -m state --state ESTABLISHED,RELATED " 가 잘 작동하는지 문제없이 리스트를 가져옵니다.


아래는 제가 어디서 잘못이해하고 있는지 최소한의 룰만 적용시켜서 테스트 해본 룰입니다.
 iptables=/sbin/iptables

 $iptables -F

 $iptables -P INPUT DROP
 $iptables -P FORWARD ACCEPT
 $iptables -P OUTPUT ACCEPT

 $iptables -A INPUT -p TCP --sport 1024: --dport 22 -m state --state NEW -j ACCEPT

 $iptables -A INPUT -p ALL -m state --state ESTABLISHED,RELATED -j ACCEPT

 $iptables -A INPUT -i lo -j ACCEPT
 $iptables -A OUTPUT -o lo -j ACCEPT

 $iptables -A INPUT -p tcp --sport 1024: --dport 21  -m state --state NEW -j ACCEPT

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


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