본문 바로가기

Web/LINUX

vsftpd 설정 및 운영

반응형
출처 : http://lanplaza.net


vsftpd 설치하기
cd /usr/local/src/ftpd/ : 디렉토리 이동
lftpget ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.5.tar.gz : 공식 사이트로부터 다운로드
useradd nobody : nobody 사용자 추가(nobody 사용자가 있는지 확인, 사용자가 있으면 다음 단계로 진행)
mkdir /usr/share/empty/ : 빈 디렉토리 생성(만들어져 있으면 다음 단계로 진행)
mkdir /var/missflash/ : missflash 계정의 홈 디렉토리 생성
useradd -d /var/missflash missflash : missflash 계정의 홈 디렉토리 설정
chown root.root /var/missflash : 디렉토리 소유자와 소유그룹 변경
chmod 755 /var/missflash : 디렉토리 퍼미션 변경
make : 실행파일 생성[각주:1]
make install : 프로그램 인스톨
cp vsftpd.conf /etc : vsftpd 설정 파일 복사


vsftpd 서버 실행 : /usr/local/sbin/vsftpd &

vsftpd를 standalone으로 설정하라고 나올 경우 vsftpd.conf 파일 제일 아래에 listen=YES[각주:2] 라고 입력



vsftpd.conf 설정
anonymous_enable=YES : 익명 FTP 서비스 활성화 여부 설정
local_enable=YES : 로컬 계정 사용자 접속 여부 설정
write_enable=YES : 쓰기 가능 여부 설정
local_umask=022 : 파일 퍼미션 정의(022로 설정하면 파일의 퍼미션은 644가 됨)
anon_upload_enable=YES : 익명 FTP 접속자의 파일 업로드 권한 설정
anon_mkdir_write_enable=YES : 익명 FTP 접속자의 디렉토리 생성 권한 설정
dirmessage_enable=YES : FTP 접속자가 다른 디렉토리로 이동시, 알림메시지 출력 여부 설정
xferlog_enable=YES : FTP 접속자들의 업/다운로드 상황 로그파일 저장 여부 설정
connect_from_port_20=YES : standalone 모드를 운영하면서 데이터 전송포트 사용시 설정
chown_uploads=YES : 익명 FTP 서비스에서 익명 접속자가 업로드한 파일의 소유권 자동 변경 여부 설정
chown_username=whoever : 익명 FTP 서비스에서 익명 접속자가 업로드한 파일의 소유권 자동 변경한 후, 그 소유권을 변경할 사용자 설정(root로 설정하지 말 것!)
xferlog_file=/var/log/vsftpd.log : 로그파일 경로 설정
cp vsftpd.log /etc/logrotate.d/vsftpd : 생성한 로그파일을 /etc/logrotate.d/vsftpd로 복사

xferlog_std_format=YES : 로그파일 포맷 설정
idle_session_timeout=600 : idle 상태에서 접속을 유지할 최대 시간 설정(기본값 300초)
data_connection_timeout=120 : 파일 업/다운로드시 연결을 유지하는 시간 설정(기본값 300초)
xferlog_std_format=YES : 로그파일 포맷 설정
nopriv_user=missflash : 익명 FTP 접속자가 접속하는데 사용할 사용자 설정(기본값 nobody)

