본문 바로가기

Linux

vsftpd 설치설정

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

출처: https://www.fedoralinux.or.kr/forums/topic/12167

http://fedoralinux.or.kr/article/tipserver/130043873577404

vsftpd 설치 및 설정(마지막 수정:2011. 05. 18.)
소브    http://thirdnsov.tistory.com

*편의상 존댓말로 쓰지 않았습니다.
개인적인 공부를 하고 기록으로 남기는거니
 
약간 틀린부분도 있고 다른곳에 올라와있는 자료와 다를 수도 있습니다
.*
*
초반에 루트의 현재 위치가 ftp디렉토리로 되어 있는데 이건 신경쓰지 않으셔도 됩니다
.*
*
스샷은 Fedora 10 에서 찍은 것입니다.*

*중간중간 //불라불라// 이렇게 ‘//’ 이 사이에 있는 말은 개인적인 말입니다.*
---------------------------------------------------------------------------


루트 권한으로 그림과 같이 yum list vsftpd를 입력한다.
(
패키지명을 알고 있다면 굳이 이 작업을 안해도 된다
)
입력하고 나면 위와 같이 패키지명이 검색된다
.
(
패키지명과 버전을 다를 수도 있다
)
패키지명도 알았으니 마지막줄과 같이 입력해 설치를 한다
.

  

# yum install vsftpd.i386을 입력하고 나면 위와 같은 화면이 출력된다.
잠깐 기다리고 나면 마지막 줄과 같이 뜨는데 y를 입력하고 엔터를 치자
.



설치가 다 되었다
.


제대로 설치가 되었는지 rpm -qa | grep vsftp를 입력해 확인해보자.
필자는 제대로 설치가 되었다
.
---------------------------------------------------------------------------

이제 설치가 다 되었으니 환경설정을 해보자.

 


우선 cd 명령어를 이용해 /etc/vsftp로 이동하자.
그 후 vi 등 에디터를 사용해 vsftpd.conf를 실행한다
.
(cd 
명령어로 vsftp폴더로 이동하지 않고 바로 경로를 지정해 실행해도 된다
)

 

anonymous_enable=YES

이 옵션은 익명사용자가 접근을 할 수 있게 할 것인지를 묻는 옵션이다
YES
를 하면 익명사용자가 FTP에 접속할 수 있다
.


local_enable=YES

이 옵션은 로컬 계정 사용자의 ftp접근 권한을 묻는 옵션이다.
YES
를 하면 로컬 계정 사용자가 FTP에 접속할 수 있다.
 

write_enable=YES

이 옵션은 파일의 저장삭제 등과 같은 파일을 변경하는 FTP명령을 사용할 수 있도록 할 것인가를 묻는 옵션이다익명 서버에서는 보통 NO로 설정하고 실명서버인 경우는 각 사용자마다 자신의 디렉토리 같은 곳에 데이터를 업로드 할 수 있게 해주어야 하므로 보통 YES로 설정해준다.

local_umask=022

이 옵션은 파일이나 디렉토리가 생성될 때 파일 허가권(퍼미션)에 적용될 umask값을 지정해주는 옵션이다.
022
로 설정하게 되면 디렉토리가 생성될 때는 755구조의 퍼미션을파일이 생성될 때는 644구조의 퍼미션을 가지게 되는 것이다

anon_upload_enable=YES

이 옵션은 FTP에 익명사용자가 업로드가 허용된 디렉토리에서 파일을 업로드 할 수 있는가를 설정하는 옵션이다이 부분 앞의 주석을 제거하고 YES로 값을 변경하면 익명사용자의 업로드가 허용된다.
anon_mkdir_write_enable=YES

이 옵션은 익명사용자가 새로운 디렉토리를 생성할 수 있게 할 것인지를 묻는 옵션이다.
이 부분 앞의 주석을 제거하고 YES로 값을 변경하면 익명사용자가 새 디렉토리를 생성할 수 있게 된다
.


dirmessage_enable=YES 
이 옵션은 FTP사용자가 새로운 디렉토리로 이동하였을 때 그 디렉토리에 있는 메시지 파일을 사용자에게 보여줄 것인가를 설정하는 옵션이다. YES를 설정하면 FTP사용자가 디렉토리를 이동하면 메시지를 보여주게 된다.
(cf. 
위 옵션이 활성화 되있을 시에는 message_file옵션을 같이 사용하는 옵션으로 각 디렉토리별로 원하는 메시지를 담은 .message 라는 파일을 만들어놓고 vsftpd.conf message_file=.message라는 줄을 넣으면 된다
.)   
(//
잘은 모르겠지만 알FTP같은 소프트웨어 외에는 확인이 잘 안되는 듯하다.//)
xferlog_enable=YES 
이 옵션은 FTP의 파일 송수신 결과를 xferlog_file옵션으로 지정된 로그 파일에 저장할 것인가를 설정하는 옵션이다.  YES를 하면 지정된 로그 파일에 로그를 저장하게된다.
connect_from_port_20=YES 
이 옵션은 FTP의 데이터 전송 포트를 20번으로 사용할 것인가를 묻는 옵션이다이 옵션이 꺼져있으면 vsftp서버는 1024번 포트 이상의 임의의 포트를 데이터 포트로 사용하게 된다.
ftp_data_port=원하는포트넘버

이 옵션은 파일 전송 포트를 강제로 '원하는포트넘버'로 바꾸는 옵션이다.
chown_uploads=YES 
이 옵션은 익명으로 업로드된 파일에 대해 chown_username 옵션으로 명시된 사용자
의 소유권으로 변경되도록 할 것인가를 설정하는 옵션이다기본값은 NO
(
이 옵션은 파일 보안 및 관리상에 도움이 될 수도 있을 것이다
)
chown_username = whoever 
이 옵션은 chown_uploads 옵션과 같이 사용하는 옵션으로 위에서 말한 사용자
의 계정을 담고 있는 파일이다.
(//
옵션으로 생각하는데 참고하고 있는 책에서는 파일이라고 하내요 허헛.. 아시는분은 댓글이라도
...//)


xferlog_file=/var/log/vsftpd.log 
이 옵션은 FTP의 파일 송수신 로그를 저장하는 파일을 지정하는 옵션이다.
지정하지 않고 넘길 시에는 기본값인 /var/log/xferlog 에 기록된다

xferlog_std_format=YES 
이 옵션은 파일 송수신 로그를 표준 xferlog 포맷으로 저장되도록 할 것인가를 설정하는 옵션이다.
기본값은 NO이다
.
idle_session_timeout=600 
이 옵션은 FTP명령을 실행한 이후 설정해준 시간동안 다른 명령을 입력하지 않으면 접속 섹션이 끊어지게 하는 옵션이다기본값은 300초 이다.(시간단위는 초
data_connection_timeout=120 
이 옵션은 FTP 서버로 부터 데이터를 다운로드하거나 업로드 한 후에 다시 파일을 전송하지 않으면 끊어질 시간을 설정하는 옵션이다지정된 시간 동안에 데이터 전송이 없으면 클라이언트 접속이 끊어진다기본값은 300초 이다.


nopriv_user=ftpsecure 
이 옵션은 vsftp데몬을 루트 권한이 아닌 시스템에 존재하는 일반 유저의 비특권 권한으로 작동되도록 하고자 할 ㅤㄸㅒㅤ 설정하는 옵션이다기본값은 nobody(//자세하게는 모르겠내요.. 아시는분은 댓글남겨주세요 ~//)
async_abor_enable=YES  
이 옵션은 async ABOR 명령을 가능하도록 설정하는 옵션이다기본값은 NO. 보안상 그리 좋지 못한 옵션이긴 하지만 일부 FTP 클라이언트 프로그램에서 파일 전송을 취소하였을 때 취소 되지 않은 상태로 있는 경우가 생기곤 하는데 이 때 사용할 수도 있다.
(//
이 부분도 자세히는 모르겠군요그저 책보고 쓴거구요자세히 아시는분 댓글 달아주세요 ~ //)

ascii_upload_enable=YES 
이 옵션은 파일을 업로드 할 때 아스키모드로 업로드 하는 것을 허용 할 것인지 묻는 옵션이다보통은 보안상의 문제로 NO로 설정하거나 주석처리 한다.

ascii_download_enable=YES 
이 옵션은 파일을 다운로드 할 때 아스키 모드로 다운로드 하는 것을 허용할 것인지 묻는 옵션이다보통은 보안상의 문제로 NO로 설정하거나 주석처리 한다.

 


ftpd_banner=Welcome to blah FTP service
. 
이 
옵션 FTP사용자가 FTP에 접속하였을 때 안내메시지 등을 쓰는 옵션이다한글도 사용이 가능하다.

deny_email_enable=YES 
이 
옵션은 익명 계정(ftp 혹은 anonymous)이 로그인할 때 이메일 주소 형태로는 로그인을 할 수 없도록 설정할 수 있는데 이 때 사용하는 옵션이다. (이 부분을 적용하게 되면 banned_email_file 옵션으로 명시된 파일에 존재하는 anonymous@ 같은 형태의 주소로는 로그인이 불가능해진다.)

banned_email_file=/etc/vsftpd/banned_emails 
 
옵션은 익명 접속시 허용하지 않을 이메일 패스워드 형태를 담고 있는 파일을 명시하는 
위에 옵션과 함께 작동되며 banned_email 에 로그인을 허용하지 않을 이메일 주소 형태를 한줄씩 넣으면 차단이 된다.



chroot_list_enable=YES

이 옵션은 사용자가 로그인시 자신의 디렉토리에 대해 chroot를 갖도록 할 것인가를 묻는 옵션이다. YES로 설정값을 주면 chroot_list_file 옵션으로 명시되는 파일에 있는 사용자는 자신의 디렉토리 이외의 상위 디렉토리로는 접근이 불가능해진다.

chroot_list_file=/etc/vsftpd/chroot_list

이 옵션 chroot_list_enable 옵션과 같이 사용하는 옵션이다이 부분에 명시된 파일에 들어있는 사용자는 자신의 디렉토리 외에 상위 디렉토리로 접근이 불가능해진다.

ls_recurse_enable=YES

이 옵션 ls 명령어를 허용할 것인가를 묻는 옵션이다기본값은 NO. 이 옵션을 잘못 사용하면 많은 시스템 자원이 소모되기 때문에 크래커들에게 공격을 받을 위험이 있어 조심히 사용해야하는 옵션이다.

listen=YES

이 옵션 vsftp데몬을 standalone로 동작되도록할 때 설정하는 옵션이다기본값은 NO.주의할 점은 inetd 모드로 vsftp데몬을 돌릴 때는 이 옵션을 사용하면 안된다.

listen_ipv6=YES

이 옵션 FTP서버를 IPv6에서 운영할 때 설정해주는 옵션이다일반적으로 IPv6을 사용하지 않기에 IPv6을 사용하는 사람만 설정해주면 된다.

pam_service_name=vsftpd

이 옵션 PAM을 이용하여 사용자 인증을 하고자 할 때 인증 파일을 지정하는 옵션이다.

userlist_enable=YES

이 옵션은 userlist 옵션(유저접속제한기능)을 사용할 것인지 묻는 옵션이다. YES는 사용한다는 의미이다.

userlist_deny=YES/NO 

이 옵션은 userlist_enable 옵션과 같이 사용하는 것으로 을 YES로 하면 /etc/vsftpd/user_list 에 명시되어 있는 사용자의 접근을 허용하지 않는 다는 의미이고 NO로 하면 user_list 에 명시된 사용자만 접근이 가능하다.

userlist_file=/etc/vsftpd/user_list

이 옵션은 userlist 기능에서 사용할 사용자가 명시되어 있는 파일 위치를 설정해 줄 수 있는 옵션이다.

디폴트 경로는 위에 적혀있는 곳이다.

 

tcp_wrappers=YES

이 옵션 TCP 랩퍼에 의해서 vsftp접속을 제어하도록 할 것인가를 묻는 옵션이다.

/etc/hosts.allow /etc/hosts.deny 파일에서 접근 허용할 IP와 거부할 IP주소를 명시하여 접속을 제어할 수 있다.

------------------------------------------------------------------

그 외 다른 옵션들

session_support=YES 이 옵션은 wtmp에 로그를 남기기게 할 것인지 묻는 옵션이다.

YES로 하면 last 명령어로 FTP 접속 여부를 알 수 있다.

max_clients=100 이 옵션은 최대 접속자 수를 설정하는 옵션이다. 100 부분을 수정하면된다.

max_per_ip=3 이 옵션은 호스트당 최대 접속 수를 설정하는 옵션이다. 3 부분을 수정하면 된다. 0으로 설정하게 되면 무제한이 된다.

listen_port=21 이 옵션은 FTP Standalone 으로 운영할 때 포트를 변경하고자 할 때 설정하는 옵션이다기본값은 21.

dual_log_enable=YES

이 옵션은 /var/log/xferlog 파일과 /var/log/vsftpd.log 파일 모두에 FTP 파일 전송 기록이 저장되도록 하는 옵션이다기본값은 NO

-------------------------------------------------------------------

이제 대략적인 vsftpd의 환경설정이 끝났다.

환경설정이 끝났으니 ftp서버를 켜 보자.


위와 같이 써주면 vsftpd가 시작되는 것을 확인 할 수 있을 것이다.

vsftpd를 끄고 싶으면 아래 그림과 같이 해주면 된다.


이렇게 쳐주면 vsftpd가 꺼지게 된다.

혹 재 시작을 하고 싶다면 아래와 같이..


간단히 start stop의 부분을 restart로 바꿔주면 vsftpd가 재시작된다.

------------------------------------------------------------------

첫 문서화 작업이라 많이 부족해보이내요 ~

틀린 부분이나 조금 부족해서 보충해야 할 부분이 있다면 언제든지 말씀해주세요 ~


'Linux' 카테고리의 다른 글

페도라 ftp설정  (0) 2015.01.11
페도라 바탕화면아이콘 gnome-tweak-tool  (0) 2015.01.11
fedora APM 설치  (2) 2015.01.11
프로세스 관리하기 ( Ctrl+z 재개하기 )  (0) 2015.01.10
secure crt 배경색  (0) 2014.12.27