Lets keep our version of opftpd in the CVS
[oftpd.git] / man / oftpd.8
1 .TH OFTPD 8 "2001-04-03" Linux "Linux System Administration"
2 .SH NAME 
3 oftpd \- anonymous, read-only FTP server
4 .SH SYNOPSIS
5 .B oftpd [-p|--port
6 .I port
7 .B ] [-r|--pasv-range
8 .I low high
9 .B ] [-i|--interface
10 .I ip-address
11 .B ] [-m|--max-clients
12 .I num
13 .B ] [-l|--local
14 .I local-logging
15 .B ] [-N|--nodetach]
16 .I user-name root-directory
17 .SH DESCRIPTION
18 .B oftpd
19 is an anonymous-only FTP server.  
20
21 Although it must be started by the root user, after initialization it
22 runs as the user specified by 
23 .I user-name
24 parameter.  This should be a user with minimal permissions, preferably
25 from an account set up for this purpose only.
26
27 The server uses
28 .BR chroot (2)
29 to change the root directory of the server to the 
30 .I root-directory
31 directory.  When a user connects, this is the directory that they will
32 start in, and is the top of their directory tree.
33
34 When FTP clients connect, they may log in as "ftp" or "anonymous".
35 Typically they will then send their e-mail address as password (most web
36 browsers send a browser identifier rather than the user's e-mail
37 address).  Standard Unix file permissions are enforced for downloading,
38 meaning clients may download any file 
39 .I user-name
40 has permission to read.  No uploads are permitted.  All client activity
41 is logged (see 
42 .B DIAGNOSTICS
43 below).
44 .SH OPTIONS
45 .IP "-p|--port port"
46 Use the specified
47 .I port 
48 to listen for client connections.  If not specified, the default FTP
49 port (number 21) is used.
50 .IP "-r|--pasv-range low high"
51 Limit the range for ports used in passive mode from
52 .I low
53 to
54 .I high
55  .  If not specified 1024 and 65535 are used.
56 .IP "-i|--interface ip-address"
57 Use the interface connected to the IP address
58 .I ip-address
59 to accept connections.  If not specified, the server listens on all
60 interfaces.
61 .IP "-m|--max-clients num"
62 Accept at most 
63 .I num
64 simultaneous clients.  If not specified, 250 will be the limit.
65 .IP "-l|--local local-logging"
66 Normally oftpd logs messages to syslog as the FTP daemon.  With this
67 option, the specified 
68 .I local-logging
69 level will be used instead.  Valid numbers are 0-8.
70 .IP "-N|--nodetach"
71 Do not run in the background; for running from
72 .BR init (8)
73 or for testing.
74 .SH DIAGNOSTICS
75 Syntax errors will result in a help message being displayed, and a
76 non-zero exit code returned.  Otherwise the server will exit without
77 output, and return zero.
78
79 After the server has started, you should check the appropriate log
80 produced by 
81 .BR sysklogd (8)
82 for the FTP daemon to insure that startup completed correctly.  Certain
83 errors occur only after the server has disconnected from the TTY, so
84 can only be recorded via the log mechanism.
85
86 If the server must terminate for any reason, it will also be logged, as
87 will other non-fatal internal errors.  They are logged with attention to
88 how serious the condition is believed to be, as documented in the
89 .BR syslog (3)
90 library call.
91
92 Client activity will also be logged through this mechanism.  This
93 includes connect and disconnect (or rejection due to too many
94 simultaneous users), the e-mail address reported as password, and file
95 transfers.  All client commands are logged as sent at the 
96 .B DEBUG 
97 level.  To fully monitor client activity you may configure
98 .BR sysklogd (8)
99 to record these.
100 .SH NOTES
101 .B oftpd
102 does not use 
103 .BR inetd (8)
104 to run.  It is a stand-alone server.  There is no need to configure the 
105 .I /etc/inetd.conf
106 file to run it.  In fact, there should be no entry for FTP there at all.
107
108 You can use the
109 .BR kill (1)
110 command to stop
111 .B oftpd.
112 When the server receives SIGHUP or SIGINT, it will stop listening for
113 new FTP connections, and a new FTP server may be started.  Any existing
114 connections to the old server will continue to function normally until
115 the client disconnects or times out.  After all clients connections have
116 closed, the server will exit.  
117
118 To shutdown the server and close all client connections immediately, use
119 SIGKILL.
120 .SH AUTHOR
121 Shane Kerr <shane@time-travellers.org>
122 .SH "SEE ALSO"
123 .BR ftp (1)
124