• 북마크
JINIYA

WEB

VSFTP 설치 및 설정하기

최고관리자
2018.11.27 05:46 6,465 0

본문

 

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

댓글목록 0

등록된 댓글이 없습니다.
전체 53 건 - 1 페이지
제목
지니야 20 2019.06.21
지니야 22 2019.06.21
지니야 144 2019.03.20
지니야 100 2019.03.19
지니야 129 2019.03.19
지니야 138 2019.03.10
최고관리자 255 2019.02.02
최고관리자 318 2019.02.02
최고관리자 163 2019.01.26
최고관리자 241 2019.01.24
최고관리자 182 2019.01.24
최고관리자 556 2019.01.24
최고관리자 275 2019.01.08
최고관리자 642 2019.01.02
최고관리자 175 2018.12.31
지니야 1,189 2018.12.24
최고관리자 271 2018.12.22
최고관리자 236 2018.12.04
최고관리자 269 2018.11.27
최고관리자 6,466 2018.11.27