作者:彭席汉
http://blog.chinaunix.net/u1/33677
名称
Vsftpd.conf
--
vsftpd
的配置文件
描述
Vsftpd.conf
用于控制
vsftpd
守护程序的各项功能。默认状态下,
vsftpd
的配置文件是
/etc/vsftpd.conf
。但是它可以通过传递一个命令行参数给
vsftpd
来修改,这个命令行参数就是
vsftpd
配置文件的路径。这个功能很有用,因为你可能希望使用高级
inetd
例如
xinetd
来启动
vsftpd
,并且每个虚拟主机具有不同的配置文件。
格式
Vsftpd.conf
的格式非常简单。每一行或者是注释或者是命令。注释行以
#
开头并且被忽视。一个命令行具有如下的格式:
option=value
特别要注意的是“
option
”,“
=
”以及“
value
”之间不允许出现任何空格。
每项设置都有一个默认值,可以通过配置文件进行修改。
BOOLEAN
选项
以下是
boolean
选项的一个清单。
Boolean
选项的值可以被设置为
YES
或者
NO
。
allow_anon_ssl
只有当
ssl_enable
选项激活才能启动此选项。如果被设置成
YES
,匿名用户将被允许
使用安全
SSL
连接。
默认:
NO
anon_mkdir_write_enable
如果被设置成
YES
,匿名用户在特定的条件下允许创建新的目录。要使此选项有效,选项
write_enable
必须被激活,并且匿名
ftp
用户在父目录下必须有写的权限。
默认:
NO
anon_upload_enable
如果被设置成
YES
,匿名用户在特定的条件下被允许上传文件。要使此选项生效,
write_enable
选项必须被激活,并且匿名
ftp
用户在上传目录下必须具有写的权限。对于要上传的虚拟用户来说这个设置也是必须的;默认状态下,虚拟用户赋以匿名用户的优先级。
默认:
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
当被激活,一个名为“
async ABOR
”的特殊命令将被激活。只有当不正常的客户端才会使用这个功能。还有就是这个功能非常不好用,所以默认状态下它是被禁止掉的。不幸的是,如果没有这个功能,一些
FTP
客户端在取消传输时会挂掉,因此你可能想激活它。
默认:
NO
background
当被激活,并且
vsftpd
以“监听”的模式启动,
vsftpd
将在后台运行监听进程。也就是说控制端立即返回到启动
vsftpd
的
shell
。
默认:
NO
check_shell
注意!此选项只对
non-PAM
编译的
vsftpd
有效。如果此选项被禁止,对于本地用户登录,
vsftpd
将不会去检查
/etc/shells
以判断它是否有一个合法的用户
shell
。
默认:
YES
chmod_enable
当被激活,就可以使用
SITE CHMOD
命令。注意!此选项仅应用于本地用户。匿名用户不允许使用
SITE CHMOD
命令。
默认:
YES
chown_uploads
如果激活,所有的匿名用户上传的文件的所有者将会被改变为由
chown_username
选项确定的用户。从管理员也许还有安全的角度看,这个选项是有用的。
默认:
NO
chroot_list_enable
如果被激活,你要提供一份本地用户的清单,他们被锁定在虚根(进入
FTP
后,
PWD
一下,看到的当前目录就是虚根。是
FTP
的根目录,并非
FTP
服务器系统的根目录)。如果
chroot_local_user
选项被设置成
YES
,该选项的含义稍微有点不同。在这种情况下,用户清单列出的是不被锁定在虚根下的用户。默认状态下,包含这张清单的文件是
/etc/vsftpd.chroot_list
,但是你可以通过
chroot_list_file
选项来修改它。
默认:
NO
chroot_local_user
如果被设置成
YES
,本地用户在登录后将被锁定在虚根的
home
目录下。警告:此选项有安全的预示,尤其是当用户具有上传和
shell
访问的权限。只有当你了解你正在做什么的情况下,激活此选项。要指出的是这些安全预示不是
vsftpd
所特有的,它们应用于所有的把本地用户锁定虚根下的
FTP daemon
中。
默认:
NO
connect_from_port
此选项控制
PORT
类型的数据连接是否使用服务器上的
20
号端口(
ftp-data
)。由于安全性的原因,一些客户坚持使用这个端口。相反,禁止这个选项将使
vsftpd
运行起来烧了一点特殊性。
默认:
NO
deny_email_enable
如果激活,你要提供匿名用户的密码
e-mail
表以拒绝以这些密码登录的用户。默认状态下,包含这张表的文件是
/etc/vsftpd.banned_emails
,但是你可以通过设置
banned_email_file
来修改它。
默认:
NO
dirlist_enable
如果设置成
NO
,所有的列表命令将被拒绝。
Default:YES
dirmessage_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
连接。
默认:
YES
force_local_data_ssl
只有当
ssl_enable
选项被激活后才能应用此选项。如果被激活,所有的非匿名登录必须使用一个安全的
SSL
连接来发送和接受数据。
默认:
YES
force_local_login_ssl
只有当
ssl_enable
选项被激活后才能应用此选项。如果被激活,所有非匿名登录在发送密码的时候必须使用安全
SSL
连接。
默认:
NO
guest_enable
如果被激活,所有的非匿名登录被视为“
guest
”登录。这个
guest
登录将被映射为
guest_username
设置里指定的用户。
默认:
NO
hide_ids
如果被激活,在目录列表里的用户和组信息将被显示为“
ftp
”。
默认:
NO
listen
如果被激活,
vsftpd
将运行在独立(
standalone
)模式下。这就意味着
vsftpd
不可以从
inetd
之类的服务中启动。相反,
vsftpd
直接执行一次后,它自己将会负责监听和处理连接请求。
默认:
NO
listen_ipv6
类似于
listen
参数,只不过
vsftpd
将监听
IPv6
的套接字而不是
IPv4
的。这个参数与
listen
参数是互斥的。
默认:
NO
local_enable
这个参数控制是否允许本地用户登录。如果被激活,在
/etc/passwd
里的普通用户帐号被用来登录。要使非匿名登录包括虚拟用户登录生效必须激活此选项。
默认:
NO
lock_upload_files
当被激活,所有的上传文件都会具有一个写锁。所有的下载文件都会具有一个共享的读锁。警告!在激活此选项之前,要注意的是恶意的读用户会让对文件进行添加的写用户处于饥饿状态。
默认:
NO
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
当被激活,在写
log
文件时将阻止
vsftpd
把文件锁住。此选项通常情况下不被激活。它存在于工作区操作系统中,例如
Solaris/Veritas
混合文件系统,在这种情况下当试图锁住日志文件时有时会出现挂起的现象。
默认:
NO
one_process_model
如果你用的是
Linux 2.4
内核,可能就会用不同安全模式,即一个连接对应一个进程。它是一个不太严格的安全模型,但是会提高性能。如果你清楚自己做什么,并且你的站点支持大量的同时访问,在这种情况下,你可能想激活此选项。
默认:
NO
passwd_chroot_enable
如果连同
chroot_local_user
一起被激活,那么虚根用户的位置根据不同的用户而确定。每个用户虚根位置是从
/etc/passwd
中的父目录字符串中获取的。
默认:
NO
pasv_addr_resolve
如果你想在
pasv_address
选项中使用主机名,就要激活它。
默认:
NO
pasv_enable
如果你要禁止
PASV
这种获取数据连接的方法,要将此选项关掉。
默认:
pasv_promiscuous
如果你想关掉
PASV
安全检查,就要设置此选项为
YES
。
PASV
安全检查能确保来源于同一个
IP
地址的数据连接作为控制连接。只有当你清楚你在作什么的时候才能激活这个选项!仅在一些形式的安全隧道机制中使用,或者是为了更好的支持
FXP
。
默认:
NO
port_enable
如果你想禁止通过
PORT
的方法获得数据连接,将此选项设置成
NO
。
默认:
YES
port_promiscous
如果你想禁止
PORT
安全检查,就要设置此选项为
YES
。这个
PORT
安全检查确保对外出去的数据连接只能用于客户端。只有当你清楚自己在作什么的时候才能激活此选项。
默认:
NO
run_as_launching_user
如果你想以启动
vsftpd
的用户来运行
vsftpd
就要设置此选项为
YES
。这在不能以
root
用户访问系统时非常有用。强烈警告!除非你非常清楚你正在做什么,否则不要激活此选项,因为对这个选项的草率使用会导致严重的安全问题。特别是,当设置了这个选项后,
vsftpd
没有也不能使用虚根技术来限制文件访问。可以用
deny_file
选项来替代,但是效果不好,可靠性不能与虚根技术相比,而且不可靠。如果使用了此选项,其他选项的应用就会产生很多限制。例如,需要优先权的选项如非匿名登录,改变上传文件拥有者,连接
20
端口以及从小于
1024
号的端口监听都不会工作。其他选项也会受到影响。
默认:
NO
secure_email_list_enable
当匿名登录时,如果你想只允许以设定的
e-mail
密码表中的密码登录,就要将此选项设置成
YES
。当对低安全级别的内容进行访问限制,这个选项是一个非常有用的低安全限制方法。而且不需要使用虚拟用户。当此选项被激活后,匿名用户如果不在
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
|