]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.sbin/syslogd/syslogd.8
libarchive: merge security fix from vendor branch
[FreeBSD/FreeBSD.git] / usr.sbin / syslogd / syslogd.8
1 .\" Copyright (c) 1983, 1986, 1991, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)syslogd.8   8.1 (Berkeley) 6/6/93
29 .\"
30 .Dd July 2, 2018
31 .Dt SYSLOGD 8
32 .Os
33 .Sh NAME
34 .Nm syslogd
35 .Nd log systems messages
36 .Sh SYNOPSIS
37 .Nm
38 .Op Fl 468ACcdFHkNnosTuv
39 .Op Fl a Ar allowed_peer
40 .Op Fl b Ar bind_address
41 .Op Fl f Ar config_file
42 .Op Fl l Oo Ar mode Ns \&: Oc Ns Ar path
43 .Op Fl M Ar fwd_length
44 .Op Fl m Ar mark_interval
45 .Op Fl O Ar format
46 .Op Fl P Ar pid_file
47 .Op Fl p Ar log_socket
48 .Op Fl S Ar logpriv_socket
49 .Sh DESCRIPTION
50 The
51 .Nm
52 utility reads and logs messages to the system console,
53 log files,
54 other
55 machines and/or users as specified by its configuration file.
56 .Pp
57 The options are as follows:
58 .Bl -tag -width indent
59 .It Fl 4
60 Force
61 .Nm
62 to use IPv4 addresses only.
63 .It Fl 6
64 Force
65 .Nm
66 to use IPv6 addresses only.
67 .It Fl 8
68 Tells
69 .Nm
70 not to interfere with 8-bit data.
71 Normally
72 .Nm
73 will replace C1 control characters
74 .Pq ISO 8859 and Unicode characters
75 with their
76 .Dq M- Ns Em x
77 equivalent.
78 Note, this option does not change the way
79 .Nm
80 alters control characters
81 .Pq see Xr iscntrl 3 .
82 They will always be replaced with their
83 .Dq ^ Ns Em x
84 equivalent.
85 .It Fl A
86 Ordinarily,
87 .Nm
88 tries to send the message to only one address
89 even if the host has more than one A or AAAA record.
90 If this option is specified,
91 .Nm
92 tries to send the message to all addresses.
93 .It Fl a Ar allowed_peer
94 Allow
95 .Ar allowed_peer
96 to log to this
97 .Nm
98 using UDP datagrams.
99 Multiple
100 .Fl a
101 options may be specified.
102 .Pp
103 The
104 .Ar allowed_peer
105 option may be any of the following:
106 .Bl -tag -width "ipaddr[/prefixlen][:service]XX"
107 .It Xo
108 .Sm off
109 .Ar ipaddr
110 .Op / Ar masklen
111 .Op \&: Ar service
112 .Pp
113 .Ar ipaddr
114 .Op / Ar prefixlen
115 .Op \&: Ar service
116 .Sm on
117 .Xc
118 Accept datagrams from
119 .Ar ipaddr ,
120 .Ar ipaddr
121 can be specified as an IPv4 address or as an IPv6
122 address enclosed with
123 .Ql \&[
124 and
125 .Ql \&] .
126 If specified,
127 .Ar service
128 is the name or number of an UDP service (see
129 .Xr services 5 )
130 the source packet must belong to.
131 A
132 .Ar service
133 of
134 .Ql \&*
135 accepts UDP packets from any source port.
136 The default
137 .Ar service
138 is
139 .Ql syslog .
140 If
141 .Ar ipaddr
142 is IPv4 address, a missing
143 .Ar masklen
144 will be substituted by the historic class A or class B netmasks if
145 .Ar ipaddr
146 belongs into the address range of class A or B,
147 respectively,
148 or by 24 otherwise.
149 If
150 .Ar ipaddr
151 is IPv6 address,
152 a missing
153 .Ar masklen
154 will be substituted by 128.
155 .It Xo
156 .Sm off
157 .Ar domainname Op \&: Ar service
158 .Sm on
159 .Xc
160 Accept datagrams where the reverse address lookup yields
161 .Ar domainname
162 for the sender address.
163 The meaning of
164 .Ar service
165 is as explained above.
166 .Ar domainname
167 can contain special characters of a shell-style pattern such as
168 .Ql Li \&* .
169 .El
170 .Pp
171 The
172 .Fl a
173 options are ignored if the
174 .Fl s
175 option is also specified.
176 .It Xo
177 .Fl b
178 .Sm off
179 .Ar bind_address Op \&: Ar service
180 .Sm on
181 .Xc
182 .It Xo
183 .Fl b
184 .Sm off
185 .Li \&: Ar service
186 .Sm on
187 .Xc
188 Bind to a specific address and/or port.
189 The address can be specified as a hostname,
190 and the port as a service name.
191 If an IPv6 address is specified, it should be enclosed with
192 .Ql \&[
193 and
194 .Ql \&] .
195 The default
196 .Ar service
197 is
198 .Ql syslog .
199 This option can be specified multiple times to bind to
200 multiple addresses and/or ports.
201 .It Fl C
202 Create log files that do not exist
203 .Pq permission is set to Ql Li 0600 .
204 .It Fl c
205 Disable the compression of repeated instances of the same line
206 into a single line of the form
207 .Dq Li "last message repeated N times"
208 when the output is a pipe to another program.
209 If specified twice,
210 disable this compression in all cases.
211 .It Fl d
212 Put
213 .Nm
214 into debugging mode.
215 This is probably only of use to developers working on
216 .Nm .
217 .It Fl f Ar config_file
218 Specify the pathname of an alternate configuration file;
219 the default is
220 .Pa /etc/syslog.conf .
221 .It Fl F
222 Run
223 .Nm
224 in the foreground,
225 rather than going into daemon mode.
226 This is useful if some other process uses
227 .Xr fork 2
228 and
229 .Xr exec 3
230 to run
231 .Nm ,
232 and wants to monitor when and how it exits.
233 .It Fl H
234 When logging remote messages use hostname from the message (if supplied)
235 instead of using address from which the message was received.
236 .It Fl k
237 Disable the translation of
238 messages received with facility
239 .Dq kern
240 to facility
241 .Dq user .
242 Usually the
243 .Dq kern
244 facility is reserved for messages read directly from
245 .Pa /dev/klog .
246 .It Fl M Ar fwd_length
247 Set the limit on the length of forwarded messages.
248 The minimum is 480 octets.
249 The maximum for RFC 3164 output format is 1024 octets.
250 The default is 1024 octets.
251 .It Fl m Ar mark_interval
252 Select the number of minutes between
253 .Dq mark
254 messages;
255 the default is 20 minutes.
256 .It Fl N
257 Disable binding on UDP sockets.
258 RFC 3164 recommends that outgoing
259 .Nm
260 messages should originate from the privileged port,
261 this option
262 .Em disables
263 the recommended behavior.
264 This option inherits
265 .Fl s .
266 .It Fl n
267 Disable DNS query for every request.
268 .It Fl O Ar format
269 Select the output format of generated log messages.
270 The values
271 .Ar bsd
272 and
273 .Ar rfc3164
274 are used to generate RFC 3164 log messages.
275 The values
276 .Ar syslog
277 and
278 .Ar rfc5424
279 are used to generate RFC 5424 log messages,
280 having RFC 3339 timestamps with microsecond precision.
281 The default is to generate RFC 3164 log messages.
282 .It Fl o
283 Prefix kernel messages with the full kernel boot file as determined by
284 .Xr getbootfile 3 .
285 Without this, the kernel message prefix is always
286 .Dq Li kernel: .
287 .It Fl p Ar log_socket
288 Specify the pathname of an alternate log socket to be used instead;
289 the default is
290 .Pa /var/run/log .
291 When a single
292 .Fl p
293 option is specified,
294 the default pathname is replaced with the specified one.
295 When two or more
296 .Fl p
297 options are specified,
298 the remaining pathnames are treated as additional log sockets.
299 .It Fl P Ar pid_file
300 Specify an alternative file in which to store the process ID.
301 The default is
302 .Pa /var/run/syslog.pid .
303 .It Fl S Ar logpriv_socket
304 Specify the pathname of an alternate log socket for privileged
305 applications to be used instead;
306 the default is
307 .Pa /var/run/logpriv .
308 When a single
309 .Fl S
310 option is specified,
311 the default pathname is replaced with the specified one.
312 When two or more
313 .Fl S
314 options are specified,
315 the remaining pathnames are treated as additional log sockets.
316 .It Fl l Oo Ar mode Ns \&: Oc Ns Ar path
317 Specify a location where
318 .Nm
319 should place an additional log socket.
320 The primary use for this is to place additional log sockets in
321 .Pa /var/run/log
322 of various chroot filespaces.
323 File permissions for socket can be specified in octal representation in
324 .Ar mode ,
325 delimited with a colon.
326 The socket location must be specified as an absolute pathname in
327 .Ar path .
328 .It Fl s
329 Operate in secure mode.
330 Do not log messages from remote machines.
331 If specified twice,
332 no network socket will be opened at all,
333 which also disables logging to remote machines.
334 .It Fl T
335 Always use the local time and date for messages received from the network,
336 instead of the timestamp field supplied in the message by the remote host.
337 This is useful if some of the originating hosts cannot keep time properly
338 or are unable to generate a correct timestamp.
339 .It Fl u
340 Unique priority logging.
341 Only log messages at the specified priority.
342 Without this option,
343 messages at the stated priority or higher are logged.
344 This option changes the default comparison from
345 .Dq =>
346 to
347 .Dq = .
348 .It Fl v
349 Verbose logging.
350 If specified once,
351 the numeric facility and priority are
352 logged with each locally-written message.
353 If specified more than once,
354 the names of the facility and priority are logged with each locally-written
355 message.
356 .Pp
357 This option only affects the formatting of RFC 3164 messages.
358 Messages formatted according to RFC 5424 always include a
359 facility/priority number.
360 .El
361 .Pp
362 The
363 .Nm
364 utility reads its configuration file when it starts up and whenever it
365 receives a hangup signal.
366 For information on the format of the configuration file,
367 see
368 .Xr syslog.conf 5 .
369 .Pp
370 The
371 .Nm
372 utility reads messages from the
373 .Ux
374 domain sockets
375 .Pa /var/run/log
376 and
377 .Pa /var/run/logpriv ,
378 from an Internet domain socket specified in
379 .Pa /etc/services ,
380 and from the special device
381 .Pa /dev/klog
382 .Pq to read kernel messages .
383 .Pp
384 The
385 .Nm
386 utility creates its process ID file,
387 by default
388 .Pa /var/run/syslog.pid ,
389 and stores its process
390 ID there.
391 This can be used to kill or reconfigure
392 .Nm .
393 .Pp
394 The message sent to
395 .Nm
396 should consist of a single line.
397 The message can contain a priority code,
398 which should be a preceding
399 decimal number in angle braces,
400 for example,
401 .Sq Aq 5 .
402 This priority code should map into the priorities defined in the
403 include file
404 .In sys/syslog.h .
405 .Pp
406 For security reasons,
407 .Nm
408 will not append to log files that do not exist
409 .Po unless Fl C
410 option is specified
411 .Pc ;
412 therefore, they must be created manually before running
413 .Nm .
414 .Pp
415 The date and time are taken from the received message.
416 If the format of the timestamp field is incorrect,
417 time obtained from the local host is used instead.
418 This can be overridden by the
419 .Fl T
420 flag.
421 .Sh FILES
422 .Bl -tag -width /var/run/syslog.pid -compact
423 .It Pa /etc/syslog.conf
424 configuration file
425 .It Pa /var/run/syslog.pid
426 default process ID file
427 .It Pa /var/run/log
428 name of the
429 .Ux
430 domain datagram log socket
431 .It Pa /var/run/logpriv
432 .Ux
433 socket for privileged applications
434 .It Pa /dev/klog
435 kernel log device
436 .El
437 .Sh SEE ALSO
438 .Xr logger 1 ,
439 .Xr syslog 3 ,
440 .Xr services 5 ,
441 .Xr syslog.conf 5 ,
442 .Xr newsyslog 8
443 .Sh HISTORY
444 The
445 .Nm
446 utility appeared in
447 .Bx 4.3 .
448 .Pp
449 The
450 .Fl a ,
451 .Fl s ,
452 .Fl u ,
453 and
454 .Fl v
455 options are
456 .Fx 2.2
457 extensions.
458 .Sh BUGS
459 The ability to log messages received in UDP packets is equivalent to
460 an unauthenticated remote disk-filling service,
461 and should probably be disabled by default.
462 Some sort of
463 .No inter- Ns Nm syslogd
464 authentication mechanism ought to be worked out.
465 To prevent the worst abuse,
466 use of the
467 .Fl a
468 option is therefore highly recommended.
469 .Pp
470 The
471 .Fl a
472 matching algorithm does not pretend to be very efficient;
473 use of numeric IP addresses is faster than domain name comparison.
474 Since the allowed peer list is being walked linearly,
475 peer groups where frequent messages are being anticipated
476 from should be put early into the
477 .Fl a
478 list.
479 .Pp
480 The log socket was moved from
481 .Pa /dev
482 to ease the use of a read-only root file system.
483 This may confuse
484 some old binaries so that a symbolic link might be used for a
485 transitional period.