|
|
1.1 root 1: .\" Copyright (c) 1985 The Regents of the University of California.
2: .\" All rights reserved.
3: .\"
4: .\" Redistribution and use in source and binary forms are permitted provided
5: .\" that: (1) source distributions retain this entire copyright notice and
6: .\" comment, and (2) distributions including binaries display the following
7: .\" acknowledgement: ``This product includes software developed by the
8: .\" University of California, Berkeley and its contributors'' in the
9: .\" documentation or other materials provided with the distribution and in
10: .\" all advertising materials mentioning features or use of this software.
11: .\" Neither the name of the University nor the names of its contributors may
12: .\" be used to endorse or promote products derived from this software without
13: .\" specific prior written permission.
14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17: .\"
18: .\" @(#)inetd.8 6.6 (Berkeley) 6/24/90
19: .\"
20: .TH INETD 8 "June 24, 1990"
21: .UC 6
22: .SH NAME
23: inetd \- internet ``super\-server''
24: .SH SYNOPSIS
25: .B inetd
26: [
27: .B \-d
28: ] [ configuration file ]
29: .SH DESCRIPTION
30: .I Inetd
31: should be run at boot time by
32: .IR /etc/rc.local .
33: It then listens for connections on certain
34: internet sockets. When a connection is found on one
35: of its sockets, it decides what service the socket
36: corresponds to, and invokes a program to service the request.
37: After the program is
38: finished, it continues to listen on the socket (except in some cases which
39: will be described below). Essentially,
40: .I inetd
41: allows running one daemon to invoke several others,
42: reducing load on the system.
43: .PP
44: Upon execution,
45: .I inetd
46: reads its configuration information from a configuration
47: file which, by default, is
48: .IR /etc/inetd.conf .
49: There must be an entry for each field of the configuration
50: file, with entries for each field separated by a tab or
51: a space. Comments are denoted by a ``#'' at the beginning
52: of a line. There must be an entry for each field. The
53: fields of the configuration file are as follows:
54: .br
55: service name
56: .br
57: socket type
58: .br
59: protocol
60: .br
61: wait/nowait
62: .br
63: user
64: .br
65: server program
66: .br
67: server program arguments
68: .PP
69: The
70: .I service name
71: entry is the name of a valid service in
72: the file
73: .IR /etc/services/ .
74: For ``internal'' services (discussed below), the service
75: name
76: .I must
77: be the official name of the service (that is, the first entry in
78: .IR /etc/services ).
79: .PP
80: The
81: .I socket type
82: should be one of ``stream'', ``dgram'', ``raw'', ``rdm'', or ``seqpacket'',
83: depending on whether the socket is a stream, datagram, raw,
84: reliably delivered message, or sequenced packet socket.
85: .PP
86: The
87: .I protocol
88: must be a valid protocol as given in
89: .IR /etc/protocols .
90: Examples might be ``tcp'' or ``udp''.
91: .PP
92: The
93: .I wait/nowait
94: entry is applicable to datagram sockets only (other sockets should
95: have a ``nowait'' entry in this space). If a datagram server connects
96: to its peer, freeing the socket so
97: .I inetd
98: can received further messages on the socket, it is said to be
99: a ``multi-threaded'' server, and should use the ``nowait''
100: entry. For datagram servers which process all incoming datagrams
101: on a socket and eventually time out, the server is said to be
102: ``single-threaded'' and should use a ``wait'' entry. ``Comsat'' (``biff'')
103: and ``talk'' are both examples of the latter type of
104: datagram server.
105: .I Tftpd
106: is an exception; it is a datagram server that establishes pseudo-connections.
107: It must be listed as ``wait'' in order to avoid a race;
108: the server reads the first packet, creates a new socket,
109: and then forks and exits to allow
110: .I inetd
111: to check for new service requests to spawn new servers.
112: .PP
113: The
114: .I user
115: entry should contain the user name of the user as whom the server
116: should run. This allows for servers to be given less permission
117: than root.
118: The
119: .I server program
120: entry should contain the pathname of the program which is to be
121: executed by
122: .I inetd
123: when a request is found on its socket. If
124: .I inetd
125: provides this service internally, this entry should
126: be ``internal''.
127: .PP
128: The arguments to the server program should be just as they
129: normally are, starting with argv[0], which is the name of
130: the program. If the service is provided internally, the
131: word ``internal'' should take the place of this entry.
132: .PP
133: .I Inetd
134: provides several ``trivial'' services internally by use of
135: routines within itself. These services are ``echo'',
136: ``discard'', ``chargen'' (character generator), ``daytime''
137: (human readable time), and ``time'' (machine readable time,
138: in the form of the number of seconds since midnight, January
139: 1, 1900). All of these services are tcp based. For
140: details of these services, consult the appropriate RFC
141: from the Network Information Center.
142: .PP
143: .I Inetd
144: rereads its configuration file when it receives a hangup signal, SIGHUP.
145: Services may be added, deleted or modified when the configuration file
146: is reread.
147: .SH "SEE ALSO"
148: comsat(8), fingerd(8), ftpd(8), rexecd(8), rlogind(8), rshd(8),
149: telnetd(8), tftpd(8)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.