FTP는 상당히 오래전에 만들어진 규약입니다. 파일 배포를 위해 만들어진 규약인데 대표적으로 쓰이는 곳은 여러분이 사용하는 리눅스의 패키지 저장소가 있습니다. 


국내 유명 리눅스 저장소 중 하나인 카이스트 FTP 서버 이러한 불특정 다수에게 파일 배포하기 좋은 프로토콜 중 하나가 FTP이다




대표적인 FTP클라이언트 FileZilla 굉장히 안정적이며 모든 OS를 지원하는 등 국내의 어떤 프로그램 보다 훨씬 낫다.



파일 저장과 파일공유를 중심으로 하는 NAS를 만드시겠다면 이 FTP를 빼 먹을 수는 없겠지요. 이전의 Webmin을 사용한 웹 서버겸 NAS 구축기 (http://moordev.tistory.com/108)를 보셨다면 중간에 ProFTPD를 설치를 알게모르게 했습니다. 최근에는 VSFTP가 더 많이 쓰인다고 하지만 ProFTPD는 Apache처럼 상당히 오랜기간 사용되었던 FTP서버 프로그램 중 하나입니다. 사실 Webmin에서 기본적으로 지원하는 서버가 이거였기도 했고 저도 믿음이 있는 서버프로그램이라 이걸 사용했습니다. 보안상 문제가 있었다고 하지만 업데이트는 충실히 되고 있고 만약 정말로 문제가 크게 일어났다면 데비안 저장소에서 내렸겠지요.


저번 글이 기본적인 서버의 뼈대 구축기였다면 이번에는 그 뼈대에 FTP를 발라 기본적인 구성을 하게끔 하는 것을 목적으로 하겠습니다. 저번 글을 못 보신 분은


http://moordev.tistory.com/108


여기가서 Webmin을 서버에 설치하는 단계까지 와주시길 부탁 드립니다.

이전 글에서 우리는 마지막에 Webmin을 설치하고 Webmin이 지원되는 서버인 (Apache+PHP+MySQL),ProFTPD를 설치하는 단계까지 갔습니다. 이후에 Webmin관리 페이지에서 각 모듈을 설정할 수 있는 단계까지 왔었습니다.




이중에서 제일 신경 써야 하는 부분은 ProFTPD의 디렉토리 부분과 로그인 부분으로 보안상 굉장히 중요하며 파일 공유를 대충 하면 여러분의 서버 프로그램이 엉망이 될 수도 있습니다.


그리고 그 다음에는 MonstaFTP를 웹서버에 설치하는 단계입니다. 이건 간단하게 SSH나 터미널로 처리하도록 합시다.


MonstaFTP를 /var/www에 설치하시면(쉽게말해 웹서버의 메인 디렉토리입니다. 보통 아파치는 여기가 기본이고 나중에 바꿀 수 있지만 귀찮으니 저희도 여기에 그냥 설치해버립시다.) 웹에서 FTP접속을 해서 쓸 수 있습니다. Webmin의 자체 파일 탐색기도 있지만 Webmin자체가 관리 페이지이니 이걸 다른 사람과 공유한다는 것은 어렵겠지요. 그래서 MonstaFTP를 사용하는 겁니다.


MonstaFTP의 홈페이지 주소는 여깁니다. http://www.monstaftp.com/


SSH나 자체 터미널에서 설치하는 방법을 간단하게 긁어 드리겠습니다.


cd /var/www

sudo wget https://www.monstacdn.com/download/monsta_ftp_v1.8.5_install.zip

sudo unzip monsta_ftp_v1.8.5_install.zip

sudo service apache2 restart


끝입니다. 이제 MonstaFTP가 설치되었습니다.


http://서버IP/mftp


여기로 접속하시면 FTP에 접속 할 수 있는 페이지가 뜨는데 서버의 IP를 적으라고 합니다. 게다가 영문 인터페이스군요. 이걸 해결하도록 해봅시다. 다시 SSH를 접속해봅시다. (몰랐는데 Webmin에 SSH기능도 있다고 합니다. 그런데 느려서 별로 추천은 하기 싫습니다. 그냥 putty가 낫습니다.)



sudo nano /var/www/mftp/config.php


$ftpHost = "서버IP"

#ftpHost에 내 서버의 IP주소추가


Ctrl+O Ctrl+X를 순서대로 눌러 저장 후 탈출


sudo nano /var/www/mftp/languages/en_us.php


$file_lang_default = 0;

#1로 되어있는 것을 0으로 수정


Ctrl+O Ctrl+X를 순서대로 눌러 저장 후 탈출


sudo nano /var/www/mftp/languages/ko_ko.php


$file_lang_default = 1;

#0으로 되어있는 것을 1로 수정


Ctrl+O Ctrl+X를 순서대로 눌러 저장 후 탈출


sudo services apache2 restart


이제 들어가 보시면 한글로 되어있고 서버IP를 적는 곳이 사라진 깔끔한 화면을 볼 수 있습니다. root가 아닌 설치할 때 만든 유저계정으로 로그인하시면 파일의 업로드와 다운로드가 가능합니다. 심지어 드래그 앤 드롭도 먹힌다고 하네요. 다만 기술적인 이유로 크롬만이 폴더 업로드가 가능합니다.



다만 업로드 제한이 128MB로 상당히 작은 것을 알 수 있는데 이는 php.ini의 설정 문제로 Webmin의 PHP설정에 들어가서 MemoryLimit을 수정 함으로서 제한을 풀 수 있습니다. 대신 서버의 메모리보다 크게 잡으시면 서버가 크게 느려집니다.

,