노무현 대통령 배너


2006. 4. 6. 15:30

[본문스크랩] VSFTP 설치 및 옵션

출처> http://baby.phose.org/viewtopic.php?p=463&sid=9a420581f9bba37b996a747112c4de84

데비안 패키지로 FTP 설치 #?ProFTPd 설치 #1. 가장 많이 쓰이고 있는 ?ProFTPd 를 설치합니다. 아래 패키지를 설치하면 됩니다.

proftpd proftpd-common
2. 사용자 홈에만 접근하게 하려면 /etc/proftpd.conf 에 다음을 추가하시면 됩니다. (아파치와 유사한 설정파일)

DefaultRoot ~
※ 관련 링크 : http://proftpd.oops.org



VS-?FTPd #1. 작고, 간단한 설정으로 점점 사용자층이 많아지는 FTP 데몬입니다. 아래 패키지를 설치하면 됩니다.

vsftpd
2. /etc/inetd.conf 파일을 열어 아래 내용을 첨가하여 vsftp 를 등록합니다.

ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/vsftpd
3. ftp 라는 유저를 만듭니다. (anonymous 를 허용하지 않는 경우)

adduser --system --no-create-home ftp
4. anonymous의 접속을 허용하려면 ftp 홈디렉토리를 만들고, ftp 디렉토리 소유를 다른계정(root)으로 만듭니다.

adduser ftp
chown root ftp
5. /etc/vsftpd.conf 를 열어 필요한 옵션의 주석을 제거합니다.

anonymous_enable=YES <- anonymous 가능
local_enable=YES <- 일반 user의 접근 가능
write_enable=YES <- 쓰기 가능
local_umask=022 <- 업로드시 group 과 other 의 읽기 가능
anon_upload_enable=YES <- anonymous 업로드 가능 (관련링크 참조)
ascii_upload_enable=YES <- ASCII 파일 업로드 가능
ascii_download_enable=YES <- ASCII 파일 다운로드 가능
6. /etc/init.d/inetd restart 해서 inetd 서버를 재시동하면 vsftpd 가 작동합니다.



7. vsftp 설정파일 설명

/etc/ftpusers 파일에 존재하는 ID는 접속할 수 없게된다.(sense=deny)

# FTP 접속을 허용하지 않을 ID를 등록한다.
# /etc/passwd를 참조해서 설치할 서버의 환경에 맞게 등록
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
smmsp
xfs
gdm
mysql

/etc/vsftpd.conf

# anonymous 사용자의 접속 허용 여부 (default = YES)
# 공개된 형태의 FTP 서버로 운영할 것이 아니라면 NO로 한다.
anonymous_enable=NO
# 로컬 계정 사용자의 접속 허용 여부 (default = NO)
local_enable=YES

# write 명령어 허용 여부 (defualt = NO)
write_enable=YES
# 로컬 계정 사용자용 umask (default = 077)
local_umask=022

# anonymous 사용자가 파일을 업로드 할 수 있는지 여부 (default = NO)
# anon_upload_enable=YES
# anonymous 사용자의 디렉토리 생성 허용 여부 (default = NO)
# anon_mkdir_write_enable=YES

# 파일 전송 로그를 남길 것인지 여부 (default = YES)
xferlog_enable=YES
# xferlog 표준 포맷으로 로그를 남길지 여부 (기본 설정파일은 YES)
# 아래에서 NO로 설정했을 때를 설명함
xferlog_std_format=YES
# 파일 전송 로그 파일명
xferlog_file=/var/log/vsftpd.log

# FTP 서버 접속할 때 로긴 메시지 (default = vsFTPd 버전번호)
# 한글 사용 가능
# ftpd_banner=Welcome to blah FTP service.

# -------------------------------------------------------------------
# 기본 설정 파일에는 없는 설정값으로 필요한 설정만 추가한다.
# ※ 중요한 설정은 굵은 글씨로 표시
# -------------------------------------------------------------------

# PAM 파일명을 지정 (설치할 때 /etc/pam.d/vsftpd명으로 복사함)
pam_service_name=vsftpd

# wtmp에 로그 남기기 (YES로 해야만 last 명령어로 접속 여부 확인 가능)
session_support=YES

# 사용자가 자신의 home directory를 벗어나지 못하도록 설정
chroot_local_user=YES

# 새로운 디렉토리에 들어갔을 때 뿌려줄 환경 메시지를 저장한 파일명
# message_file=.message

# xferlog 형식으로 log를 남기려면 (위에서 이미 YES로 했음)
# xferlog_std_format=NO
#
#  - xferlog 표준 포맷은 로긴, 디렉토리 생성등의 로그를 남기지 않음
#   그러나 vsftpd 스타일 로그는 이를 포함한 보다 상세한 로그를 남김
#  - vsftpd 스타일 로그 예
#
#  Sun Jul 12 01:38:32 2003 [pid 31200] CONNECT: Client "127.0.0.1"
#  Sun Jul 12 01:38:34 2003 [pid 31199] [truefeel] FAIL LOGIN: Client "127.0.0.1"
#  Sun Jul 12 01:38:38 2003 [pid 31199] [truefeel] OK LOGIN: Client "127.0.0.1"
#  Sun Jul 12 01:38:41 2003 [pid 31201] [truefeel] OK MKDIR: Client "127.0.0.1", "/mp3"
#  Sun Jul 12 01:39:06 2003 [pid 31201] [truefeel] OK UPLOAD: Client "127.0.0.1", "/델리
#  스파이스 5집 - [04]키치죠지의 검은 고양이.mp3", 6855473 bytes, 3857.39Kbyte/sec

# 전송속도 제한 (0은 제한없음, 단위는 초당 bytes)
anon_max_rate=0
local_max_rate=0
trans_chunk_size=0

# 최대 접속 설정 (단 xinetd를 통하지 않고 standalone으로 동작할 때만 사용 가능)
# standalone을 위해서는 listen=YES 추가하고 별도로 vsftpd를 띄워야 함
#
# max_clients=최대 접속자 수, max_per_ip=IP당 접속 수
# max_clients=100
# max_per_ip=3

# Standalone 으로 운영할 때 listen=YES. 포트 변경을 원할 경우 listen_port 설정
# 디폴트 포트는 21번 포트이다.
# listen=YES
# listen_port=21
※ 관련 링크 : http://debianusers.org/print.php?story=02/01/03/8717350
※ 각종 설정 관련 링크 : http://kltp.kldp.org/stories.php?story=03/10/09/5659809
FTP Client #1. ?NcFTP - 자동 경로완성기능 등으로 많이 사용하는 FTP 클라이언트입니다. 아래 패키지를 설치하면 됩니다.

ncftp
2. LFTP - ?NcFTP 와 더불어 많이 쓰이는 FTP 클라이언트입니다. 아래 패키지를 설치하면 됩니다.

lftp