Vsftp配置文件详解FTP分为两类,一种为PORTFTP,也就是一般的FTP?另一类是PASVFTP,分述如下:www.2cto.comPORTFTP这是一般形式的FTP,首先会建立控制频道,默认值是port21,也就是跟port...
Vsftp配置文件详解
FTP 分为两类,一种为PORT FTP,也就是一般的FTP?另一类是PASV FTP,分述如下:
www.2cto.com
PORT FTP 这是一般形式的FTP,首先会建立控制频道,默认值是port 21,也就是跟port 21 建立联机,并透过此联机下达指令。第二,由FTP server 端会建立数据传输频道,默认值为20,也就是跟port 20 建立联机,并透过port 20 作数据的传输。
PASV FTP 跟PORT FTP 类似,首先会建立控制频道,默认值是port 21,也就是跟port 21 建立联机,并透过此联机下达指令。第二,会由client 端做出数据传输的请求,包括数据传输port 的数字。
www.2cto.com
这两者的差异为何?PORT FTP当中的数据传输port是由FTP server 指定,而PASV FTP的数据传输port是由FTP client决定。通常我们使用PASV FTP,是在有防火墙的环境之下,透过client 与server 的沟通,决定数据传输的port。
BOOLEAN OPTIONS
allow_anon_ssl
如果ssl_enable是active的,设置为yes的话,匿名用户则可以使用SSL连接,默认No
anon_mkdir_write_enable
如果设置为yes,匿名用户则在一定的条件下(write_enable是active,并且在父目录有写权限)可以创建目录,默认No
PORT FTP 这是一般形式的FTP,首先会建立控制频道,默认值是port 21,也就是跟port 21 建立联机,并透过此联机下达指令。第二,由FTP server 端会建立数据传输频道,默认值为20,也就是跟port 20 建立联机,并透过port 20 作数据的传输。
PASV FTP 跟PORT FTP 类似,首先会建立控制频道,默认值是port 21,也就是跟port 21 建立联机,并透过此联机下达指令。第二,会由client 端做出数据传输的请求,包括数据传输port 的数字。
这两者的差异为何?PORT FTP 当中的数据传输port 是由FTP server 指定,而PASV FTP 的数据传输port 是由FTP client 决定。通常我们使用PASV FTP,是在有防火墙的环境之下,透过client 与server 的沟通,决定数据传输的port。
BOOLEAN OPTIONS
allow_anon_ssl
如果ssl_enable是active的,设置为yes的话,匿名用户则可以使用SSL连接,默认No
anon_mkdir_write_enable
如果设置为yes,匿名用户则在一定的条件下(write_enable是active,并且在父目录有写权限)可以创建目录,默认No
anon_other_write_enable
如果设置为yes,匿名用户除了有upload和创建目录权限外,还有写操作权限,如:删除或者重命名文件,默认No
anon_upload_enable
如果设置为yes,匿名用户在一定的条件下(write_enable必须是active,匿名用户必须有写权限)可以上传文件,默认No
anon_world_readable_only
如置为yes,匿名用户则可以
下载可读的文档,默认Yes
anonymous_enable
是否允许匿名用户可以登录ftp,如果设置为yes,ftp和anonymous用户都可以作为匿名用户登录,默认Yes
ascii_download_enable
如果开启,则以ASCII模式下载数据,默认No
ascii_upload_enable
如果开启,则以ASCII模式上传数据,默认No
async_abor_enable
如果开启,则一个特殊的ftp命令会被开启,类似于'async ABOR',是否允许客户端使用rsync,默认No
background
如果开启,vsftp将以监听(listen)模式启动,默认No
check_shell
只有在PAM没有嵌入vsftp的时候起作用,如果禁止,vsftp则不会在/etc/shells中检查本地用户的shell,默认Yes
chmod_enable
如果开启,则允许使用'SITE CHMOD'命令,这个只针对本地用户有效,对匿名用户无效。默认Yes
chown_uploads
如果开启,所有的匿名用户........................
chroot_list_enable
如果开启,你需要提供一个本地用户列表以指定谁在chroot()中,如果chroot_local_user设置为Yes,则这个列表表示哪些用户不在chroot()中,默认列表文件是/etc/vsftpd.chroot_list,你也可以通过chroot_list_file参数重置。默认No
chroot_local_user
如果开启,则本地用户默认使用chroot(),默认No
connect_from_port_20
控制在PORT模式下,数据连接是否使用20端口。默认是No
debug_ssl
如果开启,openssl连接诊断会在记录在vsftp日志中,默认No
delete_failed_uploads
如果开启,任何上传失败的文件都会被删除,默认No
deny_email_enable
dirlist_enable
如果关闭,所有的列目录命令都会被禁止,默认Yes
dirmessage_enable
如果开启,则在用户第一次进入一个目录时,会显示该目录下的.message文件的内容信息,你可以通过message_file重置该文件的设置,默认No
download_enable
dual_log_enable
如果开启,两个日志文件会被同时产生,/var/log/xferlog和/var/log/vsftpd.log,前者是wu-ftpd类型日志,后者是vsftp自己风格的日志,默认No
force_dot_files
如果开启,以'.'开头的文件和目录会被列出来,即使没有使用a标记(ls -a),也就是显示隐藏文件,默认No
force_anon_data_ssl
只在ssl_enable是active时有效,如果设置为yes,则所有的匿名用户都被强制要求使用ssl发送和接收数据,默认No
force_anon_logins_ssl
只在ssl_enable是active时有效,如果设置为yes,则所哟的匿名用户都被强制要求使用ssl发送密码,默认No
force_local_data_ssl
只在ssl_enable是active时有效,如果设置为yes,所有的非匿名用户都被强制要求使用ssl发送和接收数据,默认Yes
force_local_logins_ssl
只在ssl_enable是active时有效,如果设置为yes,所有的非匿名用户都被强制要求使用ssl发送密码,默认Yes
guest_enable
如果开启,所有的非匿名用户以'guest'登录,一个'guest'登录后,会映射到guest_username指定文件中的用户上面,默认No
hide_ids
如果开启,所有的用户和组信息在目录中被显示时,都会显示为ftp,默认No
implicit_ssl
listen
如果开启,vsftp则运行在standalone模式,默认No
listen_ipv6
类似listen,不过使用IPv6 socket代替IPv4,和listen参数互相排斥,默认No
local_enable
控制是否允许本地登录,如果开启,则在/etc/passwd中的用户都可以登录,默认No
lock_upload_files
如果开启,则所有的上传进程在上传文件时都会有一个写锁,所有的下载进程在下载文件时共享读锁,默认Yes
log_ftp_protocol
如果开启,假如xferlog_std_format参数没有开启,则所有的ftp请求和回应都会被记录进日志,默认No
ls_recurse_enable
如果开启,则允许用户使用'ls -R'命令,默认No
mdtm_write
如果开启,则允许MDTM修改文件访问时间,默认Yes
no_anon_password
如果开启,则阻止vsftp询问匿名用户密码,匿名用户会直接登录,默认No
no_log_lock
如果开启,则阻止vsftp在写日志文件时获取文件锁,默认No
passwd_chroot_enable
pasv_addr_resolve
如果你想在pasv模式使用主机名,则可以设置为yes,默认No
pasv_enable
如果你想关闭PASV模式,则设置no,默认Yes
pasv_promiscuous
如果你想关闭PASV模式的安全检查(它保证数据连接和控制连接源自同一个ip),可以设置为yes,默认No
port_enable
如果你想禁止通过PORT方法获取数据连接,可以设置为No,默认Yes
port_promiscuous
如果你想禁止PORT模式的安全检查(确保出去的数据连接可以连接到客户端),则可以设置为Yes,默认No
require_cert
如果设置为yes,则所有的客户端ssl连接需要提供一个客户端证书,默认No
syslog_enable
如果开启,则所有记录到/var/log/vsftpd.log的日志都会记录到system log中,默认No
tcp_wrappers
如果开启,vsftp支持tcp_wrappers,默认No
text_userdb_names
tilde_user_enable
use_localtime
如果开启,vsftp将会在显示目录时显示你的本地时间,默认No
use_sendfile
一个内部用来测试sendfile()系统调用效果的参数,默认Yes
userlist_deny
如果userlist_enable选项开启,则会检查这个选项,如果设置为no,只有在userlist_file中指定的用户会被允许登录,默认Yes
userlist_enable
如果开启,vsftp会加载userlist_file指定的用户列表,如果用户使用列表中的用户名登录,则会被拒绝掉,默认No
validate_cert
如果开启,所有的ssl客户端证书必须是验证ok的,而自己签名的证书则不会通过认证,默认No
virtual_use_local_privs
如果开启,虚拟用户则会和本地用户具有相同的权限,默认情况下,虚拟用户和匿名用户具有的权限一样,默认No
write_enable
是否允许FTP命令改变文件系统,这些命令是:STOR, DELE,RNFR, RNTO, MKD, RMD, APPE and SITE,默认No
xferlog_enable
如果开启,一个日志文件会维护上传和下载的详细信息,默认记录在/var/log/vsftpd.log,可以通过vsftpd_log_file重置,默认No
xferlog_std_format
如果开启,传输日志则会采用标准的xferlog格式,默认是/var/log/xferlog,可以通过xferlog_file重置,默认No
NUMERIC OPTIONS
accept_timeout
远程客户端使用PASV模式时,建立数据连接的超时时间,默认60s
anon_max_rate
最大数据传输速率,默认0(不限制)
anon_umask
匿名用户创建一个文件的umask值,默认077
chown_upload_mode
匿名用户上传文件的mode值,默认0600
connect_timeout
远程客户端使用PORT模式时,响应数据连接的超时时间,默认60s
data_connection_timeout
一个允许数据传输粗略的超时时间,默认300s
delay_failed_login
暂停报告之前失败的登录,默认1s
delay_successful_login
暂停之前一个成功的登录,默认1s
file_open_mode
上传的文件具有的权限,默认0666
ftp_data_port
PORT模式的连接端口,默认20
idle_session_timeout
在两次输入ftp命令之间的空闲时间,默认300s
listen_port
如果vsftp工作在standalone模式,该端口监听进入的连接,默认21
local_max_rate
本地用户的最大数据传输速率,默认0(不限制)
local_umask
本地用户创建一个文件锁具有的umask,默认077
max_clients
如果vsftp工作在standalone模式,有多少用户可以连接进来,默认0(不限制)
max_login_fails
多少次登录失败后,kill这个连接,默认3
max_per_ip
如果vsftp工作在standalone模式,同一个ip源地址可以有多少个连接进来,默认0(不限制)
pasv_max_port
在PASV模式下,可以分配给数据连接的最大端口号,默认0(可以使用任何端口)
pasv_min_port
在PASV模式下,可以分配给数据连接的最小端口号,默认0(可以使用任何端口)
trans_chunk_size
一般不会改变该参数的值,不过你可以设置为8192试试,默认0
STRING OPTIONS
anon_root
在匿名用户成功登录后,跳转到那个目录,默认none
banned_email_file
该文件包含了哪些匿名的e-mail 密码是不允许登录的,如果deny_email_enable被开启,则会检查这个参数,默认/etc/vsftpd.banned_emails
banner_file
当一个用户登录后,显示的信息,如果设置了该文件,则会覆盖ftpd_banner的设置,默认none
ca_certs_file
加载的CA文件的名称,默认none
chown_username
匿名用户上传文件所具有的owner,只有在chown_uploads被设置的时候有效,默认root
chroot_list_file
该文件包含哪些本地用户使用chroot(),只有在chroot_list_enable被开启的时候起作用,如果chroot_local_user开启,则列表文件变成哪些用户不使用chroot(),默认/etc/vsftpd.chroot_list
cmds_allowed
该选项用逗号分割一个允许执行的ftp命令列表(例如在POST模式下,cmds_allowed=USER, PASS,QUIT),默认none
cmds_denied
该选项用逗号分割一个不允许执行的ftp命令列表,默认none
deny_file
设置一个文件名模式,该匹配的文件都不许被访问,例如deny_file={*.mp3,*.mov,.private},默认none
dsa_cert_file
ssl
加密连接中使用的DSA文件的位置,默认none
dsa_private_key_file
DSA私钥的位置,默认none
ftp_username
使用该帐号处理匿名登录的情况,默认ftp
ftpd_banner
可以使用该选项替换第一次登陆时显示的默认欢迎语句,默认none
guest_username
把一个真实用户映射到guest user上面,默认ftp
hide_file
listen_address
如果vsftp工作在standalone模式,则可以通过该选项替换默认监听地址,默认none
listen_address6
和listen_address一样,替换ipv6
local_root
在本地用户登录后,vsftp跳转到那个目录,默认none
message_file
如果dirmessage_enable开启,该选项设置默认的信息文件,默认.message
nopriv_user
该用户完全没有特权,默认nobody
pam_service_name
vsftp使用的PAM服务的名称,默认vsftpd
secure_chroot_dir
该选项设置一个空目录名称,该目录不能被ftp用户有写权限,该目录作为一个安全的chroot()环境,vsftp不需要文件
系统访问它
ssl_ciphers
ssl加密算法,默认DES-CBC3-SHA
user_config_dir
允许你覆盖任何配置文件中的选项,它是基于每一个用户的配置,如果你设置user_config_dir为/etc/vsftpd_user_conf,当你用chris用户登录时,vsftp会申请加载/etc/vsftpd_user_conf/chris文件在该会话期内,不是所有的参数都在个人配置文件中生效的,默认none
user_sub_token www.2cto.com
用来连接虚拟账户,它会为每个虚拟帐号自动生成家目录,例如设置guest_username为/home/virtual/$USER,user_sub_token为$USER,当fred虚拟账户登录时,fred的家目录为/home/virtual/fred,默认none
userlist_file
当userlist_enable开启的时候,会加载该参数设置的文件,默认/etc/vsftpd.user_list
vsftpd_log_file
在xferlog_enable被设置,并且xferlog_std_format没有设置的时候,来指定vsftp风格的日志写到哪个文件中,如果你设置了syslog_enable,则日志会写入系统日志文件中,默认/var/log/vsftpd.log
xferlog_file
在xferlog_enable和xferlog_std_format被设置的时候,wu-ftpd风格的传输日志写入哪个文件中,默认/var/log/xferlog