우분투 12.04 버전의 vsftpd는 2.3.5 가 설치된다(현재기준 - 2013.08.15). 이 버전은 chroot
적용에 문제가 있습니다. 이 기능을 사용하지 않고 FTP 서버를 운영할 계획이라면 문제가 없으나 chroot를 적용해야 될 경우라면 vsftpd 3.0 버전을 설치해야 합니다.
VSFTP 설치
두 가지 버전의 설치 방법을 알아본다.
vsftpd 2.3.5 버전의 설치
$ sudo apt-get install vsftpd
vsftpd 3.0.2 버전 설치
다운로드에서 원하는 32/64 비트를 설치한다.
아래는 64비트용의 예이다.
# wget을 이용해 다운로드
$ wget http://us.archive.ubuntu.com/ubuntu/pool/main/v/vsftpd/vsftpd_3.0.2-1ubuntu2_amd64.deb
# 설치
$ sudo dpkg -i vsftpd_3.0.2-1ubuntu2_amd64.deb
# 설정 파일 열어 수정
$ sudo vi /etc/vsftpd.conf
chroot_local_user=YES
allow_writeable_chroot=YES
# 재시작
$ sudo restart vsftpd
VSFTP 설정
아래의 값을 참고하여 설정한 후에, 저장하고 vsftpd를 재시작 해준다.
# 설정 파일 열기
$ sudo vi /etc/vsftpd.conf
# anonymous 유저 사용 불가
anonymous_enable=NO
# 계정사용자 접속 가능
local_enable=YES
# 업로드 가능
write_enable=YES
# 디렉토리나 파일 생성시 umask 값
local_umask=022
# 접속시 메세지
ftpd_banner=Welcome to uzuro FTP service
# 접속시 출력 메세지 설정 ( shell등을 이용해 접속시 )
# 사용자 홈디렉토리에 .message 파일에 작성
dirmessage_enable=YES
# chroot 적용
# 아래와 같은 설정을 할 경우 사용자들은 자신의 계정에서 상위 디렉토리로 이동할수 없게된다.
chroot_local_user=YES
# 특정 사용자만을 Jail 설정할 경우
# chroot_list에 등록되어있는 계정에만 chroot가 적용
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
# 특정 사용자를 제외한 나머지 사용자만을 Jail 설정할 경우
# chroot_list에 등록된 계정을 제외한 나머지가 자신의 계정에 chroot가 걸림
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
# 계정마다 동적으로 설정할 경우
# 아래와 같이 설정을 하게 되면 /etc/passwd 파일을 참고하여 jail 설정을 할 수 있게 됨
# /etc/passwd 파일을 수정하여 경로에 .을 찍게 되면 그 지점이 chroot지점이 됨
# theeye:x:600:100::/home/./theeye:/bin/bash
chroot_local_user=YES
passwd_chroot_enable=YES
FTP 디렉토리 변경
vsftpd를 설치하면서 자동으로 ftp 유저가 생성되며 홈디렉토리로 /srv/ftp
로 지정된다. 이것을 변경해 보자.
# 사용할 디렉토리 생성
$ sudo mkdir /home/ftp
# ftp 유저의 홈디렉토리를 변경
$ sudo usermod -d /home/ftp ftp
# 재시작
$ sudo restart vsftpd
FTP 접속을 거부할 유저 등록
한 줄에 한명씩 아이디를 등록하면 해당 유저는 접속이 거부된다.
# 이 곳에 등록
$ sudo vi /etc/ftpusers
# 재시작
$ sudo restart vsftpd
'리눅스 > Ubuntu' 카테고리의 다른 글
[Ubuntu] 우분투 Git 서버 구축 (0) | 2013.08.29 |
---|---|
[Ubuntu] 우분투 워드프레스 설치 (0) | 2013.08.20 |
[Ubuntu] 우분투 vsftpd 설치 (3) | 2013.08.16 |
[Ubuntu] 500 OOPS: vsftpd: refusing to run with writable root inside chroot() (5) | 2013.08.15 |
[Ubuntu] 우분투 VMWARE (0) | 2013.08.10 |
[Ubuntu] 우분투 시스템 모니터링 도구 - htop (4) | 2013.08.03 |
anonymous_enable=YES
로 해놓으면 local 유저가 로그인가능한데
anonymous_enable=NO 로 하면은 local 유저가 로그인이 불가능합니다.
아마 pam 설정에 문제가 있는거 같은데 도저히 못찾겠습니다. 어떻게 해야할까요?
Ubuntu server 쓰고 있으며 설치후에 아무것도 건드리지 않고 바로 vsftpd 설치했는데 이럽니다.
정말 감사드립니다 ㅠㅠㅠㅠㅠㅠㅠㅠㅠftp 오류 났던게 홈 디렉터리 고쳐주닌까 이제 되네요 ㅠㅠㅠㅠ