Git Product home page Git Product logo

personal-apparmor-profiles's Introduction

Personal AppArmor profiles

This repository houses a collection of the custom AppArmor profiles I personally use to sandbox applications. I put them online primarily so I could easily fetch them from any machine, but feel free to use them yourself, as everything here is released under the MIT license.

If you feel like contributing, just open up a pull request and hop right in. Contributions are welcome from everyone.

Notes

Profile stability is NOT guaranteed

These profiles can (and mostly like do) contain some mistakes or configurations that make them unsuitable for use in production systems. In addition, the profiles are only guaranteed to work for my specific use cases, and those cases might not be the same as on your system. In short, test the profiles before you put them to use on your systems.

Internet access is not guaranteed

Some applications have the ability extend their capabilities by fetching additional data from the internet. Most profiles disable such functionality. In general, unless internet access is needed to fulfill the primary function of a program, it will be completely disabled.

Only default paths are supported

Many applications allow the user to specify custom paths for file storage and search. Trying to account for all possibilities would only result in not being able to confine an applications access to personal files at all. As such, custom paths are simply not supported any further than perhaps with variables in some profiles.

Static path to resolv.conf is expected

Profiles that need internet access assume that the system's resolv.conf can be found under /etc/resolv.conf and that it's not a symlink to another file. If it is, users need to modify the profiles by hand to match their system's configuration.

Naming scheme

Basic utilities, such as coreutils, findutils, diffutils and binutils have their filenames as bin.*. General user applications have their name as usr.bin.* The actual profile names defined inside the files always match the binary executable's name they are designed for.

AppArmor package profiles

To avoid duplicates, no profiles provided by Arch's "apparmor" package can be found in the repository. This way the custom profiles can be easily integrated into a system without interfering with the package. See the profile list of the package here.

personal-apparmor-profiles's People

Contributors

earthlyskies avatar nobody43 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

nobody43

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.