async_abor_enable=YES : async ABOR 명령 가능 여부 설정(기본값 NO)
ascii_upload_enable=YES : ASCII 파일 업로드 가능 여부 설정(기본값 NO)
ascii_download_enable=YES : ASCII 파일 다운로드 가능 여부 설정(기본값 NO)
ftpd_banner=Welcome : FTP 접속자에게 보여줄 환영 메시지 설정
deny_email_enable=YES : 익명 FTP 접속시 접속을 거부할 이메일[각주:3] 설정(기본값 NO)[각주:4]
banned_email_file=/etc/vsftpd.banned_emails : 접속을 거부할 이메일의 파일 경로 설정
chroot_local_user=YES : 홈 디렉토리 위로 이동 제한 여부 설정(기본값 NO)[각주:5]
chroot_list_enable=YES : chroot에서 제외할 사용자 목록 파일 사용 여부 설정(기본값 NO)
chroot_list_file=/etc/vsftpd.chroot_list : chroot에서 제외할 사용자 목록 파일과 경로 설정
ls_recurse_enable=YES : FTP 접속자들의 ls -R 명령어 사용가능 여부 설정(기본값 NO)
listen=YES : standalone 모드로 서비스할 때 설정(기본값 xinetd)
pam_service_name=vsftpd : pam 인증에 사용할 설정파일의 이름 설정
해당 파일 복사 : cp /usr/local/src/ftpd/vsftpd-2.0.5/RedHat/vsftpd.pam /etc/pam.d/vsftp
사용자 계정 접속 제한 : (vsftp 파일 내용중) item=user sense=deny file=/etc/ftpusers

pasv_min_port=5000 : 패시브 모드 최소 포트번호 설정
pasv_max_port=6000 : 패시브 모드 최대 포트번호 설정(iptables 방화벽에서 5000~6000까지 오픈해야 함)
pasv_enable=NO : 패시브 모드를 해지(기본값 YES)
max_clients=100 : 최대 동시접속자수 제한 설정(기본값 0[각주:6])
max_per_ip=5 : IP당 최대 가능 접속수 설정(기본값 0)
session_support=YES : wtmp에 접속로그 남기도록 설정(YES 설정시 last 명령으로 접속 사용자의 최근 접속시간 파악 가능)
trans_chunk_size=8192 : 파일 업/다운로드시 지정한 byte 단위로 잘라서 전송(4096부터 65536사이의 값으로 지정해야 함, 기본값 0[각주:7])
local_max_rate=500000 : 계정 사용자의 최대 초당 전송량(bytes) 제한(기본값 0)
anon_max_rate=300000 : 익명 접속자의 최대 초당 전송량(bytes) 제한(기본값 0)
force_dot_files=YES : 숨김 파일(.으로 시작하는 파일)을 보여줄지 여부 설정(기본값 NO)
hide_ids=YES : 디렉토리와 파일의 원래 소유자와 소유그룹을 숨길지 여부 설정(기본값 NO)
deny_file={*.mp3,*.wmv} : 특정 확장자 파일 업로드 제한
hide_file={*.mp3,*.wmv} : 특정 확장자 파일 열람 제한


vsftpd 서버 시작스크립트 생성[각주:8]
/etc/vsftpd 디렉토리 생성 및 /etc/vsftpd/vsftpd.conf 파일 저장
시작 스크립트 파일[각주:9]을 /etc/rc.d/init.d/vsftpd 파일로 저장
스크립트에 실행권한 부여 : chmod 755 /etc/rc.d/init.d/vsftpd

chkconfig 이용 런레벨 3, 5번에 추가
chkconfig --add vsftpd
chkconfig --level 3 vsftpd on

chkconfig --level 5 vsftpd on


vsftpd 옵션 참고 : http://vsftpd.beasts.org/vsftpd_conf.html


막간을 이용한, sftp 설치 방법
openssh 패키지에 포함되어 있음
/etc/ssh/sshd_config 파일 내 "Subsystem sftp /usr/libexec/openssh/sftp-server" 부분 활성화
sshd 서비스 시작



막간을 이용한, sftp 사용 방법(클라이언트 설정)
포트 : 22
서버유형 : SFTP using SSH2
반응형

'Web > LINUX' 카테고리의 다른 글

php로 된 자료실 자료업로드 문제..  (0) 2011.08.31
아파치 튜닝  (0) 2011.08.31
APM 소스 컴파일 설치가이드  (0) 2011.08.31
ssh 무차별 로그인 공격 막기  (0) 2011.08.31
ssh로 특정 ip접근 hosts.deny 자동 추가  (0) 2011.08.31