티스토리 뷰

vsftp (Very Secure File Transfer Protocol) 설치



vsftp 특징


FTP 보안설정을 할수 있어서 좀 더 안정적으로 FTP 서버 운용이 가능하다.

config 파일 수정과 의미가 명확하여 초보자들도 사용하기 쉽다.

기본적으로 Redhat, Suse, Open-BSD 계열 리눅스에서 기본 탑재하고 있어서 따로 설치할 필요없이 바로 사용이 가능하다.




vsftp 설치 여부 확인


[root@localhost ~]# rpm -qa | grep vsftpd

vsftpd-2.2.2-14.el6.x86_64




vsftp 설치


yum install vsftpd -y




vsftp 데몬 실행 스크립트

 

/etc/init.d/vsftpd stop | start | restart




vsftp 설정 파일


/etc/vsftpd/vsftpd.conf


anonymous_enable=NO

익명사용자 접근을 허용하지 않음 (누구나 ID/PW 없이 FTP에 접근하여 자료를 업로드 및 다운로드 할수 있게하는 옵션입니다)

편리해보이는 기능이긴 하지만 보안상 좋지 않으므로 NO 로 설정합니다.


anon_upload_enable=YES

익명 사용자가 파일업로드를 가능하게 하겠다는 의미 계정 생성하지 않고 파일을 받을수 있어 편리하긴 하지만 보안상 좋지는 않다.


anon_mkdir_write_enable=YES

익명 사용자가 디렉토리를 생성 가능하게 하겠다는 옵션


계정 JAIL 설정

chroot_local_user=YES

FTP 접속한 계정이 자신의 홈디렉토리 (공간) 이외에는 접근할수 없게 하는 옵션입니다. 

NO 로 설정하거나 주석처리가 되어 있는경우에는 모든 계정이 다른 디렉토리로 접근이 가능합니다. (JAIL 설정이라고도 하는듯 하다)


allow_writeable_chroot=YES

위 옵션만으로 로그인성공하나 파일목록이 access 되지 않는 경우 있음


특정 계정만 JAIL 적용하기

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

/etc/vsftpd/chroot_list 파일에 JAIL 할 계정 등록해주면 됨


특정계정만 제외하고 JAIL 하기

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

/etc/vsftpd/chroot_list 파일에 JAIL 제외할 계정 등록해주면 됨


계정의 홈디렉토리는 /etc/passwd 파일에서 확인가능하다

ex) ddongho:x:502:502::/home/ddongho:/bin/bash

ddongho 라는 계정의 홈디렉토리는 /home:ddongho 라는것을 확인할수 있다


idle_session_timeout=600

사용자가 로그인후 아무런 작업이 없을시 600초후에는 강제로 접속을 끊겠다는 의미입니다. 

사용자가 잠시 PC 앞에서 떠난후 다른 누군가가 내 자료를 불법적으로 다운로드 혹은 업로드 등의 작업을 할 수 있으므로 꼭 설정하는것이 좋습니다.


data_connection_timeout=120

다운로드 시작시간부터 지정된 초동안 완료되지 않으면 접속을 강제로 끊는다.


write_enable=YES

사용자의 쓰기 권한입니다. YES를 주면 권한이 있는 사용자는 누구든지 파일 업로드 및 파일 수정 삭제 등을 할 수 있다.

NO라고 하면 누구든지 파일 수정, 삭제, 업로드는 할수 없습니다.


local_enable=YES

리눅스 로컬 사용자 일반 계정이 FTP에 접근할수 있게 한다는 의미


local_umask=022

FTP 로 접근한 로컬 사용자들이 파일을 생성할때 기본으로 권한을 644 로 가지게 하겠다는 의미


dirmessage_enable=YES

사용자가 어떤 디렉토리로 이동할때 디렉토리에 지정된 메세지를 보여주는 기능을 사용하겠다는 옵션


xferlog_enable=YES

사용자들의 파일 업로드/다운로드 등의 기록을 LOG 로 남기겠다는 의미 (xferlog_std_format parameter 에 따라 형식이 정해지는듯 하다)


ftpd_banner=Welcome to kensei FTP

FTP 접속시 보여줄 메세지, 활성화되지 않을시 FTP의 버젼 정보가 나타남







브라우저에서 URL창에도 "FTP://ID:비밀번호@IP주소:포트번호" 이런식으로 입력하면 브라우저에서도 FTP 접근이 가능하다.




Linux

vi /etc/vsftpd/vsftpd.conf

- pasv_enable=YES
- pasv_min_port=50000, pasv_max_port=50001

- vi /etc/proftpd\proftpd.conf
- PassivePort 50000 50001

Passive Port 지정

500 OOPS: cannot change directory:/home/chat
- /etc/vsftpd/vsftpd.conf 파일 맨 하단
- pasv_enable=YES
- pasv_min_port=5001
- pasv_max_port=5001
/etc/init.d/vsftpd restart 로 재시작

setsebool -P ftp_home_dir=1

vim /etc/rc.d/rc.local
modprobe ip_conntrack_ftp ; FTP 패시브 모드를 허용하도록 모듈 올리기라는데 상태추적을 하겠다는 의미같음



참고 및 내용 출처 사이트

http://theeye.pe.kr/archives/731




'Linux' 카테고리의 다른 글

/usr/share/cracklib/pw_dict: error reading header  (0) 2015.06.04
glibc 관련 에러  (0) 2015.06.04
리눅스 vi 편집기 정리  (0) 2015.06.04
리눅스 lsyncd (실시간 동기화)  (0) 2015.06.04
리눅스 alias 개념  (0) 2015.06.04
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함