Приветствую! Переполненный желанием принести сообществу красноглазых хоть какую-то пользу, решил выложить для всеобщего пользования профили безопасности AppArmor для постоянно сидящих в сети неугодных Столлману мессенджеров Viber и Telegram. Профили созданы на Kubuntu 16.04 и минимально тестировались (вроде запускаются, то есть) только на ней же. За основу был взят найденный где-то в сети профиль для скайпа. Часть правил осталась от скайпа, и, возможно, не нужна. В тексте профиля следует заменить /raid/downloads/ на нужную папку для загрузки\выгрузки файлов. Предполагается, что Viber ставился deb-пакетом с официального сайта, а Telegram - из ppa, оба в /opt. Мои исходные тексты выкладываются под свободной лицензией PIZZA-WARE. Дальнейшее совершенствование всемерно приветствуется, особенно в части доступа к оборудованию.
Viber:
#include <tunables/global>
/opt/viber/Viber {
#include <abstractions/audio>
#include <abstractions/consoles>
#include <abstractions/dbus>
#include <abstractions/gnome>
#include <abstractions/kde>
#include <abstractions/nameservice>
#include <abstractions/video>
# Executables
/opt/viber/Viber ixmr,
/usr/bin/xdg-open PUxmr,
# Configuration files
owner @{HOME}/.ViberPC/ rw,
owner @{HOME}/.ViberPC/** krw,
# Downloads/uploads directory
/raid/downloads/** krw,
# Libraries and other data
/opt/viber/** mr,
# Shared data
/usr/share/viber/ r,
/usr/share/viber/** r,
# Devices
/dev/ r,
/dev/video[0-9]* mrw,
/dev/nvidia* rw,
# System information
/etc/machine-id r,
@{PROC}/sys/kernel/{ostype,osrelease} r,
@{PROC}/sys/vm/overcommit_memory r,
@{PROC}/[0-9]*/net/arp r,
owner @{PROC}/[0-9]*/cmdline r,
owner @{PROC}/[0-9]*/status r,
owner @{PROC}/[0-9]*/task/ r,
owner @{PROC}/[0-9]*/task/[0-9]*/stat r,
/sys/devices/system/cpu/ r,
/sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_{cur_freq,max_freq} r,
/sys/devices/pci*/*/** r,
/sys/bus/pci/** r,
# This probably should go to appropriate abstractions
owner @{HOME}/.config/fontconfig/fonts.conf r,
owner @{HOME}/.config/gtk-3.0/bookmarks r,
owner @{HOME}/.config/pulse/cookie krw,
owner @{HOME}/.icons/** r,
owner @{HOME}/.kde/share/config/kioslaverc r,
# Denials
deny owner @{HOME}/.mozilla/ r,
deny owner @{HOME}/.mozilla/** r,
deny /sys/devices/virtual/dmi/** r,
}
Telegram:
#include <tunables/global>
/opt/telegram/Telegram {
#include <abstractions/audio>
#include <abstractions/consoles>
#include <abstractions/dbus>
#include <abstractions/gnome>
#include <abstractions/kde>
#include <abstractions/nameservice>
#include <abstractions/video>
# Executables
/opt/telegram/Telegram ixmr,
/usr/bin/xdg-open PUxmr,
# Configuration files
owner @{HOME}/.TelegramDesktop/ rw,
owner @{HOME}/.TelegramDesktop/** krw,
# Downloads/uploads directory
/raid/downloads/** krw,
# Libraries and other data
/opt/telegram/** mr,
# Devices
/dev/ r,
/dev/video[0-9]* mrw,
/dev/nvidia* rw,
# System information
/etc/machine-id r,
@{PROC}/sys/kernel/{ostype,osrelease} r,
@{PROC}/sys/vm/overcommit_memory r,
@{PROC}/[0-9]*/net/arp r,
owner @{PROC}/[0-9]*/cmdline r,
owner @{PROC}/[0-9]*/status r,
owner @{PROC}/[0-9]*/task/ r,
owner @{PROC}/[0-9]*/task/[0-9]*/stat r,
/sys/devices/system/cpu/ r,
/sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_{cur_freq,max_freq} r,
/sys/devices/pci*/*/** r,
/sys/bus/pci/** r,
# This probably should go to appropriate abstractions
owner @{HOME}/.config/fontconfig/fonts.conf r,
owner @{HOME}/.config/gtk-3.0/bookmarks r,
owner @{HOME}/.config/pulse/cookie krw,
owner @{HOME}/.icons/** r,
owner @{HOME}/.kde/share/config/kioslaverc r,
# Denials
deny owner @{HOME}/.mozilla/ r,
deny owner @{HOME}/.mozilla/** r,
deny /sys/devices/virtual/dmi/** r,
}
PS Так же починил профиль для работы openjdk icedtea 8 в Firefox. Если кого интересует - готов выложить.