~apparmor-dev/apparmor/apparmor-ubuntu-citrain-trusty

« back to all changes in this revision

Viewing changes to profiles/apparmor.d/usr.sbin.apache2

  • Committer: Seth Arnold
  • Date: 2014-03-12 02:05:16 UTC
  • mto: This revision was merged to the branch mainline in revision 1496.
  • Revision ID: seth.arnold@canonical.com-20140312020516-zjike3pmw6hi861h
[ Jamie Strandboge ]
 * debian/debhelper/dh_apparmor: exit with error if aa-easyprof does not
   exist
 * debian/control: drop Depends on apparmor-easyprof to Suggests for
   dh-apparmor
[ Seth Arnold, Jamie Strandboge, Steve Beattie, John Johansen, Tyler Hicks ]
* New upstream snapshot (LP: #1278702, #1061693, #1285653) dropping very
  large Ubuntu delta and fixing the following bugs:
  - Adjust fonts abstraction for libthai (LP: #1278702)
  - Support translated XDG user directories (LP: #1061693)
  - Adjust abstractions/web-data to include /var/www/html (LP: #1285653)
    Refresh 0002-add-debian-integration-to-lighttpd.patch to include
    /etc/lighttpd/conf-available/*.conf
  - Adjust debian/libapparmor1.symbols to reflect new upstream versioning
    for the aa_query_label() function
  - Raise exceptions in Python bindings when something fails
* ship new Python replacements for previous Perl-based tools
  - debian/apparmor-utils.install: remove usr/share/perl5/Immunix/*.pm and add
    usr/sbin/aa-autodep, usr/sbin/aa-cleanprof and usr/sbin/aa-mergeprof
  - debian/control:
    + remove various Perl dependencies
    + add python-apparmor and python3-apparmor
    + python3-apparmor Breaks: apparmor-easyprof to move the file since it
      ships dist-packages/apparmor/__init__.py now
  - debian/apparmor-utils.manpages: ship new manpages for aa-cleanprof and
    aa-mergeprof
  - debian/rules: build and install Python tools
* debian/apparmor.install:
  - install apparmorfs, dovecot, kernelvars, securityfs, sys,
    and xdg-user-dirs tunables and xdg-user-dirs.d directory
* debian/apparmor.dirs:
  - install /etc/apparmor.d/tunables/xdg-user-dirs.d
* debian/apparmor.postinst: create xdg-user-dirs.d
* debian/apparmor.postrm: remove xdg-user-dirs.d
* Remaining patches:
  - 0001-add-chromium-browser.patch
  - 0002-add-debian-integration-to-lighttpd.patch
  - 0003-ubuntu-manpage-updates.patch
  - 0004-libapparmor-layout-deb.patch (renamed from 0008)
  - 0005-libapparmor-mention-dbus-method-in-getcon-man.patch (renamed from
    0068)
  - 0006-etc-writable.patch (renamed from 0070)
  - 0007-aa-utils_are_bilingual.patch (renamed from 0077)
  - 0008-remove-ptrace.patch
  - 0009-convert-to-rules.patch
  - 0010-list-fns.patch
  - 0011-parse-mode.patch
  - 0012-add-decimal-interp.patch
  - 0013-policy_mediates.patch
  - 0014-fix-failpath.patch
  - 0015-feature_file.patch
  - 0016-fix-network.patch
  - 0017-aare-to-class.patch
  - 0018-add-mediation-unix.patch
  - 0019-parser_version.patch
  - 0020-caching.patch
  - 0021-label-class.patch
  - 0022-signal.patch
  - 0023-fix-lexer-debug.patch
  - 0024-ptrace.patch
  - 0025-use-diff-encode.patch
  - 0026-fix-serialize.patch
  - 0027-fix-af.patch
  - 0028-opt_arg.patch
  - 0029-tests-cond-dbus.patch
  - 0030-tests.diff
* Move manpages from libapparmor1 to libapparmor-dev
  - debian/libapparmor-dev.manpages: install aa_change_hat.2,
    aa_change_profile.2, aa_find_mountpoint.2, aa_getcon.2
  - debian/control: libapparmor-dev Replaces: and Breaks: libapparmor1
* Move /usr/lib/python3/dist-packages/apparmor/__init__.py from
  apparmor-easyprof to python3-apparmor
  - debian/control: python3-apparmor Breaks: apparmor-easyprof
  - debian/apparmor-easyprof.install: remove
    usr/lib/python*.*/site-packages/apparmor*
* New profiles and abstractions:
  - debian/apparmor.install: tunables/dovecot, tunables/kernelvars,
    tunables/xdg-user-dirs, tunables/xdg-user-dirs.d
* Test merge from upstream new pyutils branch (rev 2385)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Author: Marc Deslauriers <marc.deslauriers@ubuntu.com>
 
2
 
 
3
#include <tunables/global>
 
4
/usr/sbin/apache2 {
 
5
 
 
6
  # This profile is completely permissive.
 
7
  # It is designed to target specific applications using mod_apparmor,
 
8
  # hats, and the apache2.d directory.
 
9
  #
 
10
  # In order to enable this profile, you must:
 
11
  #
 
12
  # 1- Enable it:
 
13
  #    sudo aa-enforce /etc/apparmor.d/usr.sbin.apache2
 
14
  #
 
15
  # 2- Load the mpm_prefork and mod_apparmor modules:
 
16
  #    sudo a2dismod <other non-prefork mpm>
 
17
  #    sudo a2enmod mpm_prefork
 
18
  #    sudo a2enmod apparmor
 
19
  #    sudo service apache2 restart
 
20
  #
 
21
  # 3- Place an appropriate profile containing the desired hat in the
 
22
  #    /etc/apparmor.d/apache2.d directory.  Such profiles should probably
 
23
  #    include the "apache2-common" abstraction.
 
24
  #
 
25
  # 4- Use the "AADefaultHatName" apache configuration option to specify a
 
26
  #    hat to be used for a given apache virtualhost or "AAHatName" for
 
27
  #    a given apache directory or location directive.
 
28
  #
 
29
  #
 
30
  # There is an example profile for phpsysinfo included in the
 
31
  # apparmor-profiles package. To try it:
 
32
  #
 
33
  # 1- Install the phpsysinfo and the apparmor-profiles packages:
 
34
  #    sudo apt-get install phpsysinfo apparmor-profiles
 
35
  #
 
36
  # 2- Enable the main apache2 profile
 
37
  #    sudo aa-enforce /etc/apparmor.d/usr.sbin.apache2
 
38
  #
 
39
  # 3- Configure apache with the following:
 
40
  #    <Directory /var/www/phpsysinfo/>
 
41
  #        AAHatName phpsysinfo
 
42
  #    </Directory>
 
43
  #
 
44
 
 
45
  #include <abstractions/base>
 
46
  #include <abstractions/nameservice>
 
47
 
 
48
  capability dac_override,
 
49
  capability kill,
 
50
  capability net_bind_service,
 
51
  capability setgid,
 
52
  capability setuid,
 
53
  capability sys_tty_config,
 
54
 
 
55
  / rw,
 
56
  /** mrwlkix,
 
57
 
 
58
 
 
59
  ^DEFAULT_URI {
 
60
    #include <abstractions/base>
 
61
    #include <abstractions/nameservice>
 
62
 
 
63
    / rw,
 
64
    /** mrwlkix,
 
65
 
 
66
  }
 
67
 
 
68
  ^HANDLING_UNTRUSTED_INPUT {
 
69
    #include <abstractions/nameservice>
 
70
 
 
71
    / rw,
 
72
    /** mrwlkix,
 
73
 
 
74
  }
 
75
 
 
76
  # This directory contains web application
 
77
  # package-specific apparmor files.
 
78
 
 
79
  #include <apache2.d>
 
80
 
 
81
  # Site-specific additions and overrides. See local/README for details.
 
82
  #include <local/usr.sbin.apache2>
 
83
}