레이블이 server인 게시물을 표시합니다. 모든 게시물 표시
레이블이 server인 게시물을 표시합니다. 모든 게시물 표시

2004년 1월 20일 화요일

indiftpd - 파일 하나짜리 오픈 소스 FTP Server

P2P 방식의 발달로 단지 끌어다 놓기만 하면 파일을 전송할 수 있는 이런 편리한 시대가 도래했지만, FTP는 그 나름의 가치를 가지고 자신의 이름 값(이름이 File Transfer Protocol)을 톡톡히 하며 굳건히 자리를 지키고 있습니다. 깊이 들어가서 엄밀히 따지면 P2P 파일 전송과 FTP는 그 용도나 방식에 차이가 좀 있기 때문에 이 둘을 비교한다는 것이 어쩌면 잘못된 것일 수도 있겠네요. ^^; 아무튼...

각설하고, 저처럼 FTP를 특별히 좋아하는 FTP mania들을 위한 깜찍한 도구를 하나 소개해드릴려구 합니다. 이름이 indiftpd인데, 달랑 파일 하나로만 이루어져 있는 FTP Server입니다. 거기다 오픈 소스이죠. 왠지 빈약해보이는 것 같지만, 이래봬도 FTP Server로서 갖추어야할 기본은 거의 다 갖추고 있습니다. Console에서 바로 실행을 하는 방식이며, 모든 설정은 옵션으로 줄 수 있습니다. 실행하는 간단한 예를 들어보면 다음과 같습니다.

c:\> indiftpd -p5021 -e -Uftp -P1234 -Hc:\tmp

위와 같이 실행을 하면, 5021번 포트로 ftp라는 사용자가 1234라는 패스워드를 사용해서 접속을 할 수 있도록 하는 FTP Daemon이 됩니다. 이때 FTP의 홈디렉터리는 c:\tmp가 되는 것이구요. -e 옵션은 explicit SSL을 지원하도록 지시하는 것입니다. 그리고, 위 예는 Windows의 경우를 들었지만 Unix 계열에서도 얼마든지 사용할 수 있습니다.

영구적으로 FTP Server를 운영할 것이 아닌 경우나 FTP Server를 운영할 만한 상황 또는 권한이 안 되는 경우에 임시로 파일을 전송해주기 위한 수단으로 이 indiftpd는 상당히 유용합니다. SSL까지 지원을 해주기 때문에 안전한 접속 및 파일 전송이 가능하다는 것도 큰 장점입니다. 특수한 상황에서 적지 않은 수의 파일을 어떻게 전송해 줄 수 있을지 고민이 된다면 이 indiftpd를 사용해 보세요.(FTP는 오직 파일을 전송하기 위해 존재하는 프로토콜입니다.) 구관이 명관이죠. 후훗...

Source Forge의 indiftpd 프로젝트 페이지입니다.
Link: http://sourceforge.net/projects/indiftpd/

P.S. 개인적인 목적으로 무료로 쓸 수 있는 FTP client 중에선 SmartFTP가 꽤 괜찮습니다.

2003년 8월 8일 금요일

Apache 2.x + OpenSSL + mod_ssl for Win32

얼마 전에 사이트에 SSL을 적용하고 나서, 구성하는 방법에 대한 문서를 작성해두려고 마음을 먹었더랬습니다. 그런데, 정리를 하기 위해 참고가 될만한 자료를 찾던 중에 아주 아주 깔끔하게 정리가 잘 된 페이지를 발견하고 말았습니다.

도움이 되는 좋은 자료를 찾게 되어서 기쁘기도 했지만, 역시나 의욕은 상실 되더군요.. ^^; 이미 있는 자료를 두 번 작성할 필요는 없을테니까요. 에너지 낭비죠. ㅡㅡ;

혹시라도 Windows 환경에서 Apache Server를 운영하면서 SSL을 적용해보고 싶으신 분들은 아래의 주소를 참고해주세요.

http://tud.at/programm/apache-ssl-win32-howto.php3

위 주소의 문서를 보면 크게 네 단계로 작업이 이루어집니다.

첫째, Apache 설치
둘째, OpenSSL 및 mod_ssl 구하기
셋째, 시험 인증서 만들기
마지막, Apache 및 mod_ssl 설정

이 문서에서는 친절하게도 이미 OpenSSL을 적용해서 mod_ssl을 함께 compile해둔 바이너리의 제공 사이트를 알려주고 있습니다. 바로 여기죠.

http://hunter.campbus.com/

이곳에서는 Apache 1.x 버전과 Apache 2.x 버전, 그리고 OpenSSL까지 모두 미리 compile된 바이너리를 제공해주고 있습니다. 바로 받아서 사용하면 되니까 compile하는 수고는 덜 수 있을 것 같네요.

문서에서도 주지시키고 있지만, 다시 한 번 더 실수하기 쉬운 부분을 말씀드리면,

1. mod_ssl을 사용하기 위해서 꼭 필요한 OpenSSL의 두 라이브러리 파일(ssleay32.dll, libeay32.dll)을 꼭 PATH 환경 변수가 설정되어 있는 디렉토리에 넣어주어야 한다는 것
2. Apache를 실행할 때 '-D SSL'이란 인자를 함께 주어야 한다는 것 (음.. 이 부분은 사실 Apache의 conf/ssl.conf 파일내에서 SSL에 관한 설정이 <IfDefine SSL></IfDefine>이라고 하는 조건절로 둘러싸여 있기 때문입니다. 만약 항상 SSL을 on 시켜두실 것이라면 이 조건절 부분을 삭제해버리셔도 무방합니다. 그러면 굳이 '-D SSL' 옵션을 따로 주지 않아도 됩니다.)

그러면, 이제 여러분들께서도 강력한 128 bit의 암호화 사이트 서비스를 하실 수 있게 되었습니다. 후후... 근데, 중요한 기밀도 없는 제 홈페이지에 강력한 암호화 사이트가 왜 필요하냐구요? 글쎄요.. ^^;