[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