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
'Certification > 리눅스마스터' 카테고리의 다른 글
리눅스 DNS 서버 관리 (0) | 2022.10.20 |
---|---|
리눅스 메일 서버 관리 (0) | 2022.10.20 |
리눅스 파일 서버 관리 2 - NFS (0) | 2022.10.20 |
리눅스 파일 서버 관리 1 - SAMBA (0) | 2022.10.20 |
리눅스 인증 서버 관리 (NIS/LDAP) (0) | 2022.10.20 |