VSFTP 설치 및 설정 > 서버관리자

서버관리자

서버관리자 모임 게시판 입니다.

VSFTP 설치 및 설정 정보

VSFTP 설치 및 설정

본문

CentOS7 에 최신 VSFTP 설치하고

계정 사용자가 상위 디렉터리로 이동하지 못하도록 하는 설정에 대해 알아보겠습니다.

 

//vsftp 를 yum 을 이용해 설치 합니다.

# yum -y update

# yum install  -y vsftpd

 

 

//systemctl 명령어로 vsftpd를 시작/중지/상태확인한다.
# systemctl status vsftpd.service
# systemctl start vsftpd.service
# systemctl stop vsftpd.service
# systemctl restart vsftpd.service

 

 

//vsftpd 자동실행
# systemctl enable vsftpd.service

 


//firewall 을 사용중이면 아래와 같이 21포트를 열어준다.
# firewall-cmd --permanent --add-port=21/tcp
# firewall-cmd --reload

 

 

//iptables 를 사용중이면 아래와 같이 21포트를 열어준다.
# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
# :wq

 

 

//위의 작업이 선행되었다면
//vsftpd 특정 사용자 상위디렉터리 이동 제한 및 conf 파일 설정 - 에디터에서 수정해도 상관없다. 

# vi /etc/vsftpd/vsftpd.conf 

 

//익명 접속을 허용하지 않으면 NO 라고 입력한다.
anonymous_enable=NO  

 

//로컬계정 사용자들의 접속을 허용하지 않으면 NO 라고 한다.
local_enable=YES  

 

//ftp 전송명령어 중 write를 허용하지 않으면 NO 라고 한다.
write_enable=YES  

 

//umask 의 기본 값은 077이다. umask값이 077이면 새로 생성되는 파일의 퍼미션은 600이 되고, 새로 생성되는 디렉터리의 퍼미션은 700이 된다. 당연히 보안강화가 된다.
local_umask=022  

 

//ftp 접속한 사용자가 특정 디렉터리로 이동할때 개별 디렉터리의 메시지를 보여주도록 설정 한것이다. 밑에서 message_file 이라는 부분을 검색해서 해당 메시지를 넣게 되면 개발 디렉터리 안내 파일로 사용할 파일명을 지정할 수 있다.
dirmessage_enable=YES 

 

//ftp 접속 후 파일 업로드 및 다운로드에 대한 로그를 남긴다는 의미이다.
xferlog_enable=YES 

 

//ftp는 기본적으로 21번 포트와 20번 포트를 사용한다. ftp접속과 명령어에 사용되는 포트는 21번 이며, 실제 데이터전송에 사용되는 기본포트는 20번이다. 이때 20번 포트의 데이터전송 연결을 허용 할 것인가 아닌가를 설정하는 것으로 YES는 허용한다는 의미이다.
connect_from_port_20=YES 

 

//로그파일에 남길 로그파일의 포맷을 기본포맷으로 남긴다는 뜻이다. 리눅스에서 ftp 기본로그파일로 /var/log/xferlog 을 사용한다. 이 지시자는 이 파일의 표준포맷으로 로그를 남기도록 설정하는 것이다. 이 파일의 포맷보다는 vsftpd 로그포맷을 사용하는 것이 보다 자세한 로그를 남길 수 있다. 즉, 디렉터리 생성로그나 또는 로그인 같은 상세로그까지 기록해 준다.
xferlog_std_format=YES 

 

//특정 사용자들에 대해 자신의 홈 디렉터리를 루트 디렉터리로 인식하도록 하는 기능이다.
chroot_list_enable=YES
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list 

 

//chroot_list 파일이 없다면 새로 만들어 주어야 한다.

//chroot_local_user=YES는 특정 사용자가 아닌 전체 사용자를 대상으로 자기 자신 홈 디렉터리 상위 디렉터리로 이동하지 못하도록 하는 설정이다.
//chroot_list_enable=YES 로 설정하고 chroot_list_file=/etc/vsftpd/chroot_list 파일에 등록된 사용자들에 한해서 chroot 기능이 적용되어 자기 자신의 홈디렉터리 상위디렉터리 이동이 제한된다.
//이 파일에 등록할때는 한 행에 사용자 계정을 등록하면 된다. (chroot_local_user=YES 이 부분 주석처리 해야된다. )

 

//만약 vsftpd를 xinetd모드가 아닌 standalone으로 서비스 하려면 위의 listen 을 YES 로 설정하고 listen_port에 서비스 할 포트를 지정하면 된다. (기본포트 21번)
//chroot_local_user=YES 와 chroot_list_enable=YES 가 모두 YES 이면, /etc/vsftpd/chroot_list 파일에 등록된 사용자를 제외한 나머지 사용자들이 상위디렉터리 이동이 제한이 되는 것이다. 

 

listen=YES 

 

//PAM 설정파일명으로 사용할 파일명을 지정한다. 이 설정이 적용되면 기본이 vsfpd이므로 /etc/pam.d/vsftpd 파일이 사용된다.
pam_service_name=vsftpd 

 

userlist_enable=YES
tcp_wrappers=YES

 

 

출처 : https://nanoomi.org/bbs/board.php?bo_table=Server&wr_id=29

공감3
스폰서링크

댓글 2개

전체 337 |RSS
서버관리자 내용 검색

회원로그인

진행중 포인트경매

  1. 다래사랑) 레드키위 or 골드키위 3Kg 한박스

    참여8 회 시작18.11.13 11:45 종료18.11.18 11:45
  2. 컨텐츠판매용 게시판 스킨 90% 할인권

    참여1 회 시작18.11.12 18:13 종료18.11.13 18:13

(주)에스아이알소프트 (06253) 서울특별시 강남구 도곡로1길 14, 6층 624호 (역삼동, 삼일프라자) 대표메일:admin@sir.kr
사업자등록번호:217-81-36347 대표:홍석명 통신판매업신고번호:2014-서울강남-02098호 개인정보보호책임자:이총

© SIRSOFT