Is Fedora the only mainstream desktop distribution to ship with SELinux?
afaik yes, at least the arch kernel has selinux enabled, but you need to install the user space tools from the AUR.
But the profiles are pretty poor and basic AFAIK.
I'm not aware of another one. Some other distros like Ubuntu and OpenSUSE ship AppArmor instead, which does similar things but isn't considered quite as secure.
I know plenty of other popular distros don't ship any Mandatory Access Control system at all which seems like a very bad security practice to me. Same thing with Firewalls.
Nitpick: it's not that AppArmor isn't as secure, it's just that SELinux is more powerful. The security always is up to the profiles.
If you were to compare the policies for Fedora and e.g. Debian, I would assume Fedora has better ones though lol
For sure. I believe Debian's AppArmor integration is a little bit of an afterthought and there's lots of patches missing as Canonical likes to keep many improvements downstream.
yeah, same. I am currently on NixOS, but looking to move away because it's lacking support any MAC. I really love NixOS and it's declarative approach to things, but i can't live with such a large security hole in my home Network.
As soon as i find a Distro that has MAC and allows for at least semi-declarative configuration, i am switching. But being able to declare an env/dconf setting in my config and sync it across all devices is just too powerful
I suggest you check Silverblue + Ansible (or CoreOS/IoT for server stuff).
while i think that ansible is really cool, it's not the same as Nix.
correct me if i'm wrong, but afaik Ansible just modifies the current state of the System with a declarative configuration.
Nix reverts your system back to install and then applies the configuration. The result is that in Nix if i remove something from the configuration.nix it is as if it never existed, whereas on Ansible it stays unless i manually run a task to uninstall it.
Maybe Opensuse?
From what I've found it's not implemented by default.
SELinux will not magically make your system more secure. Desktop insecurity mostly boils down to poor user choices. E.g Granting vscode full access to your home folder and installing some random extension.
Flatpaks and similar "container" tools are the obvious tools to use if you care about desktop security which the Linux ecosystem still generally deems as a lesser priority over being able to gain "rootful" permissions to carry out administrative tasks.
Nothing will make your system magically more secure, but SELinux is of great help when properly set up (as is in the case of Fedora).
Flatpak using either apparmor or selinux
neither, it uses bubblewrap, snap is the one that uses apparmor
Anyone even slightly interested in this, join!
Seriously, I didn't know jack about SELinux before joining the SIG and now I know a little less than jack about it (I tried confining my user and managed to be unable to login to my system)
I'm interested. Can you tell me more about it?
You can just take a look at the links in the thread if you want to start testing, and can help report issues with your experiences in our Pagure repo, I still need to report mine to mnow if it's a thing with GDM or if I just did something wrong
Okay. Also how beneficial would this be for my résumé if I'm trying to get into cyber security field?
A bit dated experience, but I wanted to make a 'simple' web app (nginx/fpm/psql) SELinux compatible in 2014.
After reading the docs, it seemed I needed three layers of configuration just to make a policy. For two ports and two folders, that seemed way too complicated and absolutely not worth it.
I love it and it really makes my Desktop more secure. Switching it off, has lead to installing hostile or insecure software within months. When it was introduced, i felt controlled by it, but actually i saw, what a mess came out of it when i disabled that. Today i feel protected, out of eperience, even if i know shirt about how it exacly works, but i saw stupid software harming my system when it was disabled.
I am curious, do you have an example?
It was written by the NSA, that's enough for me not to trust SELinux.
It's open source and lots of eyeballs have looked at it.
The "many eyes" theory is dead since the NSA backdoor in OpenSSL clearly showed how delusional that belief is. SELinux has never been audited by any trustworthy truly US-independent entity, making it nearly as untrustworthy as closed source. On top of that, there is always The Underhanded C Contest, proving that looking at the source is not enough. You need to be an expert who can detect underhanded backdoors too. – Evi1M4chine Feb 3, 2018 at 13:05
SELinux has long suffered from usability issues. Many commercial software packages require SELinux be disabled.
Fix the docs, improve error messages, and create a GUI to improve usage.
Hate to be the type of person to comment this, but patches more than welcome
for real though, even a small contribution to the docs helps a ton
Is Fedora the only mainstream desktop distribution to ship with SELinux?
afaik yes, at least the arch kernel has selinux enabled, but you need to install the user space tools from the AUR.
But the profiles are pretty poor and basic AFAIK.
I'm not aware of another one. Some other distros like Ubuntu and OpenSUSE ship AppArmor instead, which does similar things but isn't considered quite as secure.
I know plenty of other popular distros don't ship any Mandatory Access Control system at all which seems like a very bad security practice to me. Same thing with Firewalls.
Nitpick: it's not that AppArmor isn't as secure, it's just that SELinux is more powerful. The security always is up to the profiles.
If you were to compare the policies for Fedora and e.g. Debian, I would assume Fedora has better ones though lol
For sure. I believe Debian's AppArmor integration is a little bit of an afterthought and there's lots of patches missing as Canonical likes to keep many improvements downstream.
yeah, same. I am currently on NixOS, but looking to move away because it's lacking support any MAC. I really love NixOS and it's declarative approach to things, but i can't live with such a large security hole in my home Network.
As soon as i find a Distro that has MAC and allows for at least semi-declarative configuration, i am switching. But being able to declare an env/dconf setting in my config and sync it across all devices is just too powerful
I suggest you check Silverblue + Ansible (or CoreOS/IoT for server stuff).
while i think that ansible is really cool, it's not the same as Nix.
correct me if i'm wrong, but afaik Ansible just modifies the current state of the System with a declarative configuration.
Nix reverts your system back to install and then applies the configuration. The result is that in Nix if i remove something from the configuration.nix it is as if it never existed, whereas on Ansible it stays unless i manually run a task to uninstall it.
Maybe Opensuse?
From what I've found it's not implemented by default.
SELinux will not magically make your system more secure. Desktop insecurity mostly boils down to poor user choices. E.g Granting vscode full access to your home folder and installing some random extension.
Flatpaks and similar "container" tools are the obvious tools to use if you care about desktop security which the Linux ecosystem still generally deems as a lesser priority over being able to gain "rootful" permissions to carry out administrative tasks.
Nothing will make your system magically more secure, but SELinux is of great help when properly set up (as is in the case of Fedora).
Flatpak using either apparmor or selinux
neither, it uses bubblewrap, snap is the one that uses apparmor
Anyone even slightly interested in this, join!
Seriously, I didn't know jack about SELinux before joining the SIG and now I know a little less than jack about it (I tried confining my user and managed to be unable to login to my system)
I'm interested. Can you tell me more about it?
You can just take a look at the links in the thread if you want to start testing, and can help report issues with your experiences in our Pagure repo, I still need to report mine to mnow if it's a thing with GDM or if I just did something wrong
Okay. Also how beneficial would this be for my résumé if I'm trying to get into cyber security field?
A bit dated experience, but I wanted to make a 'simple' web app (nginx/fpm/psql) SELinux compatible in 2014.
After reading the docs, it seemed I needed three layers of configuration just to make a policy. For two ports and two folders, that seemed way too complicated and absolutely not worth it.
I love it and it really makes my Desktop more secure. Switching it off, has lead to installing hostile or insecure software within months. When it was introduced, i felt controlled by it, but actually i saw, what a mess came out of it when i disabled that. Today i feel protected, out of eperience, even if i know shirt about how it exacly works, but i saw stupid software harming my system when it was disabled.
I am curious, do you have an example?
It was written by the NSA, that's enough for me not to trust SELinux.
It's open source and lots of eyeballs have looked at it.
It's fine.
Really good points from here:
Maybe but there must be a reason 99% of distributions use AppArmor instead
AppArmor is less complicated. That's the main reason
A backdoor written by NSA was literally found last month
Source?