mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 16:35:02 +01:00

The profile repo is dead since years and most likely won't come back, so there's no point in keeping and maintaining the code for uploading and downloading profiles.
164 lines
4.9 KiB
Text
164 lines
4.9 KiB
Text
# ------------------------------------------------------------------
|
|
#
|
|
# Copyright (C) 2004-2006 Novell/SUSE
|
|
# Copyright (C) 2014 Canonical Ltd.
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of version 2 of the GNU General Public
|
|
# License published by the Free Software Foundation.
|
|
#
|
|
# ------------------------------------------------------------------
|
|
|
|
[settings]
|
|
profiledir = /etc/apparmor.d /etc/subdomain.d
|
|
inactive_profiledir = /usr/share/apparmor/extra-profiles
|
|
logfiles = /var/log/audit/audit.log /var/log/syslog /var/log/messages
|
|
|
|
parser = /sbin/apparmor_parser /sbin/subdomain_parser
|
|
ldd = /usr/bin/ldd
|
|
logger = /bin/logger /usr/bin/logger
|
|
|
|
# customize how file ownership permissions are presented
|
|
# 0 - off
|
|
# 1 - default of what ever mode the log reported
|
|
# 2 - force the new permissions to be user
|
|
# 3 - force all perms on the rule to be user
|
|
default_owner_prompt = 1
|
|
|
|
# custom directory locations to look for #includes
|
|
#
|
|
# each name should be a valid directory containing possible #include
|
|
# candidate files under the profile dir which by default is /etc/apparmor.d.
|
|
#
|
|
# So an entry of my-includes will allow /etc/apparmor.d/my-includes to
|
|
# be used by the yast UI and profiling tools as a source of #include
|
|
# files.
|
|
custom_includes =
|
|
|
|
|
|
[qualifiers]
|
|
# things will be painfully broken if bash has a profile
|
|
/bin/bash = icnu
|
|
/usr/bin/bash = icnu
|
|
/bin/ksh = icnu
|
|
/usr/bin/ksh = icnu
|
|
/bin/dash = icnu
|
|
/usr/bin/dash = icnu
|
|
/bin/zsh = icnu
|
|
/usr/bin/zsh = icnu
|
|
|
|
# these programs can't function if they're confined
|
|
/bin/mount = u
|
|
/usr/bin/mount = u
|
|
/etc/init.d/subdomain = u
|
|
/sbin/cardmgr = u
|
|
/usr/sbin/cardmgr = u
|
|
/sbin/subdomain_parser = u
|
|
/usr/sbin/subdomain_parser = u
|
|
/usr/sbin/genprof = u
|
|
/usr/sbin/logprof = u
|
|
/usr/lib/YaST2/servers_non_y2/ag_genprof = u
|
|
/usr/lib/YaST2/servers_non_y2/ag_logprof = u
|
|
|
|
# these ones shouln't have their own profiles
|
|
/bin/awk = icn
|
|
/usr/bin/awk = icn
|
|
/bin/cat = icn
|
|
/usr/bin/cat = icn
|
|
/bin/chmod = icn
|
|
/usr/bin/chmod = icn
|
|
/bin/chown = icn
|
|
/usr/bin/chown = icn
|
|
/bin/cp = icn
|
|
/usr/bin/cp = icn
|
|
/bin/gawk = icn
|
|
/usr/bin/gawk = icn
|
|
/bin/grep = icn
|
|
/usr/bin/grep = icn
|
|
/bin/gunzip = icn
|
|
/usr/bin/gunzip = icn
|
|
/bin/gzip = icn
|
|
/usr/bin/gzip = icn
|
|
/bin/kill = icn
|
|
/usr/bin/kill = icn
|
|
/bin/ln = icn
|
|
/usr/bin/ln = icn
|
|
/bin/ls = icn
|
|
/usr/bin/ls = icn
|
|
/bin/mkdir = icn
|
|
/usr/bin/mkdir = icn
|
|
/bin/mv = icn
|
|
/usr/bin/mv = icn
|
|
/bin/readlink = icn
|
|
/usr/bin/readlink = icn
|
|
/bin/rm = icn
|
|
/usr/bin/rm = icn
|
|
/bin/sed = icn
|
|
/usr/bin/sed = icn
|
|
/bin/touch = icn
|
|
/usr/bin/touch = icn
|
|
/sbin/killall5 = icn
|
|
/usr/sbin/killall5 = icn
|
|
/usr/bin/find = icn
|
|
/usr/bin/killall = icn
|
|
/usr/bin/nice = icn
|
|
/usr/bin/perl = icn
|
|
/usr/bin/python = icn
|
|
/usr/bin/python2 = icn
|
|
/usr/bin/python2.7 = icn
|
|
/usr/bin/python3 = icn
|
|
/usr/bin/python3.3 = icn
|
|
/usr/bin/python3.4 = icn
|
|
/usr/bin/python3.5 = icn
|
|
/usr/bin/python3.6 = icn
|
|
/usr/bin/python3.7 = icn
|
|
/usr/bin/tr = icn
|
|
|
|
[required_hats]
|
|
^.+/apache(|2|2-prefork)$ = DEFAULT_URI HANDLING_UNTRUSTED_INPUT
|
|
^.+/httpd(|2|2-prefork)$ = DEFAULT_URI HANDLING_UNTRUSTED_INPUT
|
|
|
|
[defaulthat]
|
|
^.+/apache(|2|2-prefork)$ = DEFAULT_URI
|
|
^.+/httpd(|2|2-prefork)$ = DEFAULT_URI
|
|
|
|
[globs]
|
|
# /foo/bar/lib/libbaz.so -> /foo/bar/lib/lib*
|
|
/lib/lib[^\/]+so[^\/]*$ = /lib/lib*so*
|
|
|
|
# strip kernel version numbers from kernel module accesses
|
|
^/lib/modules/[^\/]+\/ = /lib/modules/*/
|
|
|
|
# strip pid numbers from /proc accesses
|
|
^/proc/\d+/ = /proc/*/
|
|
|
|
# if it looks like a home directory, glob out the username
|
|
^/home/[^\/]+ = /home/*
|
|
|
|
# if they use any perl modules, grant access to all
|
|
^/usr/lib/perl5/.+$ = /usr/lib/perl5/**
|
|
^/usr/lib/[^\/]+/perl5?/.+$ = /usr/lib/@{multiarch}/perl{,5}/**
|
|
|
|
# locale foo
|
|
^/usr/lib/locale/.+$ = /usr/lib/locale/**
|
|
^/usr/share/locale/.+$ = /usr/share/locale/**
|
|
|
|
# timezone fun
|
|
^/usr/share/zoneinfo/.+$ = /usr/share/zoneinfo/**
|
|
|
|
# /foobar/fonts/baz -> /foobar/fonts/**
|
|
/fonts/.+$ = /fonts/**
|
|
|
|
# turn /foo/bar/baz.8907234 into /foo/bar/baz.*
|
|
# BUGBUG - this one looked weird because it would suggest a glob for
|
|
# BUGBUG - libfoo.so.5.6.0 that looks like libfoo.so.5.6.*
|
|
# \.\d+$ = .*
|
|
|
|
# some various /etc/security poo -- dunno about these ones...
|
|
^/etc/security/_[^\/]+$ = /etc/security/*
|
|
^/lib/security/pam_filter/[^\/]+$ = /lib/security/pam_filter/*
|
|
^/lib/security/pam_[^\/]+\.so$ = /lib/security/pam_*.so
|
|
|
|
^/etc/pam.d/[^\/]+$ = /etc/pam.d/*
|
|
^/etc/profile.d/[^\/]+\.sh$ = /etc/profile.d/*.sh
|
|
|