1.\" $NetBSD: security.conf.5,v 1.31 2006/05/29 22:07:25 wiz Exp $ 2.\" 3.\" Copyright (c) 1996 Matthew R. Green 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. The name of the author may not be used to endorse or promote products 15.\" derived from this software without specific prior written permission. 16.\" 17.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 22.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 24.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27.\" SUCH DAMAGE. 28.\" 29.Dd May 29, 2006 30.Dt SECURITY.CONF 5 31.Os 32.Sh NAME 33.Nm security.conf 34.Nd daily security check configuration file 35.Sh DESCRIPTION 36The 37.Nm 38file specifies which of the standard 39.Pa /etc/security 40services are performed. 41The 42.Pa /etc/security 43script is run, by default, every night from 44.Pa /etc/daily , 45on a 46.Nx 47system, if configured do to so from 48.Pa /etc/daily.conf . 49.Pp 50The variables described below can be set to "NO" to disable the test: 51.Bl -tag -width check_network 52.It Sy check_passwd 53This checks the 54.Pa /etc/master.passwd 55file for inconsistencies. 56.It Sy check_group 57This checks the 58.Pa /etc/group 59file for inconsistencies. 60.It Sy check_rootdotfiles 61This checks the root users startup files for sane settings of $PATH 62and umask. 63This test is not fail safe and any warning generated from 64this should be checked for correctness. 65.It Sy check_ftpusers 66This checks that the correct users are in the 67.Pa /etc/ftpusers 68file. 69.It Sy check_aliases 70This checks for security problems in the 71.Pa /etc/mail/aliases 72file. 73For backward compatibility, 74.Pa /etc/aliases 75will be checked as well if exists. 76.It Sy check_rhosts 77This checks for system and user rhosts files with "+" in them. 78.It Sy check_homes 79This checks that home directories are owned by the correct user, 80and have appropriate permissions. 81.It Sy check_varmail 82This checks that the correct user owns mail in 83.Pa /var/mail , 84and that the mail box has the right permissions. 85.It Sy check_nfs 86This checks that the 87.Pa /etc/exports 88file does not export filesystems to the world. 89.It Sy check_devices 90This checks for changes to devices and setuid files. 91.It Sy check_mtree 92This runs 93.Xr mtree 8 94to ensure that the system is installed correctly. 95The following configuration files are checked: 96.Bl -tag -width 4n 97.It Pa /etc/mtree/special 98Default files to check. 99.It Pa /etc/mtree/special.local 100Local site additions. 101.It Pa /etc/mtree/DIR.secure 102Specification for the directory 103.Pa DIR . 104.El 105.It Sy check_disklabels 106Backup text copies of the disklabels of available disk drives into 107.Pa /var/backups/work/disklabel.XXX , 108and display any differences in those and the previous copies 109as per 110.Sy check_changelist 111below. 112If 113.Xr fdisk 8 114is available on the current platform, the output of 115.Pa /sbin/fdisk 116for each available disk drive is stored in 117.Pa /var/backups/work/fdisk.XXX , 118and any differences displayed as per the disklabels. 119.It Sy check_pkgs 120This stores a list of all installed pkgs into 121.Pa /var/backups/work/pkgs 122and checks it for any changes. 123.It Sy check_changelist 124This determines a list of files from the contents of 125.Pa /etc/changelist , 126and the output of 127.Ic mtree -D 128for 129.Pa /etc/mtree/special 130and 131.Pa /etc/mtree/special.local . 132For each file in the list it compares the files with their backups in 133.Pa /var/backups/file.current 134and 135.Pa /var/backups/file.backup , 136and displays any differences found. 137The following 138.Xr mtree 8 139.Sy tags 140modify how files are determined from 141.Pa /etc/mtree/special 142and 143.Pa /etc/mtree/special.local : 144.Bl -tag -width exclude -offset indent 145.It exclude 146The entry is ignored; no backups are made and the differences are not 147displayed. 148This includes dynamic or binary files such as 149.Pa /var/run/utmp . 150.It nodiff 151The entry is backed up but the differences are not displayed because 152the contents of the file are sensitive. 153This includes files such as 154.Pa /etc/master.passwd . 155.El 156.El 157.Pp 158The variables described below can be set to modify the tests: 159.Bl -tag -width check_network 160.It Sy check_homes_permit_usergroups 161During the 162.Sy check_homes 163phase, allow the checked files to be group-writable if the group name is 164the same as the username. 165.It Sy check_devices_ignore_fstypes 166Lists filesystem types to ignore during the 167.Sy check_devices 168phase. 169Prefixing the type with a 170.Sq \&! 171inverts the match. 172For example, 173.Ql procfs !local 174will ignore 175.Ql procfs 176type filesystems and filesystems that are not 177.Ql local . 178.It Sy check_devices_ignore_paths 179Lists pathnames to ignore during the 180.Sy check_devices 181phase. 182Prefixing the path with a 183.Sq \&! 184inverts the match. 185For example, 186.Ql /tftp 187will ignore paths under 188.Pa /tftp 189while 190.Ql !/home 191will ignore paths that are not under 192.Pa /home . 193.It Sy check_mtree_follow_symlinks 194During the 195.Sy check_mtree 196phase, instruct mtree to follow symbolic links. 197.It Sy check_passwd_nowarn_shells 198If 199.Sy check_passwd 200is enabled, most warnings will be suppressed for entries whose shells 201are listed in this space-separated list. 202This is of particular value when those shells are not in 203.Pa /etc/shells . 204.It Sy check_passwd_nowarn_users 205If 206.Sy check_passwd 207is enabled, suppress warnings for these users. 208.It Sy check_passwd_permit_nonalpha 209If 210.Sy check_passwd 211is enabled, do not warn about login names which use non-alphanumeric 212characters. 213.It Sy check_passwd_permit_star 214If 215.Sy check_passwd 216is enabled, do not warn about password fields set to 217.Dq * . 218Note that the use of password fields such as 219.Dq *ssh 220is encouraged, instead. 221.It Sy max_grouplen 222If 223.Sy check_group 224is enabled, this determines the maximum permitted length of group names. 225.It Sy max_loginlen 226If 227.Sy check_passwd 228is enabled, this determines the maximum permitted length of login names. 229.It Sy backup_dir 230Change the backup directory from 231.Pa /var/backup . 232.It Sy diff_options 233Specify the options passed to 234.Xr diff 1 235when it is invoked to show changes made to system files. 236Defaults to 237.Dq -u , 238for unified-format context-diffs. 239.It Sy pkgdb_dir 240Change the pkg database directory from 241.Pa /var/db/pkg 242when 243.Sy check_pkgs 244is enabled. 245.It Sy backup_uses_rcs 246Use 247.Xr rcs 1 248for maintaining backup copies of files noted in 249.Sy check_devices , 250.Sy check_disklabels , 251.Sy check_pkgs , 252and 253.Sy check_changelist 254instead of just keeping a current copy and a backup copy. 255.El 256.Sh FILES 257.Bl -tag -width /etc/defaults/security.conf -compact 258.It Pa /etc/defaults/security.conf 259defaults for /etc/security.conf 260.It Pa /etc/security 261daily security check script 262.It Pa /etc/security.conf 263daily security check configuration 264.It Pa /etc/security.local 265local site additions to 266.Pa /etc/security 267.El 268.Sh SEE ALSO 269.Xr daily.conf 5 270.Sh HISTORY 271The 272.Nm 273file appeared in 274.Nx 1.3 . 275The 276.Sy check_disklabels 277functionality was added in 278.Nx 1.4 . 279The 280.Sy backup_uses_rcs 281and 282.Sy check_pkgs 283features were added in 284.Nx 1.6 . 285.Sy diff_options 286appeared in 287.Nx 2.0 ; 288prior to that, traditional-format (context free) diffs were generated. 289