NAME
tftpd - DARPA Trivial File Transfer Protocol server

SYNOPSIS
/usr/etc/in.tftpd [ -h homedirectory ][ directory ... ]
/usr/etc/in.tftpd -s [ rootdirectory ]

DESCRIPTION
Tftpd is a server which supports the DARPA Trivial File Transfer
Protocol. The TFTP server operates at the port indicated in the
"tftp" service description; see services(5). The server is
normally started by inetd(8).

The use of tftp does not require an account or password on the
remote system. Due to the lack of authentication information,
tftpd will allow only publicly readable files to be accessed.
Files may be written only if they already exist and are publicly
writable. Note that this extends the concept of "public" to
include all users on all hosts that can be reached through the
network; this may not be appropriate on all systems, and its
implications should be considered before enabling tftp service.
The server should have the user ID with the lowest possible
privilege.

Access to files may be restricted by invoking tftpd with a list of
directories by including pathnames as server program arguments in
/etc/inetd.conf. In this case access is restricted to files whose
names are prefixed by the one of the given directories.

Relative file names, i.e. those without an initial ’/’ character,
are only allowed when tftpd has been directed to operate with the
current working directory homedirectory, specified with the -h
option. This option should be included with the server program
arguments in /etc/inetd.conf. Relative pathnames are not checked
against the restricted directory list.

An alternative (more secure) mode of operation is specified with
the -s option. This option causes tftpd to make rootdirectory the
current working directory and the effective root ’/’ directory.
This reduces the scope of possible files to those residing in
rootdirectory or its subdirectories, and it also means that all
pathnames are effectively relative to rootdirectory whether or not
they begin with a ’/’ character. The public accessibility rules
for files stated above still apply. If rootdirectory is not
specified, /tftpboot is assumed. This directory must exist and be
publicly accessible.

SEE ALSO
tftp(1), inetd(8)