NAME¶
twoftpd-xfer - TwoFTPD file transfer back-end.
SYNOPSIS¶
twoftpd-xfer
DESCRIPTION¶
twoftpd-xfer reads FTP request from the network and executes file
transfers based on those requests. Before doing anything,
twoftpd-xfer
changes directory to the authenticated user's home directory, changes the root
directory to that directory, and drops all root priviledges.
ENVIRONMENT¶
- AUTHENTICATED
- If set (typically by twoftpd-auth after successfully
completing authentication), the startup banner will use code 230,
indicating that authentication was successful. Otherwise, the startup
banner will use code 220, which is the normal initial connection
banner.
- BANNER
- If set, the contents of this variable will be sent as extra
responses when the server starts.
- CHROOT
- If set, change the root directory to the user's home
directory through the OS chroot syscall.
- CONNECT_TIMEOUT
- The maximum number of seconds to wait for a data channel
connection to complete. If not set, it defaults to the value of
$TIMEOUT.
- GID
- Numerical group ID number to change to at program
startup.
- GIDS
- Optional comma-seperated list of numerical group IDs to set
up as the supplementary group IDs.
- GROUP
- Group name to use in long listings for files owned by
$GID. If not set, defaults to mygroup.
- HOME
- Directory to switch to on program startup.
- LOCKHOME
- If set (and neither CHROOT nor SOFTCHROOT are
set), all accesses to files and paths outside of HOME will be
forbidden.
- LOGREQUESTS
- If set, all requests from the client will be logged.
- LOGRESPONSES
- If set, all responses to the client (after login) will be
logged.
- MESSAGEFILE
- If set, the contents this file will be automatically sent
as extra responses to the client whenever the server enters a directory
(including at startup).
- NODOTFILES
- If set, all listings will exclude all files starting with a
period, and it will not be possible to do any file access (including
storing or retrieving) to any file starting with a period. This may be
useful for anonymous FTP servers.
- SESSION_TIMEOUT
- The maximum number of seconds to allow a single session to
last.
- SOFTCHROOT
- If set, and CHROOT is not set, the server emulates
the effect of a chroot without actually effecting a chroot. This
eliminates the system-enforced barrier provided by the chroot, but allows
for things like symlinks outside of the home directory.
- TCPLOCALIP
- The IP to use when creating PASV connections. Normally,
this is set by tcpserver.
- TCPREMOTEIP
- The source IP to use when creating PORT connections.
Normally, this is set by tcpserver.
- TIMEOUT
- The maximum number of seconds to wait for command input or
connections.
- UID
- Numerical user ID number to change to at program
startup.
- USER
- Owner name to use in long listings for files owned by
$UID.
NOTES¶
You will need to set the umask to an appropriate value before running this
program.
The
twoftpd-anon program functions identically to this program, with the
exception of having no file modification capabilities. The
twoftpd-drop
program is a similarly restricted program, that can only create new files (no
overwriting, modifying, or listing existing files).