>> Edit article
이름
제목
패스워드
proftp 같은 경우는.. passive port 를 지정된 영역에서만 열리게 할수 있는 옵션이 있습니다. PassivePorts 8000 8005 ipfw 에서 8000-8005번까지만 열어서 쓰면 괜찮을거 같군요.. 저도 그렇게 쓰고..있습니다.. ftpd 경우는.. 이런 옵션이 있는지 모르겠습니다.. ^^:.. 참고로 저는 FreeBSD 환경을 사용중입니다. : FTP는 다른 프로토콜들과 달리 2개의 세션이 생성됩니다. : 또한 Active방식이냐 Passive방식이냐에 따라 방향성(?)이 달라지는 특성이 있습니다. : - Active방식 : ...먼저 목적지의 21포트로 접속을 하면서 출발지의 LISTEN 포트의 정보를 넘겨줍니다. 그럼 목적지에서 자신의 20번포트를 오픈해서 알려준 LISTEN 포트로 접속을 시도합니다. : : +--------+ 1028 Control Channel 21 +--------+ : | FTP |------------------------------->| FTP | : | Client | | Server | : | |<-------------------------------| | : +--------+ 1029 Data Channel 20 +--------+ : : 상기 그림에서 숫자는 각각의 포트번호를 의미합니다. FTP Client가 랜덤포트(1028)을 오픈해서 서버의 21번포트로 접속을 시도하고, 여기서 클라이언트가 LISTEN하고 있을 포트(1029:일반적으로 다음 빈포트를 알려주기 때문에 오픈한 다음 포트로 LISTEN을 합니다.)로 출발지 20번을 오픈해서 넘어옵니다. 따라서 FTP서버로 출발지 20번포트의 연결을 오픈하면 됩니다. : : - Passive방식 : ...상기 그림과 같이 컨트롤채널은 동일하게 연결하나 LISTEN포트의 정보대신 Passive방식으로 접속하겠다는 메시지가 날라갑니다. 따라서 방향성이 다음과 같습니다. : : +--------+ 1030 Control Channel 21 +--------+ : | FTP |------------------------------->| FTP | : | Client | | Server | : | |------------------------------->| | : +--------+ 1031 Data Channel 3096 +--------+ : : 그림과 같이 데이터채널이 출발지 랜덤포트에서 목적지 랜덤포트로 접속을 맺습니다. 이때는 FTP서버로 1024포트 이상은 모두 오픈을 해야겠죠. : : 또한 설치하시려는 방화벽의 위치와 FTP서버의 위치관계도 중요한데, 내부에 FTP서버를 운영하시는 것인지, 아니면 외부의 FTP서버로 접속을 원하시는 건지는 모르겠네요. NAT환경이면 IP Filter만으로 Active방식을 운영하시는데 무리가 있을 수 있습니다. : : : 그렇다면 결국 FTP서버를 사용하려면 : : 제대로 된 방화벽 설치가 불가능하다는 결론이네요 : : : : 다른데서 어떤분은 FTP는 방화벽밖에다 설치하라는데 : : 방화벽 안은 뭐고 밖은 무엇을 얘기하는건지요? : : 제가 말씀드리는 방화벽은 natd 나 IP masq 이 아닙니다. : : 단지 특정 허용된 포트만 남기고 다른포트들은 filtering 하는 개념입니다. : : 그리고 FTP 서버의 목적은 웹서버의 각각자기계정에 홈페이지파일들을 올리기위한 목적이기때문에 : : 따로 다른 호스트에 분리할수도 없습니다. : : : : 여러가지 테스트해본결과 FTP 클라이언트가 Passive 모드로 접속시도하게되면 : : 도대체 어느번호로 접속을 시도할지 도무지 무작위로 정해지는것 같습니다.(1024번 이후부터) : : : : 혹시 1024 이후의 포트중에서 어느 범위의 포트를 정해놓고 (예 : 1350 - 1400) 오픈해서 : : 접속하려는 FTP 클라이언트가 passive 모드로 접속을 시도해도 : : 정해진 범위의 오픈된 포트내에서만 접속을 시도.허용하게 해주는 방법은 없는지요 : : : : 그것도 안된다면 1024 부터 65535 까지 의 포트를 몽땅 다 열어줘야 하고 : : 방화벽(포트필터링)은 1024번 이하에만 적용시키는 방법밖에 없다는 결론인데 : : 무슨 방화벽이 이렇게 무책임하고 의미가 없을수 있는지 이해가 안됩니다. : : : : : : : : : : someon wrote: : : : : >참고하세요.... : : > : : : : >3년전 사무실에 방화벽을 설치하고 ftp오픈에서 헤맸던 기억이 나서 이렇게 : : > : : >글남깁니다.. : : > : : >ftp데몬의 연결 특성으로 인해서인지 1024이후의 포트까지 오픈을 해줘야 : : > : : >정상적으로 동작을 하더군요... 세부적인 사항은 기억력의 한계로^^ : : > : : >저의 경우 외부에서의 ftp포트로 포트스캔이 너무 폭주하여 아예 ftp를 닫고 : : > : : >ssh를 이용한 scp를 사용하여 ftp처럼 사용을 하고 있습니다.. : : > : : >ssh는 22포트를 이용하여 원격접속, ftp(ftp와 비슷한 scp) 모두 지원이 ^^ : : > : : >telnet, ftp는 접근 시도가 많은 포트로 네트웍 패킷 캡처를 해보면 : : > : : >패킷내용이 쉽게 누출되더군요... : : > : : >이러한 이유로 전 ssh를 권해드리고 싶습니다^^ : : > : : > : : >멜론바 wrote: : : > : : >>만족스러운 도움을 받지못해서 다시 질문합니다. : : >> : : >>지난번 질문은 아래 첨부되있읍니다. : : >>FTP 포트를 21 번 디폴트를 860 으로 사용하는건 문제가 아닌것 같습니다. : : >>왜냐하면 21번으로도 바꿔서 시도 해봤으나 마찬가지였ㅅ습니다. : : >>또 ftp-data 포트인 20번도 열어넣고 시도해봤습니다. : : >>문제는 모든포트를 1차적으로 deny 해놓고 꼭 필요한 포트만 allow 했을경우 : : >>(20: ftp-data, 21: ftp, 25:smtp, 80: http, 110: pop, 3306:mysqld) : : >>다른 열린 서버포트들은 잘 돼는데 FTP 만 안된다는 것입니다. : : >>그리고 FTP 클라이언트를 써서 FTP 서버에 접속할때 log 화면을 보면 : : >>항상 정해진 FTP 포트로 접속돼는게 아니고 다른 포트번호로 접속돼는데 : : >>그것도 할때마다 번호들이 바뀐다는 것입니다. : : >>그래서 추가로 : : >>ipfw add 00800 allow tcp from any to 66.xxx.xxx.xxx 1300-1400 : : >>이렇게 100개 정도 열어놓아도 : : >>처음에는 이 번호안에서 접속돼지만 몇번후에는 다른번호로 접속시도돼다가 : : >>실패한다는 겁니다. : : >>그렇다고 무작정 포트번호를 몇백개, 몇 천개씩 ftp 를 위하여 열어놓는다면 : : >>방화벽 사용하는 의미가 없어진다는 얘기입니다. : : >>여기서 말씀드리는 방화벽은 ip firewall 을 만 입니다. : : >>natd 나 ip masqerading 은 사용하지 않습니다. : : >>단지 외부에서 꼭 접속가능게 해야할 ftp, smtp, http, mysqld 등만 열어놓고 : : >>나머지 다른 포트들은 보안강화를 위해 닫아놓는게 사용목적입니다. : : >> : : >> : : >>도와주시면 감사하겠습니다. : : >> : : >> : : >>==== 처음 질문 내용 첨부========== : : >>리눅스가 아니고 FreeBSD 입니다 : : >>도움주실수 있을거라 믿고 여기에 질문합니다. : : >> : : >>FTP 는 Proftp 를 씁니다 ftp 포트는 860 을 씁니다. : : >>그리고 작동방법은 standalone 을 쓰고요 잘됩니다. : : >>문제는 ipfw 를 써서 Firewall 을 구축할때 생깁니다 : : >> : : >>% ipfw add 01000 deny tcp from any to 66.xxx.xxx.xxx : : >>이렇게 1차적으로 외부에서 내부로 들어오는 모든 tcp 를 막고 : : >>% ipfw add 00900 allow tcp from any to 66.xxx.xxx.xxx 23,25,80,110,860,3306 : : >>이렇게 ftp를 포함한 필요한 포트만 접속할수 있게 열어 놓았습니다. : : >> : : >>위의 열어놓은 포트들 (telnet, smtp, pop3, http, mysqld 등) 은 : : >>외부에서 잘 통과/접속이 됩니다. : : >>그런데 ftp 포트 (860) 만 전혀 안됩니다. : : >>그래서 포트를 원래 21 으로 바꾸고 ipfw 도 다시 바꿔서 해봐도 마찬가지입니다. : : >>전에 어디서 본것 같은데 ftp 는 포트번호 가 접속할때 : : >>다른번호로 변환되서 사용된다고 본 기억이 나는것 같은데요 : : >> : : >>그렇다면 FTP 서버르 사용하게될 경우 Firewall 은 사용못하는게 되나요? : : >> : : >>방법이 있으면 가르쳐 주세요. : : >>---------------------------------------------------
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved