320x100
320x100

FTP (File Transfer Protocol)
: TCP/IP 프로토콜을 기반으로 서버와 클라이언트 사이에 파일을 주고 받기 위한 프로토콜
: 익명의 계정을 통한 파일 다운로드도 가능

- 리눅스용 FTP 서버 프로그램
: vsftpd (간결하고 안전하면서 빠른 처리속도 지원. 리눅스 배포판에서 기본 지원)
: Wu-ftpd (현재는 개발 중단)
: Proftpd (유닉스 계열 및 Windows 지원)





vsftpd 관련 파일
- /etc/vsftpd/vsftpd.conf
- /etc/rc.d/init.d/vsftpd
- /etc/pam.d/vsftpd
- /etc/vsftpd/ftpusers
- /etc/vsftpd/user_list
- /etc/logrotate.d/vsftpd





/etc/vsftpd/vsftpd.conf
:vsftpd의 환경설정 파일

- 형식
op_tion=VALUE

- 항목별 설명
: anonymous_enable
 > 익명 계정 허가 유무. YES
: local_enable
 > 로컬 사용자 허가 유무. 주석 처리 혹은 NO 설정 시 익명 사용자만 사용 가능.
: write_enable
 > 쓰기 가능 여부. 주석 처리 혹은 NO 설정 시 파일이나 디렉터리 생성 불가.
: local_umask
 > 디렉터리나 파일 생성 시 umask 값. 022
: anon_upload_enable
 > 익명 사용자들에 대한 업로드 가능 여부. 기본으로 주석 처리되어 있음
: anon_mkdir_write_enable
 > 익명 사용자들에 대한 디렉터리 생성 가능 여부. 기본으로 주석 처리되어 있음
: dirmessage_enable
 > 접속 시 메시지 출력 여부. 사용자 홈디렉터리의 .message 파일에 적어놓은 메시지가 출력됨.
 > 익명 사용자에 대해서는 /var/ftp 디렉터리에 .message 파일 생성해서 설정 가능
: xferlog_enable
 > 파일 업로드 및 다운로드 관련 로그 기록 여부. YES. /var/log/vsftpd.log 파일에 기록됨
: connect_from_port_20
 > FTP의 데이터 포트인 20번 포트 사용 유무 지정. YES
: chown_uploads
 > 익명 사용자로 업로드한 파일의 소유권 변경 가능 여부. chown_username 항목과 같이 설정해야함.
: chown_username
 > 외부에서 익명 사용자로 업로드된 파일의 소유권이 이 항목에 지정한 사용자로 변경됨. chown_uploads 항목과 같이 설정해야함
: xferlog_file
 > 로그 파일명을 지정하는 옵션. 기본으로 주석처리. 해당 항목 수정 시 로그 로테이트 관련 파일 수정도 필요.
: xferlog_std_format
 > 로그 기록 시 표준 포맷 사용 여부. NO 설정 시 vsftpd에서 사용하는 로그 포맷으로 기록
: idle_session_timeout
 > 기본 타임아웃 시간. 초단위
: data_connection_timeout
 > 데이터 전송 관련 타임아웃 시간. 초단위
: ftpd_banner
 > 서버 접속 시 나타나는 메시지 지정. 주석처리 되어있는 경우 vsftpd 서버의 버전이 메시지로 출력됨
: chroot_local_user
 > 접속한 사용자의 홈 디렉터리를 최상위 디렉터리로 지정. 모든 사용자에게 적용
: chroot_list_enable
 > 지정한 사용자의 홈 디렉터리를 최상위 디렉터리로 지정. chroot_list_file 항목과 함께 사용
: chroot_list_file
 > 홈 디렉터리를 최상위 디렉터리로 지정할 사용자에 대해 적어놓은 파일의 경로 입력. 파일에는 한줄 씩 입력.
: ls_rescurse_enable
 > FTP 서버 접속 상태에서 ls -R 명령 사용 시 하위 디렉터리까지 검색 가능 여부 지정
: listen
 > IPv4 기반으로 standalone 모드로 사용할 경우 YES
: listen_ipv6
 > IPv6 기반으로 사용할 경우 YES
: pam_service_name
 > PAM 서비스의 이름 지정
: userlist_enable
 > 사용자가 직접 목록 파일을 작성하여 지정한 사용자들의 접근을 막을 수 있도록 하는 설정. userlist_file=<file name> 지정해야함
: tcp_wrappers
 > TCP wrappers를 이용한 접근 제어 사용 여부. /etc/hosts.allow 및 /etc/hosts.deny 파일 사용
: session_surpport
 > FTP 서버에 접속한 내역을 /var/log/wtmp 파일에 기록하는 여부
: max_clients
 > 최대 접속자 수
: max_per_ip
 > 한 IP 주소당 허용할 접속 수





vsftpd 서버 설정
1) vsftpd 서버 실행
- service vsftpd start

2) vsftpd 서버 실행 확인
- ps aux | grep vsftpd





vsftpd 서버 접속
1) ftp 접속
- ftp localhost
: localhost 대신 FTP 서버의 IP 주소 입력. 따로 지정한 포트가 있다면 포트번호까지 기재

 

 

 

 

 

Refference

 

리눅스마스터 1급 2차 실기 정복하기 | 정성재 - 교보문고

리눅스마스터 1급 2차 실기 정복하기 | 출제 경향을 반영하여 핵심 내용만 요약 정리 시험대비를 위한 최신 기출문제를 해설과 함께 수록본 교재는 독자들이 최근 출간 요구가 많았던 리눅스마

product.kyobobook.co.kr

 

300x250
728x90