1.\" $NetBSD: security.conf.5,v 1.29 2005/02/05 15:31:29 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 February 5, 2005 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_mtree_follow_symlinks 179During the 180.Sy check_mtree 181phase, instruct mtree to follow symbolic links. 182.It Sy check_passwd_nowarn_shells 183If 184.Sy check_passwd 185is enabled, most warnings will be suppressed for entries whose shells 186are listed in this space-separated list. 187This is of particular value when those shells are not in 188.Pa /etc/shells . 189.It Sy check_passwd_nowarn_users 190If 191.Sy check_passwd 192is enabled, suppress warnings for these users. 193.It Sy check_passwd_permit_nonalpha 194If 195.Sy check_passwd 196is enabled, do not warn about login names which use non-alphanumeric 197characters. 198.It Sy check_passwd_permit_star 199If 200.Sy check_passwd 201is enabled, do not warn about password fields set to 202.Dq * . 203Note that the use of password fields such as 204.Dq *ssh 205is encouraged, instead. 206.It Sy max_grouplen 207If 208.Sy check_group 209is enabled, this determines the maximum permitted length of group names. 210.It Sy max_loginlen 211If 212.Sy check_passwd 213is enabled, this determines the maximum permitted length of login names. 214.It Sy backup_dir 215Change the backup directory from 216.Pa /var/backup . 217.It Sy diff_options 218Specify the options passed to 219.Xr diff 1 220when it is invoked to show changes made to system files. 221Defaults to 222.Dq -u , 223for unified-format context-diffs. 224.It Sy pkgdb_dir 225Change the pkg database directory from 226.Pa /var/db/pkg 227when 228.Sy check_pkgs 229is enabled. 230.It Sy backup_uses_rcs 231Use 232.Xr rcs 1 233for maintaining backup copies of files noted in 234.Sy check_devices , 235.Sy check_disklabels , 236.Sy check_pkgs , 237and 238.Sy check_changelist 239instead of just keeping a current copy and a backup copy. 240.El 241.Sh FILES 242.Bl -tag -width /etc/defaults/security.conf -compact 243.It Pa /etc/defaults/security.conf 244defaults for /etc/security.conf 245.It Pa /etc/security 246daily security check script 247.It Pa /etc/security.conf 248daily security check configuration 249.It Pa /etc/security.local 250local site additions to 251.Pa /etc/security 252.El 253.Sh SEE ALSO 254.Xr daily.conf 5 255.Sh HISTORY 256The 257.Nm 258file appeared in 259.Nx 1.3 . 260The 261.Sy check_disklabels 262functionality was added in 263.Nx 1.4 . 264The 265.Sy backup_uses_rcs 266and 267.Sy check_pkgs 268features were added in 269.Nx 1.6 . 270.Sy diff_options 271appeared in 272.Nx 2.0 ; 273prior to that, traditional-format (context free) diffs were generated. 274