freebsd-src/usr.sbin/syslogd/syslogd.8
2001-02-26 09:05:48 +00:00

297 lines
7.6 KiB
Groff

.\" Copyright (c) 1983, 1986, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the University of
.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)syslogd.8 8.1 (Berkeley) 6/6/93
.\" $FreeBSD$
.\"
.Dd October 12, 1995
.Dt SYSLOGD 8
.Os BSD 4.2
.Sh NAME
.Nm syslogd
.Nd log systems messages
.Sh SYNOPSIS
.Nm
.Op Fl 46Adknsuv
.Op Fl a Ar allowed_peer
.Op Fl f Ar config_file
.Op Fl m Ar mark_interval
.Op Fl p Ar log_socket
.Op Fl l Ar path
.Sh DESCRIPTION
The
.Nm
daemon reads and logs messages to the system console, log files, other
machines and/or users as specified by its configuration file.
.Pp
The options are as follows:
.Bl -tag -width indent
.It Fl 4
Forces
.Nm
to use IPv4 addresses only.
.It Fl 6
Forces
.Nm
to use IPv6 addresses only.
.It Fl A
.Nm
tries to send the message to only one address
even if the host has more than one A or AAAA record.
If this option is specified,
.Nm
tries to send the message to all addresses.
.It Fl a Ar allowed_peer
Allow
.Ar allowed_peer
to log to this
.Nm
using UDP datagrams. Multiple
.Fl a
options may be specified.
.Pp
.Ar Allowed_peer
can be any of the following:
.Bl -tag -width "ipaddr/masklen[:service]XX"
.It Xo
.Sm off
.Ar ipaddr
.No / Ar masklen
.Op : Ar service
.Sm on
.Xc
Accept datagrams from
.Ar ipaddr
(in the usual dotted quad notation) with
.Ar masklen
bits being taken into account when doing the address comparison.
.Ar ipaddr
can be also IPv6 address by enclosing the address with
.Ql \&[
and
.Ql \&] .
If specified,
.Ar service
is the name or number of an UDP service (see
.Xr services 5 )
the source packet must belong to. A
.Ar service
of
.Ql \&*
allows packets being sent from any UDP port. The default
.Ar service
is
.Ql syslog .
If
.Ar ipaddr
is IPv4 address, a missing
.Ar masklen
will be substituted by the historic class A or class B netmasks if
.Ar ipaddr
belongs into the address range of class A or B, respectively, or
by 24 otherwise. If
.Ar ipaddr
is IPv6 address, a missing
.Ar masklen
will be substituted by 128.
.It Xo
.Sm off
.Ar domainname Op : Ar service
.Sm on
.Xc
Accept datagrams where the reverse address lookup yields
.Ar domainname
for the sender address. The meaning of
.Ar service
is as explained above.
.It Xo
.Sm off
.No * Ar domainname Op : Ar service
.Sm on
.Xc
Same as before, except that any source host whose name
.Em ends
in
.Ar domainname
will get permission.
.El
.It Fl d
Put
.Nm
into debugging mode. This is probably only of use to developers working on
.Nm .
.It Fl f
Specify the pathname of an alternate configuration file;
the default is
.Pa /etc/syslog.conf .
.It Fl k
Disable the translation of
messages received with facility
.Dq kern
to facility
.Dq user .
Usually the
.Dq kern
facility is reserved for messages read directly from
.Pa /dev/klog .
.It Fl m
Select the number of minutes between
.Dq mark
messages; the default is 20 minutes.
.It Fl n
Disable dns query for every request.
.It Fl p
Specify the pathname of an alternate log socket to be used instead;
the default is
.Pa /var/run/log .
.It Fl l
Specify a location where
.Nm
should place an additional log socket.
Up to 19 additional logging sockets can be specified.
The primary use for this is to place additional log sockets in
.Pa /var/run/log
of various chroot filespaces.
.It Fl s
Operate in secure mode. Do not log messages from remote machines. If
specified twice, no network socket will be opened at all, which also
disables logging to remote machines.
.It Fl u
Unique priority logging. Only log messages at the specified priority.
Without this option, messages at the stated priority or higher are logged.
This option changes the default comparison from
.Dq =>
to
.Dq = .
.It Fl v
Verbose logging. If specified once, the numeric facility and priority are
logged with each locally-written message. If specified more than once,
the names of the facility and priority are logged with each locally-written
message.
.El
.Pp
The
.Nm
daemon reads its configuration file when it starts up and whenever it
receives a hangup signal.
For information on the format of the configuration file,
see
.Xr syslog.conf 5 .
.Pp
The
.Nm
daemon reads messages from the
.Tn UNIX
domain socket
.Pa /var/run/log ,
from an Internet domain socket specified in
.Pa /etc/services ,
and from the special device
.Pa /dev/klog
(to read kernel messages).
.Pp
The
.Nm
daemon creates the file
.Pa /var/run/syslog.pid ,
and stores its process
id there.
This can be used to kill or reconfigure
.Nm .
.Pp
The message sent to
.Nm
should consist of a single line.
The message can contain a priority code, which should be a preceding
decimal number in angle braces, for example,
.Sq Aq 5 .
This priority code should map into the priorities defined in the
include file
.Aq Pa sys/syslog.h .
.Sh FILES
.Bl -tag -width /var/run/syslog.pid -compact
.It Pa /etc/syslog.conf
configuration file
.It Pa /var/run/syslog.pid
process id of current
.Nm
.It Pa /var/run/log
name of the
.Tn UNIX
domain datagram log socket
.It Pa /dev/klog
kernel log device
.El
.Sh SEE ALSO
.Xr logger 1 ,
.Xr syslog 3 ,
.Xr services 5 ,
.Xr syslog.conf 5
.Sh HISTORY
The
.Nm
command appeared in
.Bx 4.3 .
.Pp
The
.Fl a ,
.Fl s ,
.Fl u ,
and
.Fl v
options are
.Fx 2.2
extensions.
.Sh BUGS
The ability to log messages received in UDP packets is equivalent to
an unauthenticated remote disk-filling service, and should probably be
disabled by default. Some sort of
.No inter- Ns Nm syslogd
authentication mechanism ought to be worked out. To prevent the worst
abuse, use of the
.Fl a
option is therefore highly recommended.
.Pp
The
.Fl a
matching algorithm doesn't pretend to be very efficient; use of numeric
IP addresses is faster than domain name comparison. Since the allowed
peer list is being walked linearly, peer groups where frequent messages
are being anticipated from should be put early into the
.Fl a
list.
.Pp
The log socket was moved from
.Pa /dev
to ease the use of a read-only root filesystem.
This may confuse
some old binaries so that a symbolic link might be used for a
transitional period.