vsftpd 주요 설정 항목
아래는 vsftpd의 주요 설정 파일(vsftpd.conf)에 대한 상세한 설명입니다.
# 익명 사용자 로그인 허용 여부
allow_anonymous_access=YES
# 시스템 사용자 로그인 허용 여부
permit_local_users=YES
# 쓰기 권한 활성화
enable_write_operations=YES
# 업로드 파일의 umask 값
upload_file_mask=022
# 디렉토리별 메시지 기능 활성화
directory_message=YES
# 각 디렉토리에 .message 파일을 생성하면, 사용자가 해당 디렉토리에 접근할 때 메시지가 표시됩니다.
# 전송 로그 기록 활성화
transfer_logging=YES
# 데이터 전송에 포트 20 고정 사용
fixed_data_port_20=YES
# 데이터 전송 포트 변경 (위 설정이 활성화된 경우)
alternative_ftp_port=1025
# 표준 xferlog 형식의 로그 사용
standard_log_format=YES
# IPv4 수신 비활성화
ipv4_listen=NO
# IPv6 수신 활성화
ipv6_listen=YES
# PAM 인증 모듈 파일명
authentication_module_name=vsftpd
# 사용자 목록 파일 사용 여부
user_list_control=YES
# vsftpd는 두 개의 파일을 사용하여 사용자 접근을 제어합니다: fusers와 user_list
# fusers는 블랙리스트로, 설정에 영향을 받지 않습니다.
# user_list는 userlist_enable과 userlist_deny 설정에 따라 제어됩니다.
# userlist_enable이 user_list 파일을 사용할지 결정합니다.
# userlist_deny는 목록을 블랙리스트로 사용할지 화이트리스트로 사용할지 결정합니다.
# userlist_deny = YES: user_list는 블랙리스트
# userlist_deny = NO: user_list는 화이트리스트
# tcp_wrappers 제어 활성화
tcp_wrappers_control=YES
# /etc/hosts.allow 및 /etc/hosts.deny 파일에서 접근 제어 규칙을 확인합니다.
기타 일반적으로 사용되는 설정 매개변수
# 패시브 모드 설정
pasv_mode_enable
pasv_port_range_min
pasv_port_range_max
# SSL 연결 설정
ssl_connection_enable
rsa_certificate_path
# 이 옵션은 인증서와 개인 키를 동일한 파일에 저장해야 합니다.
encryption_cipher_suite
# 사용할 암호화 유형 지정 (man ciphers 명령으로 상세 정보 확인)
secure_data_transfer
secure_login_process
tls_protocol_support
# 각각 TLS, SSLv2, SSLv3 프로토콜 지원 여부 설정
# 게스트 계정 설정
guest_account_enable
# 게스트 사용자 로그인 허용 (주로 가상 사용자에게 사용)
guest_mapped_user
# 게스트 사용자를 실제 시스템 사용자에 매핑
# 개별 사용자 설정 디렉토리
user_specific_config_path
SELinux 고려 사항
vsftpd의 기본 설정에서는 SELinux 불(Boolean) 값을 활성화할 필요가 없습니다. 다음과 같은 특별한 요구사항이 있는 경우에만 해당 값을 활성화해야 합니다:
- 익명 사용자 파일 업로드:
- ftpd_anon_write
- ftpd_full_access
- 서버가 액티브 모드를 사용하는 경우:
- ftpd_connect_all_unreserved