vsftpd는 우리가 파일전송을 위해 사용하는 프로토콜인 ftp의 리눅스 용 서버프로그램입니다.
풀네임은 very secure ftp Daemon입니다.
vsftpd는 IPv4/IPv6를 지원하고, tls와 ftps를 지원합니다.
또한, Ubuntu, CentOS, Fedora, NimbleX, Slackware, rhel 등의 여러가지 운영체제에서 사용이 가능합니다.
vsftpd를 사용하는데 있어서 중요한 것은 설정입니다.
vsftpd를 설치하게 되면, 설정 파일인 /etc/vsftpd/vsftpd.conf 가 생성됩니다.
vsftpd에 대한 모든 설정은 아래와 같습니다.
https://security.appspot.com/vsftpd.html#people
위의 사이트를 참고하였습니다.
============================================================================
BOOLEAN OPTIONS
allow_anon_ssl
ssl_enable 이 활성화 된 경우에만 적용됩니다 . YES로 설정하면 익명 사용자가 보안 SSL 연결을 사용할 수 있습니다.
기본값 : NO
anon_mkdir_write_enable
YES로 설정하면 익명 사용자는 특정 조건에서 새 디렉토리를 작성할 수 있습니다. 이것이 작동하려면 write_enable 옵션 이 활성화되어 있어야하며 익명 ftp 사용자는 상위 디렉토리에 대한 쓰기 권한이 있어야합니다.
기본값 : NO
anon_other_write_enable
YES로 설정하면 익명 사용자는 업로드 및 디렉토리 삭제 (예 : 삭제 및 이름 바꾸기) 이외의 쓰기 조작을 수행 할 수 있습니다. 이것은 일반적으로 권장되지 않지만 완전성을 위해 포함됩니다.
기본값 : NO
anon_upload_enable
YES로 설정하면 익명 사용자는 특정 조건에서 파일을 업로드 할 수 있습니다. 이렇게하려면 write_enable 옵션을 활성화해야하며 익명 ftp 사용자는 원하는 업로드 위치에 대한 쓰기 권한이 있어야합니다. 이 설정은 가상 사용자가 업로드하는 데에도 필요합니다. 기본적으로 가상 사용자는 익명 (즉, 최대 제한) 권한으로 처리됩니다.
기본값 : NO
anon_world_readable_only
사용 설정하면 익명 사용자는 세계적으로 읽을 수있는 파일 만 다운로드 할 수 있습니다. 이것은 ftp 사용자가 특히 업로드가있는 경우 파일을 소유 할 수 있음을 인식하고 있습니다.
기본값 : 예
anonymous_enable
익명 로그인 허용 여부를 제어합니다. 활성화하면 사용자 이름 ftp 와 anonymous 가 모두 익명 로그인으로 인식됩니다.
기본값 : 예
ascii_download_enable
활성화되면 다운로드시 ASCII 모드 데이터 전송이 적용됩니다.
기본값 : NO
ascii_upload_enable
활성화하면 업로드시 ASCII 모드 데이터 전송이 적용됩니다.
기본값 : NO
async_abor_enable
활성화되면 "async ABOR"라는 특수한 FTP 명령이 활성화됩니다. 악의적 인 FTP 클라이언트 만이 기능을 사용합니다. 또한이 기능은 다루기가 어려우므로 기본적으로 사용하지 않도록 설정되어 있습니다. 불행히도이 기능을 사용할 수없는 경우 전송을 취소 할 때 일부 FTP 클라이언트가 중단되므로 사용을 원할 수 있습니다.
기본값 : NO
background
활성화되고 vsftpd가 "듣기"모드에서 시작되면 vsftpd가 리스너 프로세스를 백그라운드로합니다. 즉, 제어는 즉시 vsftpd를 시작한 셸로 돌아갑니다.
기본값 : NO
check_shell
이 옵션은 vsftpd의 비 PAM 빌드에만 영향을줍니다. 비활성화하면 vsftpd는 / etc / shells에서 로컬 로그인에 유효한 사용자 쉘을 검사하지 않습니다.
기본값 : 예
chmod_enable
활성화되면 SITE CHMOD 명령을 사용할 수 있습니다. 노트! 이것은 로컬 사용자에게만 적용됩니다. 익명 사용자는 SITE CHMOD를 사용할 수 없습니다.
기본값 : 예
chown_uploads
활성화하면 익명으로 업로드 된 모든 파일의 소유권이 chown_username 설정에 지정된 사용자로 변경됩니다 . 이것은 관리 및 보안 관점에서 유용합니다.
기본값 : NO
chroot_list_enable
활성화 된 경우 로그인시 홈 디렉토리의 chroot () jail에있는 로컬 사용자 목록을 제공 할 수 있습니다. chroot_local_user가 YES로 설정되면 의미가 약간 다릅니다. 이 경우, 목록은 chroot () 감옥에 배치되지 않아야하는 사용자 목록이됩니다. 기본적으로이 목록을 포함하는 파일은 /etc/vsftpd.chroot_list이지만 chroot_list_file 설정으로 이를 무시할 수 있습니다 .
기본값 : NO
chroot_local_user
YES로 설정하면 로컬 사용자는 기본적으로 로그인 후 홈 디렉토리의 chroot () jail에 배치됩니다. 경고 : 이 옵션은 특히 사용자에게 업로드 권한 또는 셸 액세스 권한이있는 경우 보안에 영향을 미칩니다. 수행중인 작업을 알고있는 경우에만 활성화하십시오. 이러한 보안 관련 사항은 vsftpd에 국한되지 않습니다. chroot () jails에 로컬 사용자를 제공하는 모든 FTP 데몬에 적용됩니다.
기본값 : NO
connect_from_port_20
이는 포트 스타일 데이터 연결이 서버 시스템에서 포트 20 (ftp-data)을 사용할지 여부를 제어합니다. 보안상의 이유로 일부 고객은 이것이 사실이라고 주장 할 수 있습니다. 반대로이 옵션을 비활성화하면 vsftpd를 약간 적은 권한으로 실행할 수 있습니다.
기본값 : NO (그러나 샘플 구성 파일에서 활성화)
debug_ssl
true 인 경우 OpenSSL 연결 진단이 vsftpd 로그 파일에 덤프됩니다. (v2.0.6에서 추가됨).
기본값 : NO
delete_failed_uploads
true이면 실패한 업로드 파일이 삭제됩니다. (v2.0.7에서 추가됨).
기본값 : NO
deny_email_enable
활성화되면 익명의 암호 전자 우편 응답 목록을 제공하여 로그인이 거부 될 수 있습니다. 기본적으로이 목록을 포함하는 파일은 /etc/vsftpd.banned_emails이지만 banned_email_file 설정으로 이를 무시할 수 있습니다 .
기본값 : NO
dirlist_enable
NO로 설정하면 모든 디렉토리 목록 명령에 권한이 거부됩니다.
기본값 : 예
dirmessage_enable
활성화 된 경우 FTP 서버 사용자는 처음 새 디렉토리를 입력 할 때 메시지를 표시 할 수 있습니다. 기본적으로 디렉토리는 .message 파일을 스캔하지만 구성 설정 message_file 로 대체 될 수 있습니다 .
기본값 : NO (그러나 샘플 구성 파일에서 활성화)
다운로드 가능
NO로 설정하면 모든 다운로드 요청에 권한이 거부됩니다.
기본값 : 예
force_local_logins_ssl
ssl_enable 이 활성화 된 경우에만 적용 됩니다. 활성화되면 모든 비 익명 로그인은 비밀번호를 보내기 위해 보안 SSL 연결을 사용해야합니다.
기본값 : 예
guest_enable
활성화하면 익명이 아닌 모든 로그인이 "게스트"로그인으로 분류됩니다. 손님 로그인은 guest_username 설정에 지정된 사용자에게 다시 매핑됩니다 .
기본값 : NO
hide_ids
활성화하면 디렉토리 목록의 모든 사용자 및 그룹 정보가 "ftp"로 표시됩니다.
기본값 : NO
implicit_ssl
활성화하면 SSL 핸드 셰이크가 모든 연결 (FTPS 프로토콜)에서 가장 먼저 예상됩니다. 명시 적 SSL 및 / 또는 일반 텍스트도 지원하려면 별도의 vsftpd 리스너 프로세스를 실행해야합니다.
기본값 : NO
들리다
활성화하면 vsftpd가 독립형 모드로 실행됩니다. 이것은 vsftpd가 어떤 종류의 inetd에서 실행되어서는 안됨을 의미합니다. 대신 vsftpd 실행 파일이 한 번만 실행됩니다. 그러면 vsftpd 자체가 수신 연결을 수신하고 처리합니다.
기본값 : 예
listen_ipv6
Listen 매개 변수와 마찬가지로 vsftpd는 IPv4 소켓 대신 IPv6 소켓에서 수신 대기합니다. 이 매개 변수와 청취 매개 변수는 상호 배타적입니다.
기본값 : NO
local_enable
로컬 로그인 허용 여부를 제어합니다. 활성화 된 경우 / etc / passwd (또는 PAM 구성 참조)의 일반 사용자 계정을 사용하여 로그인 할 수 있습니다. 가상 사용자를 포함하여 익명이 아닌 로그인이 작동하려면 활성화해야합니다.
기본값 : NO
lock_upload_files
활성화하면 모든 업로드가 업로드 파일에서 쓰기 잠금으로 진행됩니다. 모든 다운로드는 다운로드 파일에서 공유 읽기 잠금으로 진행됩니다. 경고! 이를 활성화하기 전에 악의적 인 독자가 파일을 추가하려는 작성자에게 굶주림을 줄 수 있습니다.
기본값 : 예
log_ftp_protocol
사용 가능한 경우 모든 FTP 요청 및 응답이 기록되어 옵션 xferlog_std_format이 사용되지 않습니다. 디버깅에 유용합니다.
기본값 : NO
ls_recurse_enable
활성화되면이 설정을 통해 "ls -R"을 사용할 수 있습니다. 대규모 사이트의 최상위 수준에서 ls -R이 많은 리소스를 소비 할 수 있기 때문에 보안 위험이 매우 적습니다.
기본값 : NO
mdtm_write
활성화되면이 설정을 통해 MDTM이 파일 수정 시간을 설정할 수 있습니다 (일반적인 액세스 확인에 따름).
기본값 : 예
no_anon_password
활성화하면 vsftpd가 익명 암호를 요구하지 않습니다. 익명 사용자가 바로 로그인합니다.
기본값 : NO
no_log_lock
활성화하면 로그 파일에 쓸 때 vsftpd가 파일 잠금을 수행하지 않습니다. 이 옵션은 일반적으로 사용하지 않아야합니다. 로그 파일을 잠그려고 시도하는 경우가 종종있는 Solaris / Veritas 파일 시스템 조합과 같은 해결 방법 운영 체제 버그가 있습니다.
기본값 : NO
one_process_model
Linux 2.4 커널이있는 경우 연결 당 하나의 프로세스 만 사용하는 다른 보안 모델을 사용할 수 있습니다. 덜 순수한 보안 모델이지만 성능이 향상됩니다. 자신이하고있는 일을 알지 않는 한 실제로는이 기능을 사용하고 싶지 않으며 사이트에서 동시에 연결된 수많은 사용자를 지원합니다.
기본값 : NO
passwd_chroot_enable
활성화 된 경우 chroot_local_user 와 함께 chroot () jail location은 사용자별로 지정할 수 있습니다. 각 사용자의 감옥은 / etc / passwd의 홈 디렉토리 문자열에서 파생됩니다. 홈 디렉토리 문자열에서 /./가 발생하면 감옥이 경로의 특정 위치에 있음을 나타냅니다.
기본값 : NO
pasv_addr_resolve
pasv_address 옵션 에서 호스트 이름 (IP 주소가 아닌)을 사용하려면 YES로 설정하십시오 .
기본값 : NO
pasv_enable
데이터 연결을 얻는 PASV 방법을 허용하지 않으려면 NO로 설정하십시오.
기본값 : 예
pasv_promiscuous
데이터 연결이 제어 연결과 동일한 IP 주소에서 시작되도록하는 PASV 보안 검사를 사용하지 않으려면 YES로 설정하십시오. 수행중인 작업을 알고있는 경우에만 활성화하십시오! 이를위한 유일한 합법적 인 사용은 안전한 터널링 방식의 형태이거나 FXP 지원을 촉진하는 것입니다.
기본값 : NO
port_enable
데이터 연결을 얻는 PORT 방법을 허용하지 않으려면 NO로 설정하십시오.
기본값 : 예
port_promiscuous
발신 데이터 연결이 클라이언트에만 연결될 수 있도록 PORT 보안 검사를 사용하지 않으려면 YES로 설정하십시오. 수행중인 작업을 알고있는 경우에만 활성화하십시오!
기본값 : NO
ssl_request_cert
활성화 된 경우 vsftpd는 들어오는 SSL 연결 에 대한 인증서 를 요청하지만 반드시 필요한 것은 아닙니다 ( require_cert 참조 ) . 일반적으로 이는 전혀 문제를 일으키지 않지만 IBM zOS에는 문제가있는 것 같습니다. (v2.0.7의 새로운 기능).
기본값 : 예
ssl_sslv2
ssl_enable 이 활성화 된 경우에만 적용 됩니다. 사용 가능한 경우이 옵션은 SSL v2 프로토콜 연결을 허용합니다. TLS v1 연결이 선호됩니다.
기본값 : NO
ssl_sslv3
ssl_enable 이 활성화 된 경우에만 적용 됩니다. 사용 가능한 경우이 옵션은 SSL v3 프로토콜 연결을 허용합니다. TLS v1 연결이 선호됩니다.
기본값 : NO
ssl_tlsv1
ssl_enable 이 활성화 된 경우에만 적용 됩니다. 사용 가능한 경우이 옵션은 TLS v1 프로토콜 연결을 허용합니다. TLS v1 연결이 선호됩니다.
기본값 : 예
strict_ssl_read_eof
사용 가능한 경우 SSL 데이터 업로드는 소켓의 EOF가 아닌 SSL을 통해 종료해야합니다. 이 옵션은 공격자가 가짜 TCP FIN으로 업로드를 조기에 종료하지 않았는지 확인하는 데 필요합니다. 안타깝게도 기본적으로 사용하도록 설정되어 있지 않은 클라이언트가 거의 없으므로 (v2.0.7의 새로운 기능).
기본값 : NO
strict_ssl_write_shutdown
활성화 된 경우 소켓의 EOF가 아닌 SSL을 통해 종료하려면 SSL 데이터 다운로드가 필요합니다. 이 작업을 수행하는 단일 FTP 클라이언트를 찾을 수 없으므로 기본적으로 해제되어 있습니다. 사소합니다. 영향을받는 것은 클라이언트가 파일을 완전히 수신했는지 확인하는 능력입니다. 이 옵션이 없어도 클라이언트는 다운로드 무결성을 확인할 수 있습니다. (v2.0.7의 새로운 기능).
기본값 : NO
syslog_enable
활성화 된 경우 /var/log/vsftpd.log 로 이동 한 로그 출력은 시스템 로그로 이동합니다. FTPD 기능에서 로깅이 수행됩니다.
기본값 : NO
tcp_wrappers
활성화되고 vsftpd가 tcp_wrappers 지원으로 컴파일 된 경우 들어오는 연결은 tcp_wrappers 액세스 제어를 통해 제공됩니다. 또한 IP 기반 구성을위한 메커니즘이 있습니다. tcp_wrappers가 VSFTPD_LOAD_CONF 환경 변수를 설정하면 vsftpd 세션이이 변수에 지정된 vsftpd 구성 파일을 시도하여로드합니다.
기본값 : NO
text_userdb_names
기본적으로 숫자 ID는 디렉토리 목록의 사용자 및 그룹 필드에 표시됩니다. 이 매개 변수를 사용하면 텍스트 이름을 얻을 수 있습니다. 성능상의 이유로 기본적으로 해제되어 있습니다.
기본값 : NO
tilde_user_enable
활성화 된 경우 vsftpd는 ~ chris / pics와 같은 경로 이름 (예 : 물결표 뒤에 사용자 이름)을 시도합니다. vsftpd는 항상 경로 이름 ~ 및 ~ / something을 확인합니다 (이 경우 ~는 초기 로그인 디렉토리로 확인 됨). ~ user 경로는 / etc / passwd 파일 이 _current_ chroot () jail에서 찾을 수있는 경우에만 해결됩니다 .
기본값 : NO
use_localtime
활성화되면 vsftpd는 현지 시간대의 시간과 함께 디렉토리 목록을 표시합니다. 기본값은 GMT를 표시하는 것입니다. MDTM FTP 명령이 리턴 한 시간도이 옵션의 영향을받습니다.
기본값 : NO
use_sendfile
플랫폼에서 sendfile () 시스템 호출 사용의 상대적 이점을 테스트하는 데 사용되는 내부 설정입니다.
기본값 : 예
userlist_deny
이 옵션은 userlist_enable 이 활성화되어 있는지 검사합니다 . 이 설정을 NO로 설정하면 userlist_file에 지정된 파일에 명시 적으로 나열되어 있지 않으면 로그인이 거부됩니다 . 로그인이 거부되면 사용자에게 비밀번호를 요청하기 전에 거부가 발행됩니다.
기본값 : 예
userlist_enable
활성화 된 경우 vsftpd는 userlist_file 에서 제공 한 파일 이름에서 사용자 이름 목록을로드합니다 . 사용자가이 파일의 이름을 사용하여 로그인을 시도하면 비밀번호를 요청하기 전에 거부됩니다. 일반 텍스트 암호가 전송되는 것을 방지하는 데 유용 할 수 있습니다. userlist_deny 도 참조하십시오 .
기본값 : NO
validate_cert
yes로 설정되면 수신 된 모든 SSL 클라이언트 인증서의 유효성을 확인해야합니다. 자체 서명 인증서는 확인 유효성 검사를 구성하지 않습니다. (v2.0.6의 새로운 기능)
기본값 : NO
virtual_use_local_privs
사용 가능한 경우 가상 사용자는 로컬 사용자와 동일한 권한을 사용합니다. 기본적으로 가상 사용자는 익명 사용자와 동일한 권한을 사용하며, 특히 쓰기 액세스 측면에서 더 제한적인 경향이 있습니다.
기본값 : NO
write_enable
파일 시스템을 변경하는 FTP 명령의 허용 여부를 제어합니다. 이러한 명령은 STOR, DELE, RNFR, RNTO, MKD, RMD, APPE 및 SITE입니다.
기본값 : NO
xferlog_enable
사용하도록 설정하면 업로드 및 다운로드에 대한 세부 정보가 기록 된 로그 파일이 유지됩니다. 기본적으로이 파일은 /var/log/vsftpd.log에 배치되지만 구성 설정 vsftpd_log_file을 사용하여이 위치를 대체 할 수 있습니다 .
기본값 : NO (그러나 샘플 구성 파일에서 활성화)
xferlog_std_format
사용 가능한 경우 전송 로그 파일은 wu-ftpd에서 사용되는 표준 xferlog 형식으로 작성됩니다. 기존 전송 통계 생성기를 재사용 할 수 있으므로 유용합니다. 그러나 기본 형식은 더 읽기 쉽습니다. 이 스타일의 로그 파일의 기본 위치는 / var / log / xferlog이지만 xferlog_file 설정으로 변경할 수 있습니다 .
기본값 : NO
수많은 옵션
아래는 숫자 옵션 목록입니다. 숫자 옵션은 음수가 아닌 정수로 설정해야합니다. umask 옵션의 편의를 위해 8 진수가 지원됩니다. 8 진수를 지정하려면 숫자의 첫 번째 숫자로 0을 사용하십시오.
accept_timeout
리모트 클라이언트가 PASV 스타일 데이터 연결과의 연결을 설정하기위한 시간 초과.
기본값 : 60
anon_max_rate
익명 클라이언트에 허용되는 최대 데이터 전송률 (초당 바이트)입니다.
기본값 : 0 (무제한)
anon_umask
파일 작성을위한 umask가 익명 사용자에 대해 설정되는 값입니다. 노트! 8 진수 값을 지정하려면 "0"접두사를 기억하십시오. 그렇지 않으면 값이 10 진법의 정수로 취급됩니다!
기본값 : 077
chown_upload_mode
chown () ed 익명 업로드를 강제 실행하는 파일 모드입니다. (v2.0.6에서 추가됨).
기본값 : 0600
connect_timeout
원격 클라이언트가 PORT 스타일 데이터 연결에 응답하는 시간 초과 (초)입니다.
기본값 : 60
data_connection_timeout
제한 시간 (초)으로, 데이터 전송이 진행되지 않고 정지 될 수있는 최대 시간입니다. 시간 초과가 트리거되면 원격 클라이언트가 시작됩니다.
기본값 : 300
delay_failed_login
실패한 로그인을보고하기 전에 일시 정지하는 시간 (초)입니다.
기본값 : 1
delay_successful_login
성공적인 로그인을 허용하기 전에 일시 정지되는 시간 (초)입니다.
기본값 : 0
file_open_mode
업로드 된 파일이 작성되는 권한. 이 값 위에 Umask가 적용됩니다. 업로드 된 파일을 실행 가능하게하려면 0777로 변경하십시오.
기본 : 0666
ftp_data_port
이름이 나쁜 connect_from_port_20 이 활성화 되어있는 한 PORT 스타일 연결이 시작되는 포트입니다 .
기본값 : 20
idle_session_timeout
원격 클라이언트가 FTP 명령간에 사용할 수있는 최대 시간 인 초 단위의 시간 초과입니다. 시간 초과가 트리거되면 원격 클라이언트가 시작됩니다.
기본값 : 300
listen_port
vsftpd가 독립형 모드 인 경우 들어오는 FTP 연결을 수신 대기하는 포트입니다.
기본값 : 21
local_max_rate
로컬 인증 사용자에게 허용되는 최대 데이터 전송률 (초당 바이트)입니다.
기본값 : 0 (무제한)
local_umask
파일 작성을위한 umask가 로컬 사용자에 대해 설정되는 값입니다. 노트! 8 진수 값을 지정하려면 "0"접두사를 기억하십시오. 그렇지 않으면 값이 10 진법의 정수로 취급됩니다!
기본값 : 077
max_clients
vsftpd가 독립형 모드 인 경우 연결할 수있는 최대 클라이언트 수입니다. 연결하는 모든 추가 클라이언트에 오류 메시지가 표시됩니다.
기본값 : 0 (무제한)
max_login_fails
이 많은 로그인 실패 후 세션이 종료됩니다.
기본값 : 3
max_per_ip
vsftpd가 독립형 모드 인 경우 동일한 소스 인터넷 주소에서 연결될 수있는 최대 클라이언트 수입니다. 클라이언트가이 제한을 초과하면 오류 메시지가 표시됩니다.
기본값 : 0 (무제한)
pasv_max_port
PASV 스타일 데이터 연결에 할당 할 최대 포트입니다. 방화벽을 지원하기 위해 좁은 포트 범위를 지정하는 데 사용할 수 있습니다.
기본값 : 0 (모든 포트 사용)
pasv_min_port
PASV 스타일 데이터 연결에 할당 할 최소 포트입니다. 방화벽을 지원하기 위해 좁은 포트 범위를 지정하는 데 사용할 수 있습니다.
기본값 : 0 (모든 포트 사용)
trans_chunk_size
아마도 이것을 변경하고 싶지는 않지만 훨씬 부드러운 대역폭 제한을 위해 8192와 같이 설정하십시오.
기본값 : 0 (vsftpd에서 적절한 설정을 선택하도록 함)
STRING OPTIONS
anon_root
이 옵션은 vsftpd가 익명 로그인 후 변경을 시도 할 디렉토리를 나타냅니다. 실패는 자동으로 무시됩니다.
기본값 : (없음)
banned_email_file
이 옵션은 허용되지 않는 익명 전자 메일 암호 목록을 포함하는 파일 이름입니다. 옵션 deny_email_enable 이 사용 가능한 경우이 파일을 참조하십시오 .
기본값 : /etc/vsftpd.banned_emails
banner_file
이 옵션은 누군가 서버에 연결할 때 표시 할 텍스트가 포함 된 파일 이름입니다. 설정된 경우 ftpd_banner 옵션이 제공하는 배너 문자열을 대체합니다 .
기본값 : (없음)
ca_certs_file
이 옵션은 클라이언트 인증서의 유효성을 검증하기 위해 인증 기관 인증서를로드 할 파일의 이름입니다. 유감스럽게도 vsftpd가 제한된 파일 시스템 공간 (chroot)을 사용하기 때문에 기본 SSL CA 인증서 경로는 사용되지 않습니다. (v2.0.6에서 추가됨).
기본값 : (없음)
chown_username
익명으로 업로드 된 파일의 소유권이 부여 된 사용자의 이름입니다. 이 옵션은 다른 옵션 인 chown_uploads 가 설정된 경우에만 해당됩니다 .
기본값 : 루트
chroot_list_file
옵션은 홈 디렉토리의 chroot () jail에 배치 될 로컬 사용자 목록을 포함하는 파일 이름입니다. 이 옵션은 chroot_list_enable 옵션 이 활성화 된 경우에만 관련이 있습니다 . chroot_local_user 옵션 이 사용 가능한 경우 목록 파일은 chroot () jail에 배치하지 않을 사용자 목록이됩니다.
기본값 : /etc/vsftpd.chroot_list
cmds_allowed
이 옵션은 허용 된 FTP 명령의 쉼표로 구분 된 목록을 지정합니다 (로그인 후. USER, PASS 및 QUIT 및 기타는 항상 사전 로그인이 허용됨). 다른 명령은 거부됩니다. 이것은 FTP 서버를 실제로 잠그는 강력한 방법입니다. 예 : cmds_allowed = PASV, RETR, QUIT
기본값 : (없음)
cmds_denied
이 옵션은 쉼표로 구분 된 거부 된 FTP 명령 목록을 지정합니다 (로그인 후. USER, PASS, QUIT 및 기타는 항상 사전 로그인이 허용됨). 이 명령과 cmds_allowed 에 명령이 나타나면 거부가 우선합니다. (v2.1.0에서 추가됨).
기본값 : (없음)
거부 _ 파일
이 옵션은 어떤 식 으로든 액세스 할 수없는 파일 이름 (및 디렉토리 이름 등)의 패턴을 설정하는 데 사용할 수 있습니다. 영향을받는 항목은 숨겨져 있지 않지만 다운로드, 디렉토리로 변경, 디렉토리 내의 항목에 영향을주는 등의 작업은 거부됩니다. 이 옵션은 매우 간단하며 심각한 액세스 제어에 사용해서는 안됩니다. 파일 시스템의 사용 권한을 우선적으로 사용해야합니다. 그러나이 옵션은 특정 가상 사용자 설정에서 유용 할 수 있습니다. 특히 파일 이름에 다양한 이름으로 액세스 할 수있는 경우 (심볼릭 링크 또는 하드 링크로 인해) 모든 이름에 대한 액세스를 거부해야합니다. 이름에 hide_file로 지정된 문자열이 있거나 hide_file로 지정된 정규식과 일치하면 항목에 대한 액세스가 거부됩니다. vsftpd ' 정규 표현식 일치 코드는 완전한 정규 표현식 기능의 서브 세트 인 간단한 구현입니다. 이 때문에이 옵션의 적용을 신중하고 철저하게 테스트해야합니다. 또한 안정성이 높기 때문에 중요한 보안 정책에 파일 시스템 권한을 사용하는 것이 좋습니다. 지원되는 정규식 구문은 *,? 중첩되지 않은 {,} 연산자. 정규식 일치는 경로의 마지막 구성 요소에서만 지원됩니다 (예 : a / b /? 지원되지만 a /? / c는 지원되지 않습니다. 예 : deny_file = {*. mp3, *. mov, .private} 또한 안정성이 높기 때문에 중요한 보안 정책에 파일 시스템 권한을 사용하는 것이 좋습니다. 지원되는 정규식 구문은 *,? 중첩되지 않은 {,} 연산자. 정규식 일치는 경로의 마지막 구성 요소에서만 지원됩니다 (예 : a / b /? 지원되지만 a /? / c는 지원되지 않습니다. 예 : deny_file = {*. mp3, *. mov, .private} 또한 안정성이 높기 때문에 중요한 보안 정책에 파일 시스템 권한을 사용하는 것이 좋습니다. 지원되는 정규식 구문은 *,? 중첩되지 않은 {,} 연산자. 정규식 일치는 경로의 마지막 구성 요소에서만 지원됩니다 (예 : a / b /? 지원되지만 a /? / c는 지원되지 않습니다. 예 : deny_file = {*. mp3, *. mov, .private}
기본값 : (없음)
dsa_cert_file
이 옵션은 SSL 암호화 연결에 사용할 DSA 인증서의 위치를 지정합니다.
기본값 : (없음-RSA 인증서가 충분 함)
dsa_private_key_file
이 옵션은 SSL 암호화 연결에 사용할 DSA 개인 키의 위치를 지정합니다. 이 옵션을 설정하지 않으면 개인 키는 인증서와 동일한 파일에 있어야합니다.
기본값 : (없음)
email_password_file
이 옵션을 사용하면 secure_email_list_enable 설정 에서 대체 파일을 제공 할 수 있습니다 .
기본값 : /etc/vsftpd.email_passwords
ftp_username
익명 FTP를 처리하는 데 사용하는 사용자 이름입니다. 이 사용자의 홈 디렉토리는 익명 FTP 영역의 루트입니다.
기본 : ftp
ftpd_banner
이 문자열 옵션을 사용하면 연결이 처음 시작될 때 vsftpd에 의해 표시되는 인사말 배너를 무시할 수 있습니다.
기본값 : (없음-기본 vsftpd 배너가 표시됨)
guest_username
게스트 로그인 구성에 대한 설명은 부울 설정 guest_enable 을 참조하십시오 . 이 설정은 게스트 사용자가 매핑되는 실제 사용자 이름입니다.
기본 : ftp
hide_file
이 옵션을 사용하면 디렉토리 목록에서 숨겨져 야하는 파일 이름 (및 디렉토리 이름 등)의 패턴을 설정할 수 있습니다. 숨겨져 있음에도 불구하고 실제로 사용할 이름을 알고있는 클라이언트는 파일 / 디렉토리 등을 완전히 액세스 할 수 있습니다. 이름에 hide_file로 지정된 문자열이 있거나 hide_file로 지정된 정규식과 일치하면 항목이 숨겨집니다. vsftpd의 정규 표현식 일치 코드는 완전한 정규 표현식 기능의 하위 세트 인 간단한 구현입니다. 정확히 어떤 정규식 구문이 지원되는지에 대한 자세한 내용은 deny_file 을 참조하십시오 . 예 : hide_file = {*. mp3, .hidden, hide *, h?}
기본값 : (없음)
listen_address
vsftpd가 독립형 모드 인 경우이 설정으로 모든 로컬 인터페이스의 기본 청취 주소가 무시 될 수 있습니다. 숫자 IP 주소를 제공하십시오.
기본값 : (없음)
listen_address6
listen_address와 유사하지만 IPv6 리스너의 기본 청취 주소를 지정합니다 (listen_ipv6이 설정된 경우 사용됨). 형식은 표준 IPv6 주소 형식입니다.
기본값 : (없음)
local_root
이 옵션은 vsftpd가 로컬 (즉, 비 익명) 로그인 후에 변경을 시도 할 디렉토리를 나타냅니다. 실패는 자동으로 무시됩니다.
기본값 : (없음)
message_file
이 옵션은 새 디렉토리를 입력 할 때 찾을 파일의 이름입니다. 내용은 원격 사용자에게 표시됩니다. 이 옵션은 dirmessage_enable 옵션 이 활성화 된 경우에만 관련이 있습니다 .
기본값 : .message
nopriv_user
이것은 완전히 권한을 원하지 않을 때 vsftpd가 사용하는 사용자의 이름입니다. 이 사용자는 아무도 아닌 전용 사용자 여야합니다. 사용자는 대부분의 컴퓨터에서 많은 중요한 것들에 사용되는 경향이 없습니다.
기본 : nobody
listen_address
vsftpd가 독립형 모드 인 경우이 설정으로 모든 로컬 인터페이스의 기본 청취 주소가 무시 될 수 있습니다. 숫자 IP 주소를 제공하십시오.
기본값 : (없음)
listen_address6
listen_address와 유사하지만 IPv6 리스너의 기본 청취 주소를 지정합니다 (listen_ipv6이 설정된 경우 사용됨). 형식은 표준 IPv6 주소 형식입니다.
기본값 : (없음)
local_root
이 옵션은 vsftpd가 로컬 (즉, 비 익명) 로그인 후에 변경을 시도 할 디렉토리를 나타냅니다. 실패는 자동으로 무시됩니다.
기본값 : (없음)
message_file
이 옵션은 새 디렉토리를 입력 할 때 찾을 파일의 이름입니다. 내용은 원격 사용자에게 표시됩니다. 이 옵션은 dirmessage_enable 옵션 이 활성화 된 경우에만 관련이 있습니다 .
기본값 : .message
nopriv_user
이것은 완전히 권한을 원하지 않을 때 vsftpd가 사용하는 사용자의 이름입니다. 이 사용자는 아무도 아닌 전용 사용자 여야합니다. 사용자는 대부분의 컴퓨터에서 많은 중요한 것들에 사용되는 경향이 없습니다.
기본 : nobody
pam_service_name
이 문자열은 vsftpd가 사용할 PAM 서비스의 이름입니다.
기본 : ftp
pasv_address
PASV 명령에 대한 응답으로 vsftpd가 알리는 IP 주소를 무시하려면이 옵션을 사용하십시오. pasv_addr_resolve 가 활성화되어 있지 않으면 숫자 IP 주소를 제공하십시오. 이 경우 시작시 DNS가 해석 될 호스트 이름을 제공 할 수 있습니다.
기본값 : (없음-수신 된 연결 소켓에서 주소를 가져옴)
rsa_cert_file
이 옵션은 SSL 암호화 연결에 사용할 RSA 인증서의 위치를 지정합니다.
기본값 : /usr/share/ssl/certs/vsftpd.pem
rsa_private_key_file
이 옵션은 SSL 암호화 연결에 사용할 RSA 개인 키의 위치를 지정합니다. 이 옵션을 설정하지 않으면 개인 키는 인증서와 동일한 파일에 있어야합니다.
기본값 : (없음)
secure_chroot_dir
이 옵션은 비어있는 디렉토리의 이름이어야합니다. 또한 ftp 사용자가 디렉토리를 쓸 수 없어야합니다. 이 디렉토리는 때때로 보안 chroot () 감옥으로 사용됩니다. vsftpd에는 파일 시스템 액세스가 필요하지 않습니다.
기본값 : / usr / share / empty
ssl_ciphers
이 옵션을 사용하여 암호화 된 SSL 연결을 허용 할 SSL 암호화 vsftpd를 선택할 수 있습니다. 자세한 내용은 ciphers 매뉴얼 페이지를 참조하십시오. 암호를 제한하는 것은 악의적 인 원격 당사자가 문제를 발견 한 암호를 강요하는 것을 방지하므로 유용한 보안 예방책이 될 수 있습니다.
기본값 : DES-CBC3-SHA
rsa_private_key_file
이 옵션은 SSL 암호화 연결에 사용할 RSA 개인 키의 위치를 지정합니다. 이 옵션을 설정하지 않으면 개인 키는 인증서와 동일한 파일에 있어야합니다.
기본값 : (없음)
secure_chroot_dir
이 옵션은 비어있는 디렉토리의 이름이어야합니다. 또한 ftp 사용자가 디렉토리를 쓸 수 없어야합니다. 이 디렉토리는 때때로 보안 chroot () 감옥으로 사용됩니다. vsftpd에는 파일 시스템 액세스가 필요하지 않습니다.
기본값 : / usr / share / empty
ssl_ciphers
이 옵션을 사용하여 암호화 된 SSL 연결을 허용 할 SSL 암호화 vsftpd를 선택할 수 있습니다. 자세한 내용은 ciphers 매뉴얼 페이지를 참조하십시오. 암호를 제한하는 것은 악의적 인 원격 당사자가 문제를 발견 한 암호를 강요하는 것을 방지하므로 유용한 보안 예방책이 될 수 있습니다.
기본값 : DES-CBC3-SHA
user_config_dir
이 강력한 옵션을 사용하면 사용자별로 매뉴얼 페이지에 지정된 구성 옵션을 무시할 수 있습니다. 사용법은 간단하며 예제를 통해 가장 잘 설명됩니다. 를 설정하면 user_config_dir를 수 의 / etc / vsftpd_user_conf을 한 다음 사용자 "크리스"로 로그온 한 다음 vsftpd를 파일에 설정을 적용합니다 은 / etc / vsftpd_user_conf / 크리스 세션의 기간 동안. 이 파일의 형식은이 매뉴얼 페이지에 자세히 설명되어 있습니다! 모든 설정이 사용자별로 적용되는 것은 아닙니다. 예를 들어, 사용자 세션이 시작되기 전에 만 많은 설정이 있습니다. 사용자별로 동작에 영향을 미치지 않는 설정의 예로는 listen_address, banner_file, max_per_ip, max_clients, xferlog_file 등이 있습니다.
기본값 : (없음)
user_sub_token
이 옵션은 가상 사용자와 함께 사용하면 유용합니다. 템플릿을 기반으로 각 가상 사용자에 대한 홈 디렉토리를 자동으로 생성하는 데 사용됩니다. 예를 들어 guest_username을 통해 지정된 실제 사용자의 홈 디렉토리 가 / home / virtual / $ USER 이고 user_sub_token 이 $ USER 로 설정된 경우 가상 사용자 fred가 로그인하면 결국 (일반적으로 chroot () 'ed / home / virtual / fred 디렉토리에 있습니다. local_root에 user_sub_token이 포함 된 경우 에도이 옵션이 적용 됩니다.
기본값 : (없음)
userlist_file
이 옵션은 userlist_enable 옵션이 활성화 될 때로드 된 파일 이름입니다 .
기본값 : /etc/vsftpd.user_list
vsftpd_log_file
이 옵션은 vsftpd 스타일 로그 파일을 작성하는 파일의 이름입니다. 이 로그는 xferlog_enable 옵션 이 설정되고 xferlog_std_format 이 설정되지 않은 경우에만 기록됩니다 . 또는 dual_log_enable 옵션을 설정 한 경우 작성됩니다 . 한 가지 더 복잡한 문제 -syslog_enable 을 설정 한 경우이 파일이 작성되지 않고 대신 시스템 로그로 출력이 전송됩니다.
기본값 : /var/log/vsftpd.log
xferlog_file
이 옵션은 wu-ftpd 스타일 전송 로그를 작성하는 파일의 이름입니다. 전송 로그는 xferlog_std_format 과 함께 xferlog_enable 옵션 이 설정된 경우에만 작성됩니다 . 또는 dual_log_enable 옵션을 설정 한 경우 작성됩니다 .
기본값 : / var / log / xferlog
============================================================================
이상입니다.
감사합니다.
'운영체제 > 리눅스' 카테고리의 다른 글
[리눅스] heartbeat란 (0) | 2020.07.12 |
---|---|
[리눅스] backlog (0) | 2020.06.12 |
[리눅스] fuser 명령어 (0) | 2020.05.14 |
[리눅스] samba란 (0) | 2020.04.19 |
[리눅스] systemd? systemctl? (0) | 2020.01.16 |