웹호스팅 따라하기 – 05 vsftpd 설치하기 (umask 022 권한 설정포함)

사용자 삽입 이미지
 이번에는 웹호스팅 따라하기의 거의 마지막 서비스라고 할 수 있는 FTP 서버를 설치해보도록 하겠습니다.

 FTP서버에는 여러가지가 있는데, 저는 가장 범용적인 vsftpd를 설치할까 합니다.

 설치는 역시나 너무 쉽습니다.

 다음 커맨드를 입력하면 간단하게 설치가 됩니다.

[code bash]apt-get install vsftpd[/code]

 그러면 역시나 다음과 같은 메세지를 출력하면서 설치 과정을 확인할 수 있습니다.

[code text] 패키지 목록을 읽는 중입니다… 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다… 완료 추천하는 패키지: logrotate 다음 새 패키지를 설치할 것입니다: vsftpd 0개 업그레이드, 1개 새로 설치, 0개 제거 및 0개 업그레이드 안 함. 151 k바이트 아카이브를 받아야 합니다. 이 작업 후 333 k바이트의 디스크 공간을 더 사용하게 됩니다. 받기:1 http://ftp.kr.debian.org/debian/ wheezy/main vsftpd armel 2.3.5-3 [151 kB] 내려받기 151 k바이트, 소요시간 0초 (434 k바이트/초) 패키지를 미리 설정하는 중입니다… Selecting previously unselected package vsftpd. (데이터베이스 읽는중 …현재 41505개의 파일과 디렉터리가 설치되어 있습니다.) vsftpd 패키지를 푸는 중입니다 (…/vsftpd_2.3.5-3_armel.deb에서) … vsftpd (2.3.5-3) 설정하는 중입니다 … Starting FTP server: vsftpd. [/code]
 
 설치가 완료되면 이제 설정 파일을 수정해줍시다.

[code bash] nano /etc/vsftpd.conf [/code]

 저는 다른것은 거의 손대지 않았고 세가지만 주석을 해제 해주었습니다.

 #local_enable=YES 부분의 주석을 없애도록 합니다.

 유저들이 로그인 할 수 있도록 하기 위함입니다.

 #write_enable=YES 이부분도 주석을 제거합니다.

 유저들이 업로드를 할 수 있도록 하기 위함이죠.

 #local_umask=022 부분의 주석표시(#)부분을 간단하게 삭제합니다.

 이 옵션이 나름 중요한 이유는 이것을 설정해주지 않으면 유저가 업로드한 파일과 폴더의 권한이 웹호스팅에 맞지 않아 일일이 수정해줘야 하기 때문이죠.

 근데 umask를 022로 해두면 폴더(디렉토리)의 권한은 755로, 파일권한은 644로 지정되기 때문에 별다른 설정없이도 웹호스팅에 맞는 파일권한으로 업로드가 되기 때문입니다.

 마지막으로 vsftpd서비스를 재시작 시키면 되겠습니다.

[code bash] root@debian:/# service vsftpd restart Stopping FTP server: vsftpd. Starting FTP server: vsftpd. [/code]

 다음 포스팅에는 본격적으로 유저를 추가해서 각 유저들의 홈 디렉토리에서 아파치, PHP, mysql 서비스들이 각각 잘 작동하도록 하는 내용으로 돌아오겠습니다.