[c-nsp] Top 10 Network Engineering Tools
Stephen Stuart
stuart at tech.org
Mon Jan 28 19:00:20 EST 2008
heas said:
> > 5. An up-to-date, fully functional TFTP server
>
> rcpd and ftp; tftp doesnt really cut it anymore.
Not just any rcpd; you want jhawk's rcpd, whose README says:
This is a standalone implementation of rcpd.
When we say standalone, we mean it does not require an rshd to be
running (in fact it is incompatible with running one), nor does it
require special entries in /etc/passwd.
This rshd is intended as a drop-in replacement for tftpd, to be
used for uploading software to cisco routers, and other devices
that support rcp as a non-authenticated file-transfer protocol.
This implementation serves up files from a build-time-configurable
directory, defaulting to "/tftpboot". You can change that with:
./configure --with-bootdir=/path/to/tftpboot/directory
We also implement a feature found in some tftpds, of looking in a
subdirectory designated by the IP address of the source of the
connection. Eg, an rcp of "file" from host 199.94.220.184, might
result in the rcpd attempting to fetch /tftpboot/199.94.220.184/file.
This feature is off by default, but may be enabled with
./configure --enable-ipaddrdirs
This rcpd enforces tftpd-style access controls. It setuid()s to nobody
prior to attempting file accesses, so requires files to be world
readable or world writable to read/write from them (respectively). It
also requires a file to exist before writing to it, even if the
directory is world-writable.
This software sets IP precedence INTERNETCONTROL on the tcp
connection(s) it talks over, on the theory that this behavior may be
desirable/important.
See the file INSTALL for building instructions. There is no make
install rule, because the maintainer is lame. I recommend installing
in /usr/local/libexec/rcpd, though.
An appropriate inetd.conf line would be:
# Internet services syntax:
# <service_name> <socket_type> <proto> <flags> <user>
# <server_pathname> <args>
#
shell stream tcp nowait root /usr/local/libexec/rcpd
# rcpd
Please send all bug reports by electronic mail to:
jhawk at bbnplanet.com (John Hawkinson)
More information about the cisco-nsp
mailing list