프로그래밍/RaspberryPI

[RaspberryPI] 라즈베리 파이에 vsftpd 설치

일단개그하다 2015. 5. 2. 22:34

라즈베리파이를 NAS처럼 사용하려면 가장 중요한 것이 vsftpd

$sudo apt-get install vsftpd

 

 

 

vsftpd를 설치하고 바로 ftp 클라이언트 프로그램으로

pi 계정을 통하여 접속을 시도 하면

 

 

530 This FTP sever in anonymouse only 라고 하며 접속이 되지 않는다

vsftpd의 설정파일을 수정하여 설정을 변경 해야 한다

라즈베리 파이를 잘 모르는 친구들과 같이 사용할 ftp서버라서

행여나 SD카드에 자료를 업로드 할지도 몰라서

관리자 계정 외의 다른 계정은 외장 하드 외의 다른 디렉토리의 접근을 제한 하려한다

vsftpd의 기능중 계정의 홈 디렉토리의 상위 디렉토리의 접근을 제한하는 기능이 있어서 해당 기능을 사용한다

guest 계정의 홈 디렉토리를 외장하드의 내부의 디렉토리로 설정한다

$usermod -d [디렉토리] [계정명]으로 guest 계정의 홈 디렉토리를 변경한다

 

 

/etc/vsftpd.conf 파일을 수정한다

 

 

anonymous_enable=NO : 익명 사용자 접속 제한

local_enable=YES : 로컬 계정의 사용자 접속 허가

chroot_list_enable=YES : 사용자가 ftp에 접속 하였을 경우 chroot를 사용

chroot_list_enable=YES : 상위 디렉토리로 접속을 제한 할 계정들을 적어 놓은 리스트 사용 여부

chroot_list_file=/etc/vsftpd.chroot_list : 리스트 파일의 위치

위 설정값으로 설정을 하고

 

 

 

/etc/vsftpd.chroot_list 파일의 내용을 위와 같이 pi로 하면

pi 계정은 홈 디렉토리의 상위 디렉토리에 접근이 가능하지만

이 외의 다른 계정은 자신의 홈 디렉토리의 상위 디렉토리에 접근이 불가능 하다

설정이 끝나면 $sudo service vsftpd restart 명령으로 vsftpd를 재시작 해주어서

새로운 설정으로 다시 동작하게 한다

그리고 ftp 클라이언트 프로그램으로 접속을 해보면

 

 

위와 같이 pi의 홈 디렉토리의 상위 디렉토리에 접근이 가능하지만

 

 

그 외의 계정인 guest 계정으로 접근을 해보면 위와 같이 해당 홈 디렉토리의 상위 디렉토리는 접근 할 수 없다