Как внести директорию в белый список для выполнения с помощью firejail?
В частности, я хотел бы запустить Firefox Nightly в firejail. Но я получаю следующую ошибку:
$ firejail --profile=/etc/firejail/firefox.profile --whitelist=$HOME/software/firefox-nightly ./firefox
Reading profile /etc/firejail/firefox.profile
Reading profile /etc/firejail/whitelist-usr-share-common.inc
Reading profile /etc/firejail/firefox-common.profile
Reading profile /etc/firejail/disable-common.inc
Reading profile /etc/firejail/disable-devel.inc
Reading profile /etc/firejail/disable-exec.inc
Reading profile /etc/firejail/disable-interpreters.inc
Reading profile /etc/firejail/disable-programs.inc
Reading profile /etc/firejail/whitelist-common.inc
Reading profile /etc/firejail/whitelist-var-common.inc
Warning: networking feature is disabled in Firejail configuration file
Parent pid 769552, child pid 769553
Warning: An abstract unix socket for session D-BUS might still be available. Use --net or remove unix from --protocol set.
Post-exec seccomp protector enabled
Seccomp list in: !chroot, check list: @default-keep, prelist: unknown,
Child process initialized in 91.60 ms
Exec failed with error: Permission denied
и тестирование с оболочкой:
$ firejail --profile=/etc/firejail/firefox.profile --whitelist=$HOME/software/firefox-nightly sh
[...]
$ ls -l firefox
-rwxr-xr-x 1 vinc17 vinc17 16928 2020-05-16 13:22:44 firefox
$ ./firefox
sh: 2: ./firefox: Permission denied
Примечание: /etc/firejail/disable-exec.inc
имеет noexec ${HOME}
. Но добавление --ignore='noexec ${HOME}'
сразу после firejail
не дает никакого эффекта. Перемещение каталога в /usr/local
также не дает никакого эффекта.
У меня была та же проблема, поэтому я задал вопрос в репозитории Firejail на GitHub. Вот ответ, который я получил:
Если вы хотите запускать программное обеспечение из дома, вам нужно ignore noexec ${HOME}
и ignore apparmor
.
cat > ~/.config/firejail/firefox-developer-edition.local <<EOF
ignore noexec ${HOME}
ignore apparmor
whitelist ${HOME}/files/Portable/FirefoxDeveloperEdition
EOF
Думаю, для тебя путь был бы немного другим:
whitelist ${HOME}/software/firefox-nightly