본문 바로가기
카테고리 없음

FTP서버 만들기

by Junhyeok 2010. 2. 2.
  이전 포스팅에서 말했듯이 NAS를 알아보다가 가성비로는 PC로 서버를 만드는게 낫겠다 싶어 무작정 PC조립 한대 조립해놓은지 열흘 정도 만에 제대로된 FTP 기능을 구현해냈다. 개인 서버를 만든다는게 생각보다 흔한 일이 아니었는지 나 같은 생초보가 참고할만한 자료를 찾는데 애를 많이 먹었다. 그래서 다른 사람들에게 도움이 될지는 모르겠지만 대략적 FTP서버를 만드는데 필요한 개념과 단계를 정리해봤다. 차후에 할 일 없으면서 기분좋은 날 단계별 자세한 설명도 하나씩 정리해서 올릴지 모르겠다.

  컴퓨터 조립이나 운영체제 설치에는 별 어려움이 없었는데 문제는 예상하지 못했던 곳에서 나타났다. 외부에서 서버로 접속하기 위해서는 서버에 고정된 공인 IP가 필요한데, 일반적으로는 별도의 비용을 지불해야만 한다. DDNS라고 유동IP를 일정한 도메인에 연결시켜주는 서비스가 있긴한데 FTP서버를 만드는데 있어서는 별 도움이 안되는 서비스. 해결책은 굉장히 간단하다못해 이미 해결이 된 상태나 다름없었는데 경험이 없다보니 그것도 모르고 하루이틀 헤맸다. 그 해결책은 바로 공유기. 공유기를 끄지 않는 이상 IP는 변하지 않기 때문에(서비스 업체에 따라서는 일정 시간마다 바꾸기도 한단다.) 고정IP 회선을 신청해서 쓰는 것과 별반 다를게 없어진다.

  대신 공유기를 쓸 경우 내부 컴퓨터는 사설IP를 부여받기 때문에 외부에서 접속이 불가능해지는데, 왠만한 공유기는 포트포워딩이나 DMZ라는 기능을 통해서 이런 문제를 해결해주고 있다. 따라서 문제가 쉽게 해결되는듯 하였으나, 때마침 유기자가 SK브로드밴드의 IP TV를 신청하면서 공유기가 2개가 되었고, 메뉴얼이나 질문 답변 게시판이 굉장히 잘 운영되고 있는 아이피타임에 비해서 SK브로드밴드에서 준 공유기의 회사 홈페이지에서는 해당 모델조차 찾을 수 없는, 거기다 IP TV로 실시간 방송을 볼려면 자사 공유기만 거쳐야하는 폐쇄적 시스템으로 인해서 많은 시간을 낭비하게 되었다. 결국은 IP TV를 포기하는 쪽으로 해결.

  2차 난관은 Wake On LAN 기능의 구현이었다. WOL이란 네트웍으로 연결된 원격 컴퓨터에서 지정한 컴퓨터를 켤 수 있는 기능이다. 소수 인원이 사용하는 서버를 24시간 켜두는 것은 낭비같고, 그렇다고 해서 누가 서버 옆에서 지키고 있으면서 필요할때마다 켜줄 수 없으니 필요한 기능이다. 펜티엄4 이후 왠만한 컴퓨터에서는 다 지원한다는 이 기능이 잘되지 않아 괜시리 싸구려 메인보드 탓을 해보기도 하고, 소프트웨어 회사탓을 하기도 했었는데, 이 역시 해결책은 아이피타임 홈페이지에서 발견했다. 아이피타임 공유기가 원격에서 들어오는 매직패킷(PC를 켜라는 신호)을 차단하므로 바이오스 설정과 프로그램을 아무리 바꿔봐도 되질 않는 것이었다. 홈페이지에서 찾은 해결책은 공유기 설정 페이지로 접속하고 관리도구를 통해서 컴퓨터를 켜라는 명령을 내리면 WOL이 구현된다. 어떻게 보면 불필요한 프로그램 설치가 필요없는 좋은 방식이라고 볼 수도 있겠다.

  3차 과제는 원격데스크톱 연결. 기술적 문제는 유기자가 모두 나에게 미룬 탓에 모든 기능을 내가 실험해보고 알아내야하는데 매번 시간 조율해서 방문할 수도 없는거고, 네이트온에서 원격지원하듯이 서버를 원격에서 조작할 수 있는 방법이 필요했다. 다행히 윈도에는 원격데스크톱 연결이라는 쓸만한 자체 프로그램이 있다. 1, 2차 난관을 통과했다면 별다른 어려움없이 써볼 수 있는 기능. 내 경우 1, 2번 단계가 필요하다는 것을 모른채 여기부터 시작해서 한참 헤맸다.

  4차 관문은 드디어 드디어 FTP 서버 기능 구현이다. 윈도는 다른 프로그램 필요없이 IIS라는 서비스를 이용하면 된다. 이 부분도 자료를 찾기가 어려운데 거기다 내가 윈도 서버 2008 R2라는 출시한지 1년도 안된 최신 운영체제를 깔고 IIS도 7.5라는 최신버젼을 선택해서 정말 삽질하는 기분으로 설정을 하나씩 다 바꿔보며 실험해본 결과 겨우 성공.

왠만하면 직접 써볼려고 했는데 막상 작성하려니 캡쳐 화면도 많이 필요하고 설명도 많이해야되는게 귀찮아져서 그냥 내가 참고했던 글들 링크를 모아두는 걸로 대신하기로 했다.
2011년6월30일 추가

일단 내가 제일 처음 서버를 만들면서 참고했던 글들.

http://taeyo.net/Columns/List.aspx?SEQ=25&IDX=2

http://www.egocube.pe.kr/asp_main.asp

처음 찾았던 곳으로 여러 강좌가 모여있다. 다 읽어볼 필요는 없고 4-8번 정도까지만 봐도 FTP 서버를 만드는데는 지장이 없다. 두 번째 링크가 필자가 직접 운영하는 웹사이트인듯.

http://snoopybox.co.kr/search/iis

위 링크는 좀 유명한 스누피님의 블로그. 어쩌다보니 IIS 쪽은 우연히도 내가 조금씩 먼저 해본 내용이 많은데... 아무튼 IIS에 대한 이해고 뭐고 다 필요없이 FTP만 빨리 만들고 싶다면 이 쪽을 보는게 빠를 듯.

댓글