# RedefIgnoreNone=(no default)
# RedefUser0=(no default)
# RedefUser1=(no default)
+IgnoreMissing=/etc/lvm/archive/.*.vg
+IgnoreMissing=/var/lib/puppet/clientbucket/.*
[Attributes]
##
file=/etc/mtab
file=/etc/ssh_random_seed
file=/etc/asound.conf
-file=/etc/resolv.conf
+file=/etc/bacula/bacula-fd.conf
file=/etc/localtime
file=/etc/ioctl.save
file=/etc/passwd.backup
file=/var/state/samhain/samhain_file
file=/etc/bind/zones/db.debian.net
file=/etc/exim4/bsmtp
-<% if hostname == "geo1" || hostname == "geo2" || hostname == "geo3" -%>
+file=/etc/fake-hwclock.data
+<% if classes.include?("named::geodns") -%>
+file=/etc/bind
file=/etc/bind/named.conf.acl
-file=/etc/bind/named.conf.options
file=/etc/bind/named.conf.local
file=/etc/bind/geodns/named.conf.geo
file=/etc/bind/geodns/recvconf.files
-file=/etc/bind/geodns/db.www.debian.org.SA
-file=/etc/bind/geodns/db.www.debian.org.OC
-file=/etc/bind/geodns/db.www.debian.org.NA
-file=/etc/bind/geodns/db.www.debian.org.EU
-file=/etc/bind/geodns/db.www.debian.org.AS
-file=/etc/bind/geodns/db.www.debian.org.AN
-file=/etc/bind/geodns/db.www.debian.org.AF
-file=/etc/bind/geodns/db.www.debian.org
-file=/etc/bind/geodns/db.security.debian.org.SA
-file=/etc/bind/geodns/db.security.debian.org.OC
-file=/etc/bind/geodns/db.security.debian.org.NA
-file=/etc/bind/geodns/db.security.debian.org.EU
-file=/etc/bind/geodns/db.security.debian.org.AS
-file=/etc/bind/geodns/db.security.debian.org.AN
-file=/etc/bind/geodns/db.security.debian.org.AF
-file=/etc/bind/geodns/db.security.debian.org
-file=/etc/bind/geodns/db.video.debconf.debian.org.EU
-file=/etc/bind/geodns/db.video.debconf.debian.org.AF
-file=/etc/bind/geodns/db.video.debconf.debian.org.OC
-file=/etc/bind/geodns/db.video.debconf.debian.org.SA
-file=/etc/bind/geodns/db.video.debconf.debian.org.AS
-file=/etc/bind/geodns/db.video.debconf.debian.org.NA
-file=/etc/bind/geodns/db.video.debconf.debian.org.AN
-file=/etc/bind/geodns/db.video.debconf.debian.org
<% end -%>
-
+<% if classes.include?("named") -%>
+file=/etc/bind/named.conf.options
+<% end -%>
+file=/etc/apache2/conf.d/puppet-builddlist
+<% if classes.include?("roles::static_mirror") -%>
+file=/etc/apache2/sites-available/static-vhosts-simple
+file=/etc/static-clients.conf
+<% elsif classes.include?("roles::static_master") -%>
+file=/etc/static-clients.conf
+<% elsif classes.include?("roles::static_source") -%>
+file=/etc/static-clients.conf
+<% end -%>
+<% if classes.include?("apache2") -%>
+file=/etc/apache2/conf-available/puppet-ssl-key-pins.conf
+<% end -%>
+file=/etc/multipath/wwids
+<%- if has_variable?("bgpd") && @bgpd -%>
+file=/etc/quagga/bgpd.conf
+<% end -%>
+<%- if has_variable?("zebra") && @zebra -%>
+file=/etc/quagga/zebra.conf
+<% end -%>
#
# There are files in /etc that might change, thus changing the directory
file=/etc/network/run
file=/etc/bind/zones
file=/etc/spamassassin/sa-update-keys
+file=/etc/init.d/.depend.boot
+file=/etc/init.d/.depend.start
+file=/etc/init.d/.depend.stop
# These are the directories for the files we handle with puppet
+<% if classes.include?("apache2") -%>
+file=/etc/apache2/conf-available
+files=/etc/apache2/mods-enabled
+files=/etc/apache2/sites-available
+<% end -%>
+file=/etc/bacula
file=/etc/samhain
file=/etc/munin
+file=/etc/munin/plugins
+file=/etc/munin/plugin-conf.d
+file=/etc/munin/munin-conf.d
file=/etc/exim4
file=/etc/exim4/ssl
+file=/etc/exim4/conf.d
file=/etc/apt
file=/etc/apt/apt.conf.d
file=/etc/apt/sources.list.d
+file=/etc/apt/preferences.d
file=/etc/default
file=/etc/logrotate.d
file=/etc/nagios
file=/etc/nagios/nrpe.d
file=/etc/nagios/obsolete-packages-ignore.d
file=/etc/bind/geodns
-<%= extradir=""
-case fqdn
-when "spohr.debian.org": extradir="file=/etc/nagios3/puppetconf.d
-file=/etc/puppet"
-else extradir="file=/etc/puppet"
-end
-extradir
-%>
+<% if scope.function_has_role(['nagiosmaster']) -%>
+file=/etc/nagios3/puppetconf.d
+<% end -%>
+file=/etc/puppet
file=/etc/cron.d
+file=/etc/cron.weekly
file=/usr/lib/nagios/plugins
file=/usr/sbin
file=/etc/monit
file=/etc/monit/monit.d
file=/etc/pam.d
+file=/etc/schroot/default
+file=/etc/schroot/dsa
+file=/etc/schroot/dsa/default-mirror
+file=/etc/schroot/setup.d
+file=/etc/sysctl.d
file=/etc/syslog-ng
+file=/etc/stunnel
+file=/etc/ferm/
+file=/etc/ferm/conf.d
+file=/etc/ferm/dsa.d
+file=/etc/rc.local
+file=/etc/unbound
+file=/etc/dsa
+file=/etc/rabbitmq
+<% if scope.function_has_role(['static_mirror']) or scope.function_has_role(['static_source']) or scope.function_has_role(['static_master']) -%>
+file=/etc/ssh/userkeys
+file=/etc/ssh/userkeys/staticsync
+<% end -%>
+<% if scope.function_has_role(['ssh.upload.d.o']) -%>
+file=/etc/ssh/userkeys/buildd-uploader
+<% end -%>
+<% if scope.function_has_role(['buildd_master']) -%>
+file=/etc/ssh/userkeys/wb-buildd.more
+<% end -%>
+file=/etc/rsyncd
+<%- if @hostname == "sibelius" then -%>
+file=/etc/tsm
+file=/etc/tsm/TSM.PWD
+<% end -%>
+file=/etc/ssl/private
[LogFiles]
##
## for these files, changes in signature, timestamps, and size are ignored
##
-file=/var/run/utmp
file=/etc/motd
+# is on tmpfs, ignore.
+#file=/var/run/utmp
#####################################################################
[IgnoreAll]
+dir=-1/srv
##
## for these files, no modifications are reported
##
## This file might be created or removed by the system sometimes.
##
+file=/etc/resolv.conf
+<% if scope.lookupvar('site::nodeinfo')['buildd'] -%>
+file=/etc/dupload.conf
+file=/etc/buildd/buildd.conf
+file=/etc/sbuild/sbuild.conf
+<% end -%>
file=/etc/resolv.conf.pcmcia.save
file=/etc/nologin
file=/etc/postfix/debian.db
file=/etc/resolv.conf.dhclient-new
# We handle these files with puppet - please to not be bothering us
+file=/etc/dsa/pubsub.conf
+file=/etc/nsswitch.conf
file=/etc/timezone
file=/etc/motd.tail
+file=/etc/update-motd.d/
+file=/etc/update-motd.d/puppet-motd
+file=/etc/ntp.conf
file=/etc/samhain/samhainrc
file=/etc/munin/munin-node.conf
+file=/etc/munin/plugin-conf.d/munin-node
+dir=2/etc/munin/munin-conf.d
file=/etc/userdir-ldap.confc
file=/etc/exim4/blacklist
file=/etc/exim4/host_blacklist
file=/etc/exim4/localusers
file=/etc/exim4/manualroute
file=/etc/exim4/rbllist
-file=/etc/exim4/rcpthosts
file=/etc/exim4/rhsbllist
+file=/etc/exim4/submission-domains
file=/etc/exim4/virtualdomains
+file=/etc/exim4/email-virtualdomains
file=/etc/exim4/whitelist
-file=/etc/exim4/local-auto.conf
file=/etc/exim4/local-settings.conf
file=/etc/exim4/ssl/ca.crt
file=/etc/exim4/ssl/ca.crl
file=/etc/exim4/ssl/thishost.crt
file=/etc/exim4/ssl/thishost.key
+dir=3/etc/exim4/email-virtualdomains
+file=/etc/ssh/ssh_config
+file=/etc/ssh/sshd_config
+file=/etc/dsa/cron.ignore.dsa-puppet-stuff
+file=/etc/vsftpd.conf
+file=/etc/aliases
+file=/etc/multipath.conf
+file=/etc/static-components.conf
+file=/etc/rabbitmq/rabbitmq.config
+file=/etc/rabbitmq/enabled_plugins
+dir=/etc/bacula/storages-list.d
+dir=/etc/bacula/storage-conf.d
+dir=/etc/bacula/conf.d
<%=
out=""
-if not nodeinfo['heavy_exim'].empty?
+if scope.lookupvar('site::nodeinfo')['heavy_exim']
out = '
file=/etc/exim4/surbl_whitelist.txt
file=/etc/exim4/exim_surbl.pl
end
out
%>
+file=/etc/munin/plugins/bind
+file=/etc/munin/plugins/bind_views
+file=/etc/munin/plugins/cpu
+file=/etc/munin/plugins/df
+file=/etc/munin/plugins/df_abs
+file=/etc/munin/plugins/df_inode
+file=/etc/munin/plugins/entropy
+file=/etc/munin/plugins/forks
+file=/etc/munin/plugins/interrupts
+file=/etc/munin/plugins/iostat
+file=/etc/munin/plugins/irqstats
+file=/etc/munin/plugins/load
+file=/etc/munin/plugins/memory
+file=/etc/munin/plugins/ntp_offset
+file=/etc/munin/plugins/ntp_states
+file=/etc/munin/plugins/open_files
+file=/etc/munin/plugins/open_inodes
+file=/etc/munin/plugins/processes
+file=/etc/munin/plugins/ps_apache2
+file=/etc/munin/plugins/ps_exim4
+file=/etc/munin/plugins/ps_vsftpd
+file=/etc/munin/plugins/spamassassin
+file=/etc/munin/plugins/swap
+file=/etc/munin/plugins/uptime
+file=/etc/munin/plugins/vmstat
+file=/etc/munin/plugins/vfstpd
+file=/etc/munin/plugins/apache_accesses
+file=/etc/munin/plugins/apache_processes
+file=/etc/munin/plugins/apache_volume
+file=/etc/munin/plugins/apache_servers
+file=/etc/munin/plugins/exim_mailqueue
+file=/etc/munin/plugins/exim_mailstats
+file=/etc/munin/plugins/postfix_mailqueue
+file=/etc/munin/plugins/postfix_mailvolume
+file=/etc/apache2/conf.d/resource-limits
+file=/etc/apache2/mods-enabled/info.conf
+file=/etc/apache2/mods-enabled/info.load
+file=/etc/apache2/mods-enabled/server.conf
+file=/etc/apache2/mods-enabled/server.load
+file=/etc/apache2/conf.d/server-status
+file=/etc/apache2/conf.d/local-serverinfo
+file=/etc/apache2/sites-available/www.debian.org
file=/etc/apt/preferences
file=/etc/apt/sources.list.d/volatile.list
file=/etc/apt/sources.list.d/security.list
-file=/etc/apt/sources.list.d/buildd.list
+file=/etc/apt/sources.list.d/geoip.list
+file=/etc/apt/sources.list.d/backports.debian.org.list
file=/etc/apt/sources.list.d/debian.org.list
-file=/etc/apt/sources.list.d/debian.restricted.list
+file=/etc/apt/sources.list.d/db.debian.org.list
+file=/etc/apt/sources.list.d/db.debian.org.restricted.list
file=/etc/apt/sources.list.d/debian.list
file=/etc/apt/sources.list.d/backports.org.list
+file=/etc/apt/apt.conf.d/local-compression
file=/etc/apt/apt.conf.d/local-recommends
file=/etc/apt/apt.conf.d/local-pdiffs
+file=/etc/apt/apt.conf.d/local-ssl-ca-global
+file=/etc/apt/preferences.d/buildd
file=/etc/puppet/puppet.conf
file=/etc/default/puppet
file=/etc/default/postgrey
+file=/etc/default/syslog-ng
file=/etc/logrotate.d/exim4-paniclog
file=/etc/logrotate.d/exim4-base
file=/etc/logrotate.d/syslog-ng
file=/etc/nagios/nrpe.d/debianorg.cfg
file=/etc/nagios/obsolete-packages-ignore
file=/etc/nagios/obsolete-packages-ignore.d/hostspecific
+file=/etc/nagios/check-libs.conf
file=/usr/lib/nagios/plugins/dsa-check-packages
file=/usr/lib/nagios/plugins/dsa-check-soas
file=/usr/lib/nagios/plugins/dsa-check-mirrorsync
file=/usr/lib/nagios/plugins/dsa-check-raid-sw
file=/usr/lib/nagios/plugins/dsa-update-samhain-status
file=/etc/sudoers
+file=/etc/stunnel/puppet-ekeyd-peer.pem
+file=/etc/stunnel/puppet-ekeyd.conf
file=/etc/pam.d/sudo
file=/etc/monit/monitrc
file=/etc/monit/monit.d/01puppet
file=/etc/monit/monit.d/00debian.org
file=/etc/cron.d/dsa-puppet-stuff
-<%= extrafiles=""
-case fqdn
-when "spohr.debian.org": extrafiles="file=/etc/nagios3/puppetconf.d/auto-hostgroups.cfg
+file=/etc/cron.weekly/stunnel-ekey-restart
+file=/etc/default/schroot
+file=/etc/schroot/default/nssdatabases
+file=/etc/schroot/setup.d/99builddsourceslist
+file=/etc/schroot/setup.d/99porterbox-extra-sources
+file=/etc/schroot/setup.d/99porterbox-extra-apt-options
+file=/etc/openvswitch/conf.db
+
+<% if scope.function_has_role(['nagiosmaster']) -%>
+file=/etc/nagios3/puppetconf.d/auto-hostgroups.cfg
file=/etc/nagios3/puppetconf.d/auto-hosts.cfg
file=/etc/nagios3/puppetconf.d/auto-services.cfg
file=/etc/nagios3/puppetconf.d/auto-dependencies.cfg
file=/etc/nagios3/puppetconf.d/auto-hostextinfo.cfg
-file=/etc/nagios3/puppetconf.d/auto-serviceextinfo.cfg"
-when "handel.debian.org": extrafiles="dir=8/etc/puppet"
-when "dijkstra.debian.org": extrafiles="dir=4/etc/dsa-kvm"
-end
-extrafiles
-%>
+file=/etc/nagios3/puppetconf.d/auto-serviceextinfo.cfg
+file=/etc/nagios3/puppetconf.d/auto-servicegroups.cfg
+file=/etc/nagios3/puppetconf.d/contacts.cfg
+<% end -%>
+<% if scope.function_has_role(['muninmaster']) -%>
+file=/etc/munin/munin.conf
+<% end -%>
+<% if scope.function_has_role(['puppetmaster']) -%>
+dir=8/etc/puppet
+<% end -%>
+<% if classes.include?('named::geodns') -%>
+dir=1/etc/bind/geodns
+<% end -%>
+<% if classes.include?('named::authoritative') -%>
+dir=1/etc/bind
+file=/etc/bind/named.conf.debian-zones
+<% end -%>
+dir=3/etc/lvm/archive
+dir=3/etc/lvm/backup
+dir=1/etc/ferm/dsa.d
+dir=1/etc/ferm/conf.d
+dir=3/etc/facter
+file=/etc/ferm/conf.d/me.conf
+file=/etc/ferm/conf.d/defs.conf
+file=/etc/ferm/ferm.conf
+file=/etc/ssl/README
+dir=2/etc/ssl/debian
+dir=1/etc/ssl/certs
+dir=1/etc/ssl/ca-debian
+dir=1/etc/ssl/ca-global
+file=/etc/ca-certificates.conf
+file=/etc/ca-certificates-debian.conf
+file=/etc/ca-certificates-global.conf
+file=/etc/ssl/private/ssl-cert-snakeoil.key
+file=/etc/unbound/unbound.conf
+<% if scope.lookupvar('::fqdn') == "draghi.debian.org" -%>
+file=/etc/openvpn/deb-mgmt-clients.pool
+<% end -%>
+file=/etc/rsyncd/debian.secrets
+
+
+<% if scope.function_has_role(['puppetmaster']) %>
+
+# Damn you rails apps and your shoddy packaging
+file=/usr/share/puppet-dashboard/public/stylesheets
+file=/usr/share/puppet-dashboard/public/javascripts
+file=/usr/share/puppet-dashboard/public/stylesheets/all.css
+file=/usr/share/puppet-dashboard/public/javascripts/all.js
+dir=1/usr/share/puppet-dashboard/tmp/pids
+<% end -%>
+
+<% if classes.include?("porterbox") %>
+file=/etc/cron.weekly/puppet-mail-big-homedirs
+<% end -%>
+file=/etc/ssl/private/*.key-certchain
+dir=10/var/lib/puppet/clientbucket
[IgnoreNone]
##
## for these files, only access time is ignored
##
dir=/usr/bin
+<%- if has_variable?("merged_usr") && @merged_user -%>
+file=/bin
+<% else -%>
dir=/bin
+<% end -%>
dir=/boot
#
# SuSE (old) has the boot init scripts in /sbin/init.d/*,
# so we go 3 levels deep
#
+<%- if has_variable?("merged_usr") && @merged_user -%>
+file=/lib
+file=/sbin
+<% else -%>
dir=3/sbin
-dir=/usr/sbin
dir=/lib
+<% end -%>
+dir=/usr/sbin
dir=3/usr/lib
+dir=3/usr/share
#
# RedHat and Debian have the bootinit scripts in /etc/init.d/* or /etc/rc.d/*,
# so we go 3 levels deep there too
PrintSeverity=none
LogSeverity=info
SyslogSeverity=alert
-ExportSeverity=none
+#ExportSeverity=none
#
#####################################################
-# [SuidCheck]
+[SuidCheck]
##
## --- Check the filesystem for SUID/SGID binaries
##
-## Switch on
+## Switch off
#
-# SuidCheckActive = yes
+SuidCheckActive = 0
## Interval for check (seconds)
#
## Switch on/off
#
-KernelCheckActive = True
+#KernelCheckActive = True
## Check interval (seconds); btw., the check is VERY fast
#
## Switch on/off
#
-LoginCheckActive = True
+# LoginCheckActive = True
## Severity for logins, multiple logins, logouts
#
#
# SetDefault = no
+<% if scope.call_function('versioncmp', [@lsbmajdistrelease, '9']) >= 0 -%>
+[PortCheck]
+PortCheckActive=0
+<% end -%>
+
#####################################################
#
## Recipient (max. 8)
#
-SetMailAddress=samhain-reports@debian.org
+SetMailAddress=samhain-reports@<%= @fqdn -%>
-## Mail relay (IP address)
-<%=
-out=""
-if not nodeinfo['smarthost'].empty?
- out = '
SetMailRelay = localhost
-'
-else
-out = '
-SetMailRelay = master.debian.org
-'
-end
-out
-%>
+
## Custom subject format
#
MailSubject = [Samhain at %H] %T: %S