Installation

See the INSTALL file for directions on compiling and installing the
binary.  Short version (as root):

  # ./configure
  # make
  # make install

This will install the oftpd daemon itself.  To run the server via the
standard Unix startup mechanism, you'll need to add it to your startup
files.  In most Linux systems, this means putting a shell script in the
/etc/rc.d/init.d directory and linking to it from the directories for
your various run levels.  If you have a Red Hat 7.0 (or similiar)
system, you can use the oftpd.redhat7 script for this purpose:

  # cp init/oftpd.redhat7 /etc/rc.d/init.d/oftpd
  # chkconfig --add oftpd

Be sure to read the FAQ if you have any questions!


Introduction

oftpd is designed to be as secure as an anonymous FTP server can
possibly be.  It runs as non-root for most of the time, and uses the
Unix chroot() command to hide most of the systems directories from
external users - they cannot change into them even if the server is
totally compromised!  It contains its own directory change code, so that
it can run efficiently as a threaded server, and its own directory
listing code (many FTP servers execute the system "ls" command to list
files).  It is currently being code-reviewed for buffer overflows, and
being load-tested.


History

I wrote oftpd to fill a need we had at my company.  Our public FTP site
was a mess, and in addition to reorganizing organizing the hierarchy and
file layout I wanted to get the latest version of our FTP server
software.  It turns out that the version we had had had a number of
security issues.  So I decided to find an anonymous-only, secure FTP
server.  None of the ones I found were fully baked.  Time to write my
own.  :)


Portability

oftpd currently runs on modern Linux systems, including Red Hat-derived
(Mandrake, Trustix, etc.) and Debian systems.  oftpd has been ported to
FreeBSD and is in the FreeBSD ports collection.


While I have given up development of oftpd, it's small and reliable.  Don't
hesitate to e-mail if you have questions or suggestions.  
Good luck!


Shane Kerr
shane@time-travellers.org
