mirror of
https://github.com/netblue30/firejail.git
synced 2026-05-15 14:16:14 -06:00
[GH-ISSUE #1734] private-etc templates #1174
Labels
No labels
LTS merge
LTS merge
bug
bug
converted-to-discussion
doc-todo
documentation
duplicate
enhancement
file-transfer
firecfg
firejail-in-firejail
firetools
graphics
help wanted
information_old
installation
invalid
modif
moved
needinfo
networking
notabug
notourbug
old-version
overlayfs
packaging
profile-request
pull-request
question
question_old
removal
runtime-permissions
sandbox-ipc
security
stale
wiki
wiki
wontfix
wordpress
workaround
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/firejail#1174
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @SkewedZeppelin on GitHub (Jan 16, 2018).
Original GitHub issue: https://github.com/netblue30/firejail/issues/1734
I've been testing many of the profiles under Fedora 27 and quite a few are broken due to private-etc. See [0], [1], [2]. I think we should try and create some standardized templates for private-etc, test that they work across many distros, and then update all of the profiles. Optionally even create aliases (
private-etc @[template]) to make it easier to maintain.To start:
We also need to figure out when the following are necessary
[0] -
68ccf1efee[1] -
4efa2d8ee1[2] - https://github.com/netblue30/firejail/issues/1724#issuecomment-356993922
@d2s commented on GitHub (Jan 16, 2018):
It might make sense to have an ability to run the test suite on multiple distributions more easily.
Would it make sense to use whole virtual machines, or do Docker containers (or similar) provide enough of help for testing different platforms more frequently? Knowing that different distributions package applications in different ways (and most likely with different compiler settings), there are various ways same applications can work on different systems.
@Fred-Barclay commented on GitHub (Jan 16, 2018):
Great idea @SpotComms!
I'm curious if we always need
localtimeto be included. There are probably some instances like Tor where we might not want to expose the local time inside the sandbox.machine-idis another one that we might not want to include for every profile... but if I understand your post correctly it would only be included for programs that need audio.@SkewedZeppelin commented on GitHub (Jan 16, 2018):
@Fred-Barclay Yes, we definitely need to figure out when localtime and those others are needed. And machine-id does seem to be necessary for PulseAudio now.
@Fred-Barclay commented on GitHub (Jan 16, 2018):
I don't remember - can we use the
machine-idfilter (not the private-etc argument, but the one that spoofs a new /etc/machine-id) and still have working audio?@Fred-Barclay commented on GitHub (Jan 16, 2018):
@SpotComms How about we set up a checklist of distros and programs to test various private-etc filters and programmes so we can do this without duplicating each other's work? Something like
Ubuntu
firefox
vlc
Arch
firefox
vlc
Fedora
firefox
vlc
Debian Stable
firefox
vlc
Debian Sid
firefox
vlc
EDIT: actually it might be better to set up a Project to keep track - what do you think?
@SkewedZeppelin commented on GitHub (Jan 16, 2018):
@Fred-Barclay the checklist is simpler. I'll test the machine-id option right now on Fedora.
Edit:
So I tested machine-id with Lollypop on Fedora
neither = no audio
private-etc machine-id= working audiomachine-id= no audiomachine-idandprivate-etc machine-id= no audioon Arch however, it appears neither are necessary for audio to work
@Fred-Barclay commented on GitHub (Jan 16, 2018):
Hmmm... oh well. I wonder why
machine-idandprivate-etc machine-idbreak audio?Somewhat unrelated question - are you running firejail 0.9.53 on Fedora? I haven't figured out how to build it without errors (see #1583, which we need to get fixed).
@SkewedZeppelin commented on GitHub (Jan 16, 2018):
@Fred-Barclay 0.9.52, I too haven't figured out how to get either of the RPM build scripts to work.
@Fred-Barclay commented on GitHub (Jan 16, 2018):
I wonder how @netblue30 builds the rpms? We could probably figure out how to fix the scripts from that.
@d2s commented on GitHub (Jan 17, 2018):
Is there a visible error message on a terminal if an application (like Firefox, etc.) does not have access to the required files? Could that be used as a part of automated tests in the future, if the issue is happening more frequently?
@topimiettinen commented on GitHub (Jan 17, 2018):
Pulseaudio uses machine id for some purposes, so audio may break in all programs using Pulseaudio with random machine-id.
@smitsohu commented on GitHub (Feb 1, 2018):
For KDE apps, the following seems to be a consensus:
fonts,kde4rc,kde5rc,ld.so.cache,machine-id,xdg. I've tested some apps on Arch, Fedora, Debian, KDE Neon (Ubuntu), and updated their profiles in8aec7694cbWithout
machine-idI found the apps fail to start on Fedora Gnome (with D-Bus error).I omitted
passwdfor now, everything seems to run ok without.... kdenlive already hadpasswdbefore, and I don't feel comfortable dropping it because I'm not overly familiar with the program@smitsohu commented on GitHub (Feb 2, 2018):
It is only a detail, but do we actually needpulsein private-etc? Not that it hurts much to include it, but from my understanding firejail ensures that there is a local client.conf, so the global one in /etc should be always ignored.@smitsohu commented on GitHub (Feb 2, 2018):
I don't know close to anything about
selinux, but it is maybe worth noting that we blacklist /etc/selinux in disable-common.inc@SkewedZeppelin commented on GitHub (Feb 2, 2018):
@smitsohu I agree we might be able to remove pulse and in general blacklist selinux (although some programs do seem to fopen it, they still seem to work without). If possible I'd like to remove passwd and related files.
@smitsohu commented on GitHub (Feb 4, 2018):
Regarding
localtime: The current Apparmor base abstraction contains the followingDo we consider this relevant for us?
On another note, we probably will want to make /etc/dconf available to most Gnome apps, as settings can be locked there and will then override the local configuration (KDE keeps its global overrides in kde4rc, kde5rc and xdg).