Vsftpd.conf 能够用来控制vsftpd的多种行为,默认状况下,vsftpd在/etc/vsftpd.conf路径下查找这个文件。然而,你能够经过自定义 vsftpd的命令行参数来改变它。命令行的参数是vsftpd的配置文件的路径名。这种作法是颇有用的,由于你也许想要使用一个高级的网络守护进程,例如 xinetd ,在每个虚拟主机上使用不一样的配置文件来启动vsftpd服务。正则表达式
格式
vsftpd.conf的格式很是简单。每一行不是一个注释就是一个命令。注释行以#号开头而且是被忽略的。一个命令行有如下格式:
option=value (选项=值)
要知道,在option、=、value之间不容许有空白符(空格等),这一点很重要。
每个选项在编译时都有一个默认的设置,能够在配置文件中修改它。
布尔值选项
下面是一个布尔选项列表,每个布尔选项的值能够设置为 YES 或者 NO。
* 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用户在想要上传的路径下有写权限。这项设置也是虚拟用户得到上传权限所必需的;默认状况下,虚拟用户等同对待于匿名用户(i.e最大限度限制)的权限。
默认:NO
* anon_world_readable_only
若是启用(该选项),匿名用户将只被容许下载具备全局可读的文件。它能识别ftp用户是否文件的属主,尤为是在文件上传的情形。
默认:YES
* anonymous_enable
控制是否容许匿名用户登陆。若是容许,用户名ftp和anonymous被识别为匿名用户登陆。
默认:YES
* ascii_download_enable
若是启用,下载时将以ASCII模式进行数据传输。
默认:NO
* ascii_upload_enable
若是启用,上传时将以ASCII模式进行数据传输。
默认:NO
* async_abor_enable
若是启用,一个特殊的FTP命令“async ABOR”将被启用。只有那些比较差劲的FTP终端才会使用这项功能。另外,这项功能的实现有点棘手,因此默认是不启用的。不幸的是,一些FTP终端在取消(数据)传输时会被挂起,除非启用了该项功能,因此,你也许想要启用它。
默认:NO
* background
若是启用,vsftpd则以“监听”模式启动,vsftpd将在后台监听进程。i.e.控制将直接返回启动vsftpd的shell。
默认:NO
* check_shell
注意!该选项只对没有编译PAM模块的vsftpd有效。若是禁用(该选项),vsftpd将不会为本地的有效用户登陆时检查/etc/shells。
默认:YES
* chmod_enable
若是启用,则容许使用SITE CHMOD命令。注意,这只适用于本地用户,匿名用户永远不会拥有SITE CHMOD的使用权的。
默认:YES
* chown_enable
若是启用,全部的匿名用户上传文件的全部者将改变为定义在chown_username设置中的用户。从管理或者安全的角度来看,这是十分有用的。
默认:NO
* chroot_list_enable
若是激活(该选项),你应该提供一个在登陆时被chroot()限定在其主目录下的本地用户列表。若是chroot_local_user选项设置为YES,则(该选项)意思稍微不一样,在这种状况下,这个列表则变成了不受chroot()限制的用户列表。默认状况下,包含这个用户列表的文件是 /etc/vsftpd.chroot_list,可是你能够经过chroot_list_file选项来更改它。(ps:这里很差翻译,下面是英文原文:If activated, you may provide a list of local users who are placed in a chroot() jail(监牢、监狱) in their home directory upon login.The meaning is slightly different if chroot_local_user is set to YES. In this case, the list becomes a list of users which are NOT to be placed in a chroot() jail. By default, the file containing this list is /etc/vsftpd.chroot_list, but you may override this with the chroot_list_file setting.)
默认:NO
* chroot_local_user
若是设置为YES,本地用户将被chroot()限定在其主目录下(默认)。警告:这个选项牵连到安全性,尤为在用户拥有上传权限或者使用 shell权限的状况下。只有在你知道本身在作什么时才启用它。要知道这些安全相关性不是vsftpd所特有的,它们适用于全部提供chroot()限定本地用户机制的FTP守护进程。(英文原文:If set to YES, local users will be (by default) placed in a chroot() jail in their home directory after login. Warning:This option has security implications, especially if the users have upload permission, or shell access. Only enable if you know what you are doing. Note that these security implications are not vsftpd specific. They apply to all FTP daemons which offer to put local users in chroot() jails.)
默认:NO
* connect_from_port_20
该选项控制端口类型数据链接是否使用服务器上的20号端口(ftp-data)。为安全起见,一些客户端主张使用这种状况。相反地,禁用该选项使得vsftpd服务以更少的特权运行。
默认:NO(可是示例配置文件中启用它)
* debug_ssl
若是为真,openSSL链接的诊断信息转储到vsftpd的日志文件。(版本2.0.6中才添加的功能)
默认:NO
* deny_email_enable
若是激活(该选项),你应该提供一个匿名密码电子邮件列表来应答禁止登陆。默认状况下,包含这个列表的文件是/etc/vsftpd.banned_emails,可是你能够经过banned_email_file设置更改它。
默认:NO
* dirlist_enable
若是设置为NO,将禁用全部的显示目录内容的命令。
默认:YES
* dir_message_enable
若是启用,用户进入到一个新的目录时,FTP服务器将显示一段消息。默认状况下,(服务器)会搜索目录中的.message文件,可是你能够经过配置选项message_file来更改它。
默认:NO(可是示例配置文件中启用它)
* download_enable
若是设置为NO,全部的下载请求将会被拒绝。
默认:YES
* dual_log_enable
若是启用,将会并行生成两个日志文件,默认状况下日志将保存到/var/log/xferlog和/var/log/vsftpd.log。前者是wu-ftpd风格的传送日志,可以被标准的工具分析。后者是vsftpd风格日志。
默认:NO
* force_dot_files
若是激活,以 . 开头的文件和目录在列举目录内容时将会被显示,即便客户端程序没有使用“a”标志。这个将使得排除“.”和“..”的记录无效。
默认:NO
* force_anon_data_ssl
只适用于ssl_enable开启的状况。若是激活(该选项),在数据链接(非控制链接)时全部的匿名登陆用户将被强制使用安全SSL链接以发送和接收数据。
默认:NO
* force_anon_logins_ssl
只适用于ssl_enable的状况。若是激活,全部的匿名登陆将被强制使用安全SSL链接来发送密码。
默认:NO
* force_local_data_ssl
只适用于ssl_enable开启的状况。若是激活,在数据链接时全部的非匿名登陆将被强制使用安全SSL链接来发送和接收数据。
默认:YES
* force_local_logins_ssl
只适用于ssl_enable的状况。若是激活,全部非匿名登陆将被强制使用安全SSL链接来发送密码。
默认:YES
* guest_enable
若是启用,全部的非匿名登陆将归类为“guest”登陆。一个guest登陆被从新映射为guest_username设置所指定的用户。
默认:NO
* hide_ids
若是启用,则全部的用户和用户组信息在列举目录文件内容时将显示为“ftp”
默认:NO
* listen
若是启用,vsftpd将以独立模式运行。这意味着vsftpd不能在某些网络守护进程(譬如xinetd)下运行,做为替代,可执行的vsftpd只运行一次,而后监听和处理到达的链接。
默认:NO
* listen_ipv6
就像监听参数同样,除了vsftpd监听在IPv6套接字上替代IPv4外,这个参数和监听参数是相互排斥的。
默认:NO
* local_enable
控制是否容许本地登陆。若是启用,/etc/passwd(或者与PAM相关)中的普通用户将用来登陆,这必须启用全部的非匿名登陆,包括虚拟用户。
默认:NO
* lock_upload_file
若是启用,全部的上传进程在上传文件上附加一个写锁。全部的下载进程在下载文件中附加一个共享读琐。警告!在启用这个以前,要意识到不怀好意的读进程会饿死一个由于没有资格追加一个文件的写进程。
默认:YES
* log_ftp_protocol
若是启用,全部的FTP请求和应答都被记录。提供的xferlog_std_format选项将不能使用。(该选项)对调试有用。
默认:NO
* ls_recurse_enable
若是启用,该设置将容许使用“ls -R”,这是一个次要的安全风险,由于在一个大型站点的顶级目录使用ls -R将消耗大量的系统资源。
默认:NO
* mdtm_write
若是启用,该设置将容许 MDTM 设置文件的更改时间(一般访问检测的主体)
默认:YES
* no_anon_password
若是启用,它将禁止vsftpd询问匿名用户的密码。——匿名用户将能够直接登陆。
默认:NO
* no_log_lock
若是启用,它将禁止vsftpd在写日志文件时附加文件锁。该选项一般不启用。这在一些操做系统上存在bugs,例如在Solaris/Veritas混合文件系统中,锁日志文件时中已经注意到了一些悬而未决的问题。
默认:NO
* one_proccess_model
若是使用Linux 2.4 的内核,每个链接使用单一进程则可使用一个不一样的安全模式。它不是一个纯粹安全的模式,不过它能够提升性能。通常你不会真正想启用它,除非你知道本身在作什么,并且你的站点支持同时链接巨大数量的用户。
默认:NO
* passwd_chroot_enable
这里很差翻译,直接帖原文吧。原文:If enabled, along with chroot_local_user , then a chroot() jail(监牢、监狱) location may be specified on a per-user basis. Each user’s jail is derived(起源于、取得) from their home directory string in /etc/passwd. The occurrence(事件、出现) of /./ in the home directory string denotes(指示、表示) that the jail is at that particular location in the path.
默认:NO
* pasv_addr_resolve
若是你想在pasv_address选项上使用hostname(于IP地址相对),那么把它设置为YES
默认:NO
* pasv_enable
若是你想禁止以被动模式获取数据链接,那么把它设置为NO
(所谓的PASV(Passive mode transfer,被动传输模式),是指先利用链接端口21创建FTP的控制信道,再由客户端提出数据传输的请求,其中包含数据传输时使用的链接端口号。这是与传统的FTP(PORT FTP)最大的不一样,由于传统的FTP是由服务器来定义数据传输时使用的链接端口号。若是启用该选项,则会启用PASV的功能)
默认:YES
* pasv_promiscuous
设置为YES,若是你想禁用PASV(被动传输模式)安全检查。此项检查可用来肯定数据链接是否由控制链接的相同IP地址发出的。只在你清楚本身在作什么时才启用它!惟一合理的用途是在一些安全隧道模式的情形,或者是为了支此传真设备。
默认:NO
* port_enable
设置为NO,若是你想禁止使用PORT(端口)的方法来创建数据链接。
默认:YES
* port_promiscuous
设置为YES,若是你想禁用PORT(端口)安全检查。此项检查可用来肯定传送的数据仅能链接到客户端,只在你清楚本身在作什么时才启用它!
默认:NO
* require_cert
若是设置为YES,全部的SSL(Security Socket Layer 安全套接字协议层)客户端链接都须要提供一个客户端签证。根据该签证被批准的程度由validate_cert控制。
默认:NO
* run_as_launching_user
设置为YES,若是你想以启动vsftpd的用户身份来运行vsftpd。这在root不能使用的地方十分有用。MAS-SIVE WARNING! Do NOT enable this option unless you totally know what you are doing, as naive use of this option can create mas-sive security problems.特别的,vsftpd不是/,当启用该选项时,将不能使用chroot技术来限制文件的读取权限,即便是以root身份启动 vsftpd。(原文:Specifically, vsftpd does not / cannot use chroot technology to restrict file access when this option is set (even if launched by root).)一个不是很好的替代是使用一个deny_file文件,并设置为{/*,*..*},但这个的可靠性比不上chroot,因此不该该依赖这个。若是启用该选项,许多限制也将会应用在其余选项上。例如,一些须要必定特权的选项比方说非匿名登陆、文件上传、文件全部权的更改、从20号端口链接以及监听端口小于1024等将不能像预期同样的工做(are not expected to work)。其余选项也将会受到影响。
默认:NO
* secure_email_list_enable
设置为YES,若是你只但愿特定的e-mail passwords(以e-mail做为密码)列表的匿名登陆才被接受。这在做为一种比较不很麻烦的不须要使用虚拟用户来限制访问低安全性的内容十分有用。若是启用,匿名登陆将被阻止,除非提供的密码列举在由email_password_file设置指定的文件中。该文件的格式是每个密码一行,没有额外的空白符。默认的文件名/etc/vsftpd.email_passwords。
默认:NO
* session_support
该选项控制vsftpd是否保持登陆会话。若是vsftpd保持会话,它将尝试更新utmp和wtmp,若是使用PAM验证模块,也将开启一个 pam_session,并且仅当登出时才关闭。你也许但愿禁用该选项,若是你不须要会话记录,或者你但愿vsftpd以更少的线程来运行以及/或者更少的权限。注意——utmp和wtmp仅当启用內建的PAM模块时才被支持。
默认:NO
* setproctitle_enable
若是启用该选项,vsftpd将尝试在系统的进程列表中显示会话的状态信息。换言之,进程的汇报名称将反映vsftpd会话的状态(空闲、正在下载等)。出于安全的目的,你也许但愿保持关闭该选项。
默认:NO
* ssl_enable
若是启用该选项,vsftpd将编译带有OpenSSL的依赖,vsftpd将经过SSL支持安全链接。这适用于控制链接(包括登陆)和数据链接。你还将须要客户端支持SSL。注意!仅当你有这个须要才启用它。vsftpd并不能保证OpenSSL库的安全性。若是启用该选项,意味者你相信你所安装的OpenSSL库的安全性。
默认:NO
* ssl_sslv2
仅适用于ssl_enable开启的状况,若是启用,该选项将容许SSL(Secure Sockets Layer) v2(版本2)协议的链接。TLS(Transport Layer Security) v1链接首选。
默认:NO
* ssl_sslv3
仅适用于ssl_enable开启的状况,若是启用,该选项将容许SSL v3协议的链接。TLS v1链接首选。
默认:NO
* ssl_tlsv1
仅适用于ssl_enable开启的状况,若是启用,该选项将容许TLS v1协议的链接。TLS v1链接首选。
默认:YES
* syslog_enable
若是启用,则全部本来输出到/var/log/vsftpd.log日志输出将转移到系统日志,日志的记录由FTPD设备完成。
默认:NO
* tcp_wrappers
若是启用,并且vsftpd编译了tcp_wrappers支持模块,接入的链接将被送往tcp_wrappers访问控制。并且,还有一个基于每个IP的配置机制。若是tcp_wrappers设置了VSFTPD,接入的链接将被送往tcp_wrappers访问控制。并且,还有一个基于每个 IP的配置机制(能够利用/etc/hosts.allow与/etc/hosts.deny文件来定义可链接或拒绝的来源地址——这就是 tcp_wrappers?)。若是tcp_wrappers设置了VSFTPD_LOAD_CONF环境变量,那么vsftpd会话将尝试加载由这个变量指定的vsftpd的配置文件。
默认:NO
* text_userdb_names
默认状况,在列出(使用ls -al之类的命令)目录中的文件时,用户和组域显示数字形式的ID。若是启用该参数,你将得到文本形式的名字(ID)。处于性能的考虑,默认状况下是关闭的。
默认:NO
* tilde_user_enable
(tilde意思为:波浪字符)若是启用该选项,vsftpd将尝试解析诸如~chris/pics的路径名。i.e.跟随在波浪字符以后的用户名。Note that vsftpd将会一直解析~和~/something的路径名(这种状况,~被解析为初始登陆的目录)。Note that ~user路径仅仅在/etc/passwd文件在_current_chroot() jail(监狱、牢狱)限定的范围内能找到的状况下才被解析。
默认:NO
* use_localtime
若是启用,vsftpd将在(使用ls -al之类的命令)列举目录中文件时附带显示你当前时区时间。默认状况显示GMT(格林威治时间)。由MDTM FTP命令返回的时间也受该选项的影响。
默认:NO
* use_sendfile
一个用来测试在你的平台上使用sendfile()系统调用的相关效能的内部设置。
默认:YES
* userlist_deny
该选项用来检查userlist_enable是否启用。若是你(把该设置)设置为NO,,那么用户将被拒绝登陆,除非ta们被明确的记录在由userlist_file指定的文件中。当登陆被拒绝时,拒绝(登陆)发生在询问用户密码以前。
默认:YES
* userlist_enable
若是启用,vsftpd将从userlist_file提供的文件中加载一个用户名列表,若是一个用户登陆时使用的用户名列举在该文件中,那么ta 们将在被询问密码以前就被拒绝(登陆)了。这或许在阻止明文密码被传输时有用。又见于userlist_deny(See also userlist_deny)。
默认:NO
* validate_cert
若是设置为yes,接受到的全部的SSL终端签证必须验证经过。Self-signed(自定义?)的签证不能被验证经过。
默认:NO
* virtual_use_local_privs
若是启用,虚拟用户将拥有和本地用户同样的权限。默认状况下,虚拟用户使用和匿名用户同样的权限,或者限制更加严格一些(尤为是写权限)。
默认:NO
* write_enable
该选项控制是否容许那些可以改变文件系统的FTP命令生效。这些命令有:STOP,DELE,RNFR,RNTO,MKD,RMD,APPE and SITE.
默认:NO
* xferlog_enable
若是启用,日志文件将包含上传和下载的细节。默认状况,该文件将被放置在/var/log/vsftpd.log,不过这个位置可使用vsftpd_log_file配置选项来更改。
默认:NO(可是示例配置文件中启用它)
* xferlog_std_format
若是启用,传输日志文件将以标准的xferlog格式书写,就像wu-ftpd使用的同样。这个也许有用,由于你能够再使用现有的传输日志来生成统计信息。默认的格式可读性更好,然而,这种风格的日志文件默认的路径是/var/log/xferlog,可是你可使用xferlog_file配置选项来更改它。
默认:NO
数值选项
下面是数值选项列表。一个数值选项必须设置为一个非负的整数。为了方便掩码选项,支持八进制数。为了指定一个八进制数,使用0做为该数字的第一个数值位。
* accept_timeout
超时,以秒为单位,用来表示远程终端(用户)使用被动传输模式创建数据链接的超时时间。
默认:60
* anon_max_rate
表示匿名用户进行链接时容许的最大数据传输速率,以Bytes/Second为单位。
默认:0(没有限制)
* anon_umask
这个选项设置匿名用户登陆后建立文件的umask(权限屏蔽位)值。注意,若是你想指定为八进制数值,记住前缀“0”并不等同于基数为10的整数中的“0”(翻译有点别扭,原文:NOTE! If you want to specify octal values, remember the “0″ prefix otherwise the value will be treated as a base 10 integer!)。
默认:077
* chown_upload_mode
强制匿名用户上传文件chown()ed的文件模式(即被chown()后的文件模式)。
默认:0600
* connect_timeout
表示远程用户应答PORT传输模式的数据链接的超时时间,以秒为时间单位。
默认:60
* data_connection_timeout
表示创建数据链接的最长超时时间,以秒为时间单位。
* delay_failed_login
终止(登陆)并报告登陆失败的时间间隔,单位为秒。(原文:The number of seconds to pause prior to reporting a failed login.)
默认:1
* delay_successful_login
暂停(登陆)并容许再次登陆的时间间隔,单位为秒。(原文:The number of seconds to pause prior to allowing a successful login.)
默认:0
* file_mode
上传文件的权限属性。掩码在该值上有效,你也许但愿把它改变为0777,若是你想要上传的文件拥有可执行权限。
默认:0666
* ftp_data_port
使用哪个端口发起PORT(端口)链接(等同于启用一个比较弱的connect_from_port_20选项)
默认:20
* idle_session_timeout
idle(意思:空闲时间),空闲会话超时时间,单位为秒。表示远程用户发送FTP命令请求的最大时间间隔。若是超时,远程用户将被踢出(服务)。
默认:300
* listen_port
若是vsftpd以standalone模式运行,vsftpd将在(该选项指定的)该端口上监听接入的FTP链接。
默认:21
* local_max_rate
表示(被验证为)本地用户进行链接时容许的最大数据传输速率,单位为Bytes/Second。
默认:0(没有限制)
* local_umask
该值设置本地用户建立文件的权限屏蔽位。NOTE! If you want to specify octal values, remember the “0″ prefix otherwise the value will be treated as a base 10 integer!
默认:077
* max_clients
若是vsftpd以standalone模式运行,该选项设置vsftpd容许的最大用户链接数。任何额外的用户链接将会报错(获得一个错误的消息)。
默认:0(没有限制)
* max_login_fails
该选项设置多少次登陆失败后杀死会话。
默认:3
* max_per_ip
若是vsftpd以standalone模式运行,该选项设置容许来自同一个源网络地址(IP)的最大终端(用户)链接数。若是用户链接超出了该限制将会报错(获得一个错误的消息)。
默认:0(没有限制)
* pasv_max_port
可分配给被动传输模式的数据链接的最大端口。该选项可用来协助防火墙缩小端口的范围。
默认:0(使用任意端口)
* pasv_min_port
分配给被动传输模式的数据链接的最小端口。该选项可用来协助防火墙缩小端口范围。
默认:0(使用任意端口)
* trans_chunk_size
你也许不想改变它,可是尝试把它设置为8192之类来得到更加平滑的带宽限制。
默认:0(让vsftpd自动选择一个合理的设置)
字符串选项
下面是一个字符串选项列表
* anon_root
该选项指代vsftpd在匿名用户登陆后要切换到的目录。Failure is silently ignored。
默认:(none)
* banned_email_file
该选项是一个文件名,该文件包含有不容许登陆的匿名用户的e-mail口令列表。这个是启用deny_email_enable选项后所要查阅的文件。
默认:/etc/vsftpd.banned_emails
* banner_file
该选项是一个文件名,该文件包含有用户链接到(ftp)服务器时所要显示的文本(欢迎)信息。若是设置了该选项,它将覆盖由ftpd_banner选项提供的banner string。
默认:(none)
* ca_certs_file
该选项是一个文件名,该文件是vsftpd为了验证用户的数字证书而从中加载的权威证书的文件(This option is the name of a file to load Certificate Authority certs from, for the purpose of validating client certs.)。惋惜的是,默认的SSL CA没有被使用,由于vsftpd使用了chroot限制文件系统空间。
默认:(none)
* chown_username
这个是匿名上传文件被赋予的文件拥有者的用户名。该选项仅与是否设置了chown_uploads选项相关。
默认:root
* chroot_list_file
该选项是一个文件名,该文件包含有一个登陆后将被chroot()限定在其主目录下的用户列表。该选项仅与是否启用 chroot_list_enable选项相关。若是启用了chroot_local_user选项,那么该列表文件变成了一个不受chroot()限制的用户列表。
默认:/etc/vsftpd.chroot_list
* cmds_allowed
该选项指定了一个由逗号隔开的被容许使用的FTP命令列表(post login.USER,PASS and QUIT are always allowed pre-login(不明白post login和pre-login指的是啥意思))。其余命令被拒绝使用。这是一个锁定FTP服务器的强大的方法。例子:cmds_allowed=PASV,RETR,QUIT
默认:(none)
* deny_file
该选项可用来设置不被任何方式访问的文件名模式(或目录名,等等)。受影响的项目并不被隐藏,但全部尝试对它们作任何事情(下载,改变目录,在目录内affect something等等)都会被拒绝。该选项很是简单,因此不能应用于严格的访问控制——应优先使用文件系统的权限控制。然而,该选项在某些虚拟用户的设置中也许比较有用。尤为是在一个文件能够经过多个文件名访问的状况(也许是因为符号连接或硬连接),那么必须采起措施拒绝访问(该文件)全部的文件名。若是文件名包含有hide_file文件列出的字符串或者它们匹配由hide_file指定的正则表达式,那么将拒绝访问该对象。vsftpd的正则表达式匹配代码是正则表达式全部功能中的一个子集的简单实现。正由于这样,你必须细心并且详尽地测试该选项的任何应用。并且出于重要的安全策略考虑,推荐你使用文件系统的权限控制,由于它们更为可靠。支持的正则表达式的语法是全部的数字、*、?和{、}等操做符。正则匹配仅支持路径的最后一个份量,例如,a/b /?被支持而a/?/c不被支持。示例:deny_file={*.mp3,*.mov,.private}
默认:(none)
* dsa_cert_file
该选项指定用来加密SSL链接的DSA证书的位置(路径)
默认:(none ——有一个RSA证书就足够了)
* dsa_private_key_file
该选项指定用来加密SSL链接的DSA私钥的位置。若是没有设置该选项,则该私钥被预期(be expected)放置在和证书相同的位置。
默认:(none)
* email_password_file
该选项可用来为secure_email_list_enable选项的使用提供一个可选文件。
默认:/etc/vsftpd.email_passwords
* ftp_username
这个是用来处理匿名FTP的用户名。该用户的主目录是匿名FTP空间的根。
默认:ftp
* ftpd_banner
该字符串选项容许你更改vsftpd在一个链接第一次连进来时显示欢迎(问候)信息。
默认:(none——显示默认的vsftpd信息)
* guest_username
到布尔选项设置guest_enable中查看guest login的组成。该设置指定guest用户映射(be mapped to)的真实用户名。
默认:ftp
* hide_file
该选项用来设置一个在(使用ls命令等)列出目录中文件时应该隐藏的文件名模式(目录名等)。尽管是隐藏起来,文件、/目录等对于一些知道实际文件名的用户(clients)是彻底能够访问的。名字包含有hide_file列出的字符串或者匹配由hide_file指定的正则表达式的对象将被隐藏。 vsftpd的正则表达式匹配代码是正则表达式全部功能中的一个子集的简单实现。更多的可查看deny_file选项中关于正则表达式支持的语法。示例:hide_file={*.mp3,.hidden,hide*,h?}
默认:(none)
* listen_address
若是vsftpd以standalone模式运行,默认的监听地址(全部的网络接口)可使用该设置更改。提供一个数值形式的IP地址。
默认:(none)
* listen_address6
相似listen_address,可是指定默认的监听对象是IPv6地址(仅当设置了listen_ipv6才使用)。格式是标准的IPv6地址格式。
默认:(none)
* local_root
该选项指定了本地用户(i.e.非匿名用户)登陆后vsftpd将要切换到的目录。
默认:(none)
* message_file
该选项是咱们进入到一个新目录时vsftpd所要查找的文件的文件名,该文件的内容将显示给远程用户。该选项仅因而否启用了dirmessage_enable选项相关。
默认:.message
* nopriv_user
这是vsftpd使用的几乎没有特权的用户名,要注意这应该是一个专用的用户,而不只仅是nobody。nobody用户在大多数机器上被用于许多重要的事情。
默认:nobody
* pam_service_name
该字符串是vsftpd将要使用的PAM服务名。
默认:vsftpd
* pasv_address
使用该选项来更改vsftpd在应答PASV(被动传输模式)命令时公布的IP地址。提供一个数值形式的IP地址,除非启用了pasv_addr_resolve选项,这种状况下你能够提供一个在启动时则被DNS(域名服务)解析主机名。
默认:(none —— 地址取自链接进来的socket)
* rsa_cert_file
该选项指定用来加密SSL链接的RSA证书的位置(路径)。
默认:/usr/share/ssl/certs/vsftpd.pem
* rsa_private_key_file
该选项指定用来加密SSL链接的RSA私钥的位置。若是该选项没被设置,那么该私钥预期的位置和证书的相同。
默认:(none)
* secure_chroot_dir
该选项应该是一个空目录名。并且,ftp用户对该目录没有写权限。偶尔在vsftpd不须要访问文件系统时,该目录被用做一个安全的chroot() jail(监狱)。
默认:/var/run/vsftpd
* ssl_ciphers
该选项被用来选择vsftpd用来加密SSL链接的SSL密钥。查阅ciphers的手册页面来了解更为详尽的细节。限定ciphers是一个十分有用的安全预警,由于它能够阻止不怀好意的远程团体强制使用一个他们已经发现了问题的密钥。
默认:DES-CBC3-SHA
* user_config_dir
这个功能强大的选项容许基于(每个)用户更改在manual page(手册页、指南页面)中指定的任意配置选项。若是你设置user_config_dir为/etc/vsftpd_user_conf,而后使用 “chris”用户登陆(FTP服务器),那么vsftpd在整个会话期间将使用/etc/vsftpd_user_conf/chris文件上的设置。该配置文件的格式和手册页描述的细节同样!请注意并非全部的设置基于每个用户都生效。例如,许多设置先于用户会话的开始。不影响基于用户的设置行为的例子包括listen_address、banner_file、max_per_ip、max_clients、xferlog_file等。
默认:(none)
* user_sub_token
该选项结合虚拟用户是十分有用的。它用来为每个虚拟用户自动生成一个主目录(基于一个模板)。例如,若是由guest_username指定的真实用户的主目录是/home/virtual/$USER,并且user_sub_token设置为$USER,那么当虚拟用户fred登陆进来时,ta 将登陆到/home/virtual/fred目录(一般已经被chroot()了,原文:usually chroot()’ed)。若是local_root选项包含user_sub_token,该选项依然生效。
默认:(none)
* user_list_file
该选项是user_list_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
该选项是写入wuftpd风格的日志文件的文件名。仅当设置了xferlog_enable和xferlog_std_format选项,传输日志才被写入(该文件)。可供选择的,若是你设置了dual_log_enable选项,该文件依然能够被写入。
默认:/var/log/xferlog