Each ProFTPD configuration directive is described using a common format that looks like this:
Each of the directive's attributes, complete with possible values where possible, are described in this document.
proftpd.conf
) outside of any other
context (i.e. not inside a <VirtualHost>
or
<Global>
context). This context defines a
"main" or "default" server.<VirtualHost>
<VirtualHost>
sections in the server
configuration file.<Global>
<Global>
sections in the server configuration
file. This context is used as a shortcut for placing directives with
all server contexts (i.e. the "server config" context as
well as any <VirtualHost>
contexts within the
configuration file). Any directives of the same name within those
server contexts will have precedence over a <Global>
setting.<Anonymous>
<Anonymous>
sections in the server configuration
file. An anonymous context is not a true virtual server, but rather is
a context within server context (i.e. "server config",
<VirtualHost>
or <Global>
).
Anonymous contexts are automatically chroot()
ed. Any
configuration directives set for the containing server will be in effect
for the anonymous context as well, unless overridden by a directive of
the same name within the anonymous context.<Limit>
<Limit>
sections in the server configuration file.
This context is used to place limits on who and how individual
FTP commands, or groupings of FTP commands, may be used.<Directory>
<Directory>
sections in the server
configuration file. This context configures views of the contained files
based on the logged-in user's username or group membership, or on the
name of the files (e.g. Unix-style "hidden" files), and
on whether the user has permission to see the files. By definition,
directives set using a .ftpaccess
file are considered to
be occurring within a <Directory>
context..ftpaccess
files.
These files are akin to Apache's .htaccess
files:
parsed-on-the-fly mini-configuration files that users can place within
their own directories.The directive is only allowed within the designated context; if you try to use it elsewhere, you'll get a configuration error that will either prevent the server from handling requests in that context correctly, or will keep the server from operating at all -- i.e., the server won't even start.
The valid locations for the directive are actually the result of a Boolean OR
of all of the listed contexts. In other words, a directive that is marked as
being valid in "server config, .ftpaccess
" can be used
in the proftpd.conf
file and in .ftpaccess
files, but
not within any <Directory>
, <VirtualHost>
,
or other contexts.