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.\" 4. 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.\" $FreeBSD$ 30.\" 31.Dd May 13, 2008 32.Dt SYSLOGD 8 33.Os 34.Sh NAME 35.Nm syslogd 36.Nd log systems messages 37.Sh SYNOPSIS 38.Nm 39.Op Fl 468ACcdkNnosuv 40.Op Fl a Ar allowed_peer 41.Op Fl b Ar bind_address 42.Op Fl f Ar config_file 43.Op Fl l Oo Ar mode : Oc Ns Ar path 44.Op Fl m Ar mark_interval 45.Op Fl P Ar pid_file 46.Op Fl p Ar log_socket 47.Sh DESCRIPTION 48The 49.Nm 50utility reads and logs messages to the system console, log files, other 51machines and/or users as specified by its configuration file. 52.Pp 53The options are as follows: 54.Bl -tag -width indent 55.It Fl 4 56Force 57.Nm 58to use IPv4 addresses only. 59.It Fl 6 60Force 61.Nm 62to use IPv6 addresses only. 63.It Fl 8 64Tells 65.Nm 66not to interfere with 8-bit data. Normally 67.Nm 68will replace C1 control characters 69.Pq ISO 8859 and Unicode characters 70with their 71.Dq M- Ns Em x 72equivalent. 73Note, this option does not change the way 74.Nm 75alters control characters 76.Pq see Xr iscntrl 3 . 77They will always be replaced with their 78.Dq ^ Ns Em x 79equivalent. 80.It Fl A 81Ordinarily, 82.Nm 83tries to send the message to only one address 84even if the host has more than one A or AAAA record. 85If this option is specified, 86.Nm 87tries to send the message to all addresses. 88.It Fl a Ar allowed_peer 89Allow 90.Ar allowed_peer 91to log to this 92.Nm 93using UDP datagrams. 94Multiple 95.Fl a 96options may be specified. 97.Pp 98The 99.Ar allowed_peer 100option may be any of the following: 101.Bl -tag -width "ipaddr/masklen[:service]XX" 102.It Xo 103.Sm off 104.Ar ipaddr 105.No / Ar masklen 106.Op : Ar service 107.Sm on 108.Xc 109Accept datagrams from 110.Ar ipaddr 111(in the usual dotted quad notation) with 112.Ar masklen 113bits being taken into account when doing the address comparison. 114.Ar ipaddr 115can be also IPv6 address by enclosing the address with 116.Ql \&[ 117and 118.Ql \&] . 119If specified, 120.Ar service 121is the name or number of an UDP service (see 122.Xr services 5 ) 123the source packet must belong to. 124A 125.Ar service 126of 127.Ql \&* 128allows packets being sent from any UDP port. 129The default 130.Ar service 131is 132.Ql syslog . 133If 134.Ar ipaddr 135is IPv4 address, a missing 136.Ar masklen 137will be substituted by the historic class A or class B netmasks if 138.Ar ipaddr 139belongs into the address range of class A or B, respectively, or 140by 24 otherwise. 141If 142.Ar ipaddr 143is IPv6 address, a missing 144.Ar masklen 145will be substituted by 128. 146.It Xo 147.Sm off 148.Ar domainname Op : Ar service 149.Sm on 150.Xc 151Accept datagrams where the reverse address lookup yields 152.Ar domainname 153for the sender address. 154The meaning of 155.Ar service 156is as explained above. 157.It Xo 158.Sm off 159.No * Ar domainname Op : Ar service 160.Sm on 161.Xc 162Same as before, except that any source host whose name 163.Em ends 164in 165.Ar domainname 166will get permission. 167.El 168.Pp 169The 170.Fl a 171options are ignored if the 172.Fl s 173option is also specified. 174.It Xo 175.Fl b 176.Sm off 177.Ar bind_address Op : Ar service 178.Sm on 179.Xc 180.It Xo 181.Fl b 182.Sm off 183.Li : Ar service 184.Sm on 185.Xc 186Bind to a specific address and/or port. 187The address can be specified as a hostname, 188and the port as a service name. 189If an IPv6 address is specified, it should be enclosed with 190.Ql \&[ 191and 192.Ql \&] . 193The default 194.Ar service 195is 196.Ql syslog . 197.It Fl C 198Create log files that do not exist (permission is set to 199.Li 0600 ) . 200.It Fl c 201Disable the compression of repeated instances of the same line 202into a single line of the form 203.Dq Li "last message repeated N times" 204when the output is a pipe to another program. 205If specified twice, disable this compression in all cases. 206.It Fl d 207Put 208.Nm 209into debugging mode. 210This is probably only of use to developers working on 211.Nm . 212.It Fl f 213Specify the pathname of an alternate configuration file; 214the default is 215.Pa /etc/syslog.conf . 216.It Fl k 217Disable the translation of 218messages received with facility 219.Dq kern 220to facility 221.Dq user . 222Usually the 223.Dq kern 224facility is reserved for messages read directly from 225.Pa /dev/klog . 226.It Fl m 227Select the number of minutes between 228.Dq mark 229messages; the default is 20 minutes. 230.It Fl N 231Disable binding on UDP sockets. RFC 3164 recommends that outgoing 232syslogd messages should originate from the privileged port, this 233option 234.Em disables 235the recommended behavior. This option inherits 236.Fl s . 237.It Fl n 238Disable dns query for every request. 239.It Fl o 240Prefix kernel messages with the full kernel boot file as determined by 241.Xr getbootfile 3 . 242Without this, the kernel message prefix is always 243.Dq Li kernel: . 244.It Fl p 245Specify the pathname of an alternate log socket to be used instead; 246the default is 247.Pa /var/run/log . 248.It Fl P 249Specify an alternative file in which to store the process ID. 250The default is 251.Pa /var/run/syslog.pid . 252.It Fl S 253Specify the pathname of an alternate log socket for privileged 254applications to be used instead; the default is 255.Pa /var/run/logpriv . 256.It Fl l 257Specify a location where 258.Nm 259should place an additional log socket. 260The primary use for this is to place additional log sockets in 261.Pa /var/run/log 262of various chroot filespaces. 263File permissions for socket can be specified in octal representation 264before socket name, delimited with a colon. 265Path to socket location must be absolute. 266.It Fl s 267Operate in secure mode. 268Do not log messages from remote machines. 269If 270specified twice, no network socket will be opened at all, which also 271disables logging to remote machines. 272.It Fl T 273Always use the local time and date for messages received from the network, 274instead of the timestamp field supplied in the message by the remote host. 275This is useful if some of the originating hosts can't keep time properly 276or are unable to generate a correct timestamp. 277.It Fl u 278Unique priority logging. 279Only log messages at the specified priority. 280Without this option, messages at the stated priority or higher are logged. 281This option changes the default comparison from 282.Dq => 283to 284.Dq = . 285.It Fl v 286Verbose logging. 287If specified once, the numeric facility and priority are 288logged with each locally-written message. 289If specified more than once, 290the names of the facility and priority are logged with each locally-written 291message. 292.El 293.Pp 294The 295.Nm 296utility reads its configuration file when it starts up and whenever it 297receives a hangup signal. 298For information on the format of the configuration file, 299see 300.Xr syslog.conf 5 . 301.Pp 302The 303.Nm 304utility reads messages from the 305.Ux 306domain sockets 307.Pa /var/run/log 308and 309.Pa /var/run/logpriv , 310from an Internet domain socket specified in 311.Pa /etc/services , 312and from the special device 313.Pa /dev/klog 314(to read kernel messages). 315.Pp 316The 317.Nm 318utility creates its process ID file, 319by default 320.Pa /var/run/syslog.pid , 321and stores its process 322ID there. 323This can be used to kill or reconfigure 324.Nm . 325.Pp 326The message sent to 327.Nm 328should consist of a single line. 329The message can contain a priority code, which should be a preceding 330decimal number in angle braces, for example, 331.Sq Aq 5 . 332This priority code should map into the priorities defined in the 333include file 334.In sys/syslog.h . 335.Pp 336For security reasons, 337.Nm 338will not append to log files that do not exist (unless 339.Fl C 340option is specified); 341therefore, they must be created manually before running 342.Nm . 343.Pp 344The date and time are taken from the received message. 345If the format of the timestamp field is incorrect, 346time obtained from the local host is used instead. 347This can be overriden by the 348.Fl T 349flag. 350.Sh FILES 351.Bl -tag -width /var/run/syslog.pid -compact 352.It Pa /etc/syslog.conf 353configuration file 354.It Pa /var/run/syslog.pid 355default process ID file 356.It Pa /var/run/log 357name of the 358.Ux 359domain datagram log socket 360.It Pa /var/run/logpriv 361.Ux 362socket for privileged applications 363.It Pa /dev/klog 364kernel log device 365.El 366.Sh SEE ALSO 367.Xr logger 1 , 368.Xr syslog 3 , 369.Xr services 5 , 370.Xr syslog.conf 5 , 371.Xr newsyslog 8 372.Sh HISTORY 373The 374.Nm 375utility appeared in 376.Bx 4.3 . 377.Pp 378The 379.Fl a , 380.Fl s , 381.Fl u , 382and 383.Fl v 384options are 385.Fx 2.2 386extensions. 387.Sh BUGS 388The ability to log messages received in UDP packets is equivalent to 389an unauthenticated remote disk-filling service, and should probably be 390disabled by default. 391Some sort of 392.No inter- Ns Nm syslogd 393authentication mechanism ought to be worked out. 394To prevent the worst 395abuse, use of the 396.Fl a 397option is therefore highly recommended. 398.Pp 399The 400.Fl a 401matching algorithm does not pretend to be very efficient; use of numeric 402IP addresses is faster than domain name comparison. 403Since the allowed 404peer list is being walked linearly, peer groups where frequent messages 405are being anticipated from should be put early into the 406.Fl a 407list. 408.Pp 409The log socket was moved from 410.Pa /dev 411to ease the use of a read-only root file system. 412This may confuse 413some old binaries so that a symbolic link might be used for a 414transitional period. 415