cross-posted from: https://lemmy.ml/post/12400033 (Thank you https://lemmy.ml/u/Kory !)
I first used Linux about 5 years ago (Ubuntu). Since then, I have tried quite a few distros:
Kali Linux (Use as a secondary)
Linux Mint (Used for a while)
Arch Linux (Could not install)
Tails (Use this often)
Qubes OS (Tried it twice, not ready yet)
Fedora (Current main)
For me, it has been incredibly difficult to find a properly privacy oriented Linux distro that also has ease of use. I really enjoy the GNOME desktop environment, and I am most familiar with Debian. My issue with Fedora is the lack of proper sandboxing, and it seems as though Qubes is the only one that really takes care in sandboxing apps.
Apologies if this is the wrong community for this question, I would be happy to move this post somewhere else. I’ve been anonymously viewing this community after the Rexodus, but this is my first time actually creating a post. Thank you!
UPDATE:
Thank you all so much for your feedback! The top recommended distro by far was SecureBlue, an atomic distro, so I will be trying that one. If that doesn’t work, I may try other atomic distros such as Fedora Atomic or Fedora Silverblue (I may have made an error in my understanding of those two, please correct my if I did!). EndeavourOS was also highly recommended, so if I’m not a fan of atomic distros I will be using that. To @[email protected], your suggestion for Linux Mint Debian Edition with GNOME sounds like a dream, so I may use it as a secondary for my laptop. Thank you all again for your help and support, and I hope this helps someone else too!
Great questions! I’ll try to answer as best I can.
Qubes OS has a very steep learning curve due to its difficult usability, so the answer would be “both”. I am willing to tackle and overcome, but I’m not ready to put in that work yet, if at all.
I have a really funny story regarding threat models. When I first got into privacy 2-3 years ago, I had the goal of getting as deep as I could (the “strictest threat model possible”) and work backwards to find out what I was willing to allow. I succeeded, but because I had gone too deep before I learned what a threat model was, I never made a clear threat model. I have a “subconscious” threat model. I have, over the past week, started working on answering the classic questions. I am trying to protect against “evil” corporations, and such, I must also protect myself against some low level government threats. My threat model “philosophy” is: I will not use a piece of software if it actively goes against me in terms of privacy. Windows, for example, is a pain to try to use while maintaining privacy.
You are the third person to recommend SecureBlue (I’ve been keeping track), and since it is a “Fedora Atomic spin” (Fedora Atomic as well as Atomic distros in general were also recommended three times each), I believe I will switch to it to see how it is. By the way, I love the mention of GrapheneOS, since that will eventually (finances be blessed) be my main mobile OS for the rest of my life. I wish there was a true “Linux alternative to GrapheneOS”.
Thank you for your elaborate answers!
Qubes OS is definitely more involved than the average distro, so I can understand why you feel that way.
Hahaha 🤣, very relatable; I almost wanted to learn SELinux for hardening purposes. Thankfully, Qubes OS exists as my endgame, which deterred (most of) the motivation (and need) to comprehend SELinux in the first place.
We can work with that, though I kindly implore you to further work out your threat model. It will(/should) give you some peace of mind (or at least a security/privacy roadmap on which you can (slowly but steadily) work towards). If I would have to distill your philosophy, it would be something like “be protected from attacks targeted towards low(er) hanging fruit”. Would that be fair?
Great choice! FWIW, I’ve also been on it for a couple of weeks now and I’ve really been enjoying it. Before, I had my own custom image that was built using the (legacy-)template from uBlue. I tried to harden it myself 😅, and I would argue I did and achieved some cool stuff with it. But, it’s very clear that my technical knowledge doesn’t even come close to that of secureblue’s maintainers. I just wish I had rebased earlier 😅.
I definitely agree with that sentiment. Btw, FWIW, I know for a fact that at least one individual that’s associated with GrapheneOS has ‘contributed’ to secureblue.
Hehe, without going into what that actually means and would entail, I agree 😜.
It may help for me to elaborate a bit. My number one enemy (like most) is Google. I have been completely Google free for 1-2 years now (with the exception of YouTube on iOS, as the alternatives ultimately require a Mac to install, which I don’t have), but I haven’t used Google as a search engine in over 4 years. Besides trying to give as little information as possible (I am currently experimenting with setting up a hard firewall block against their IP addresses, if you have any recommendations on how that could be automated, potentially in Python, please let me know), I also try to give as little information to other companies (Microsoft, etc.) as I can. Now, certain authorities have the permission to request data from companies, not just privacy disrespecting ones. That means that part of my threat model entails certain defenses against such agencies, to make it hard enough to correlate that data with my person. I don’t go overboard, in case anyone is worried. I’ve seen the bondage between paranoia and privacy, and I’ve set myself clear boundaries I won’t cross. So, my main goal is to protect against companies trying to collect my data (bleh, how cliche), but it doesn’t hurt to put in place some decent practices in case the world turns for the worst. I am protecting against attacks from the government towards low hanging fruit, but when it comes to large corporations, I don’t play nice.
If you want an overview of my setup, here it is:
Tails occasionally (because it’s fun)
SecureBlue (Soon!)
Tor Browser when using personal accounts (email, Lemmy, etc.)
ProtonVPN on all devices 24/7 except when using Tor (for speed) or large downloads/torrents (may look into Mullvad VPN)
Mullvad browser as a default browser
Librewolf for functionality Mullvad Browser doesn’t have (Yubikeys, etc.)
Firefox for streaming some videos that require a specific DNS configuration (Soon looking into how to put an extreme sandbox on it)
uBlock Origin for all browsers
GrapheneOS (Soon, finances be blessed)
ProtonMail + Anonaddy, use disposable emails for accounts that “don’t matter”
Very, very strong and unique passwords + 2FA/FIDO for everything applicable
As much FOSS software as I can
Signal as my main messenger (to help bridge the gap for my friends) until GrapheneOS, then SimpleX (Please take a look at https://privacyspreadsheet.com/messaging-apps !)
SearXNG as my main search engine (with Google turned on, because my threat model does not go against them collecting data not correlated with me)
Bitwarden as my password manager until GrapheneOS, then KeePass
NextDNS as my DNS resolver (which gets overridden by the VPN’s DNS on iOS)
I’ve come a long way since I first (unknowingly) started my journey in 2019(!)
Thank you for the elaborate clarification! But, perhaps I have to clarify as well; with "be protected from attacks targeted towards low(er) hanging fruit”, I actually meant any mass-surveillance, data collection and plain attacks from governments, corporations and adversaries that don’t qualify as a (more sophisticated) targeted attack.
Great pick! 🤣
I don’t know the complete specifics of your threat model, but if you haven’t yet, then perhaps it’s worth reviewing what Privacy Guides has to say on this. Note, I don’t necessarily view them as the de facto authority, but more often than not, their views hold more truth than falsehood.
Vaild reason to (momentarily) not use Tor, but please consider to review Proton VPN on port forwarding in hopes of alleviating the issue of speed without foregoing the VPN connection.
Unfortunately, at least for torrents, you’re no longer able to rely on Mullvad VPN.
Easiest (and also one of the best options) is probably the use of a VM 😅.
FWIW, since SimpleLogin has been acquired by Proton, there is merit in forsaking Anonaddy for SimpleLogin if decreasing the amount of trusted parties is desired. However, this comes at the cost at moving more into the the direction of putting all your eggs in one basket. So, ultimately, it’s your choice to make.
I hope an offline password manager is involved to some capacity. FWIW, if you’re not doing it yet, you can always uniquely ‘salt’ every password.
I like that SimpleX is less platform-dependent. But it has been hard to let go of Briar. Do you happen to know how they currently fare against each other in security/privacy features (beyond what’s found on the linked spreadsheet)? FWIW, IT security expert Mike Kuketz’ review of SimpleX wasn’t quite raving. Which is in clear contrast to his review on Briar. Of course, substantial time has passed since, but his ‘non-approval’ is something what’s bothering me.
Ah, we’ve found the password manager, KeePass (be it DX/XC) is indeed excellent.
Interesting! Considering my threat model includes my ISP as an enemy, it would make sense for me to use a VPN behind Tor: However my threat model doesn’t care if my ISP knows I am using Tor, as it would only be collecting data uncorrelated with my activities. Although it could cause legal trouble if a presidential threat (for example) over Tor happened at the same time as my usage of Tor. The change I will make is this: I will resume my current usage until I am able to use a paid VPN plan to speed it up.
See above, no paid plan yet ;)
Bleh, and I was really beginning to like them for allowing cash payments!
Fair, although didn’t GNOME Boxes have some sandboxing issues?
I am using Anonaddy for that reason specifically, plus the severe lack of features in SimpleLogin’s free version.
As mentioned, I will switch to KeePass soon. Some of my passwords are stored completely offline, however. Pen and paper never fails, I even dedicated a specific pen for it! On a related note, take a look at this
Once I get an Android phone, I will try out Briar (because I am obsessed with the idea). I personally reached out to SimpleX regarding the spreadsheet, and the response I received back outlined that SimpleX pads the encrypted messages both during transit and in cold storage, which they said a lot of other messengers don’t do. A comment on the original post for the spreadsheet mentions that the spreadsheet doesn’t outline which services route through Tor (which Briar does, of course). The spreadsheet is very thorough, and SimpleX is still a relatively young project, so I don’t have much I can say. I’ve tried using it on iOS, and my friend and I both agree it’s terrible to use sometimes due to lag and choppiness. I currently testflight the app, but still no change. Either way, if you want, you can use SimpleX’s built-in support chat if you want to reach out to the team yourself. They are very friendly and don’t talk like a CEO, but there can be delayed response.
Yep! One related note, KeePass on Tails is outdated for some reason. Have any idea why?
I also planned to add this to my original message: I have never once had a cellular provider, which to me has been the biggest privacy boost since burning Windows at the stake.
Could be; I simply don’t know. Do you recall the exact issue?
Is it something fancy?
TIL. It’s definitely neat. Thank you for that!
Thanks for the elaborate answer!
If I would have to guess, it’s probably because its respective package found in the repos of Debian is outdated. As Tails is based on Debian, it makes sense for them to continue to rely on Debian’s packages as is and only backport security updates. Unfortunately, most of the established distros that are known for taking security, privacy and anonymity very seriously (i.e. Kicksecure, Tails and Whonix) are based on Debian; known for being stable, hence older packages. The exception, Qubes OS, has Fedora 37 (which has gone EOL since last december) in dom0. Though, in Qubes OS’ defense, dom0 is (by default) not directly exposed to the network. And in general is just really fortified; I can’t imagine anyone but state level threat actors to get through that as long as one upholds best practices. Furthermore, the qubes are as modern as you’d want them to be. So, within those, the desired up to date packages can be acquired. Regardless, unsurprisingly, Qubes OS’ approach is (simply) strictly superior over the others.
Very interesting! Is it what’s elaborated upon in this video? If not, would you mind elaborating?
No, sorry. Some Reddit/Lemmy commenter.
No, although invisible ink would be somewhat cool. Have any ideas for a “password pen”?
No problem! :) You can also thank whoever on [email protected] posted it (I wish there was a search box…)
Yikes, any reason for that?
More backstory time! I have never used a cellular carrier, and only watched that video about a month ago (because it didn’t exist prior). The first part of my life was spent electronicless (because kids really shouldn’t have phones… look at me now mom, I’m talking to strangers on the internet by routing through a global censorship circumvention network!). The next part was spent somewhat disconnected, only had access to a non mainstream social media (it has since been merged with another one made by the same company, and became paid. Capitalism.) through WiFi + never went out much. I then finally had unrestricted access, but still never went out much. Then I started to go out much more, and the places I went to didn’t have WiFi. That, in turn, led me to take up network hacking as a hobby. I never managed to hack the network in question (WPA2-E). Finally, I got my first job around the same time I learned about privacy. That meant I had the money to get a cell plan, but I had the knowledge to know why that was a bad idea.
It’s funny, my mother recently called me because she was stressing about trying to find me a carrier (apparently?) and started saying “Your sister offered to add you to her plan if-” and I told her “I don’t want a carrier, but thank you!” and she said “Oh… Well that solves that problem.” and looked very relieved.
Edit: I guess your question is asking ultimately why I don’t want a carrier, and it is due to the points that were also brought up in that video, yes.
Preface: this is written with less care than I do usually. I was writing one of my usual replies, but my phone chose to restart while the text was being written in its browser.
Np. FWIW, I’m using virt-manager anyways.
Definitely! Thanks for the inspiration!
Unfortunately not. I have been completely reliant on KeePass* plus the aforementioned (‘algorithmic’) ‘salt’. But I think a password card and/or invisible pen is definitely worth exploring for passwords I don’t use daily. So, once again, thank you for mentioning those!
Was that rhetorical 😅? I actually found the (presumably) original poster through the search capabilities found on Lemmy.
For a complete answer, let’s go for a trip back in time. Qubes OS’ alpha release happened in April of 2010. The Linux landscape was vastly different then to how it’s today. But, regardless, out of all possible options, a distro would have to be chosen for dom0. And, while none of us has the capability to look into the future, the chosen distro still had to be future-proof (i.e. not be abandoned any time soon). The second criterion was that it should be close to upstream (i.e. not a distro with outdated packages and kernel) for the sake of hardware compatibility (the very same reason for which Linux Mint has recently launched its Edge release). And, on that note, be excellent in terms of hardware/device support. Out of the then prevalent distros, Fedora simply fit all criteria best; Fedora being the community-driven distro to industry giant Red Hat, definitely played a huge role. And, in retrospect, it’s undeniable that picking Fedora was (and still is) a great decision. Honestly, I can’t even think of a better pick… Which is (perhaps) better understood by answering the second question; namely: Why Fedora 37 and not Fedora 38 or Fedora 39? Both of which were already released, while Fedora 37 had just gone EOL release. For that, we need to understand that Qubes OS actually does allow the installation of select packages in dom0, even if it’s regarded as a feature that only more advanced users should look into. As Qubes OS is (by default) a sensibly secure desktop OS, it only makes sense that they have to ensure that packages installed on dom0 are 100% safe and secure. But Qubes OS doesn’t want to waste resources on checking the security integrity of a moving system (i.e. a non-stable/non-EOL release). Thus, by necessity, it has to resort to an EOL release for Fedora. Going back to them picking Fedora in the first place; if we add the criteria that user repositories are undesired and that security should be handled very seriously by the maintainers, then Fedora was and still is the distro to pick.
Thank you so much for the elaborate answer!
I thought I was well integrated into the privacy communities. But it seems that I was wrong; for I was unaware of the specifics until Naomi’s video. Would you mind sharing blogs/sites etc that you find exceptionally useful for finding out about these things?
Hehe, 🤣.
Thanks for the clarification!
No worries, we’ve all been there! Was the restart due to annoying OS features (e.g. Windows used to restart immediately without asking, iOS restarts if your phone is locked and it’s night time, etc.)
No, I’m just blind :,) I found it now
Edit: Here it is!
Until the Rexodus (by the way, I’m apparently the only one to call it that. Please, people, it’s such a good name!), I had simply kept current with every post on r/privacy. I had occasionally read a few old posts, but it was mostly just keeping an eye on what the community was posting about and reading the discussions to learn as much as possible. I have a few old screenshots, like from this post and this one, but besides that it was just miscellaneous posts.
Edit: I found others calling it the Rexodus! Here is one
No you dont haha. I used it in a VM, then on a seperate SSD. In the beginning it was a total mess with random packages removed and we needed to find out ways to disable stuff like printing, so they can be added back.
Btw if you find a reliable way to 100% disable kde-connect, that would be awesome as it could be added back.
override remove
d packages on these images can neither be added back nor resetted, an rpm-ostree bug/issue.Firefox from Fedora now supports using hardened_malloc instead of their jemalloc, so a custom image just adding back Firefox would already work.
After rebasing my ublue kinoite to secureblue I found that Firefox no longer started, lol. Learned how to compile it myself and dug into mozconfigs, really interesting stuff (short: if you optimize too much you break their build for some reason). Now because of weird mercurial stuff it doesnt compile anymore at all, so I use Chromium which sucks a lot.
Also had my system not boot twice, because of shitty Lenovo firmware and then because of the iwlwifi firmware bug.
Aaaand more. At the beginning there was no flatpak support, then only with
bubblewrap-suid
which is controversial and podman is broken, luckily there are userns images now.The hack to use hardened_malloc on Flatpaks is also very nonstandard and electron apps do completely random things it seems (dont use electron, but its everywhere! Nextcloud, mullvadVPN, Signal, Element, …)
Isn’t that supposed to work with BlueBuild (or any custom image tooling)?
You’re strong! I’ve been weak and have (instead) resorted to Librewolf. Initially, I had chosen to stick to Chromium. But, at least for now, I have to use Thunderbird anyways. So, might as well continue the use of Librewolf in the mean time.
I’ve also experienced some issues recently with boot times taking a lot more time than previously. But I’ve since changed some kernel arguments and it has been better since.
This is indeed big; I wouldn’t have been able to make the switch without the userns images.
Thank you for your continued contributions and efforts that go into ever-improving secureblue!
Does Librewolf (RPM) work?
I only know that Chromium browsers use userns or setuid namespaces to isolate tabs. This is not allowed by the flatpak seccomp filter (applied for all apps) which is why bubblejail is a thing. But bubblejail is veeeeery alpha, portals, theming, running random binaries etc all broken or difficult.
Flatpak Chromium browsers use zypak instead, which will have a weaker seccomp filter than the tab sandbox in Chromium (because flatpak apps do more than browser tabs and there is only a single filter for them all).
No idea about firefox, they just support the flatpak without any mention if the sandboxing is better, worse, unaffected etc.
Librewolf builds firefox themselves, if they just add
allow-replace-malloc
or how its called in their mozconfig it works with hardened_malloc. And I think that is the easiest solution. If they dont add that it should probably not launch. Flatpak works for some reason, probably because somehow it doesnt use hardened_malloc.Tbh I want to compile firefox and the kernel with -O4 as I have a x86_64-v4 CPU. They will not do that as people run old hardware.
Thunderbird is the same, btw everything is built on the same codebase. My dream would be to build Firefox, Thunderbird and Torbrowser on COPR (or Github so the Fedora people dont kill me) with hardened configs.
Longer than on vanilla fedora, or longer than before on secureblue? They distrust the hardware and generate random values as far as I understood, also use kernel lockdown mode. Those are important and increase boot times but not performance. Btw also if your CPU is affected by spectre/meltdown attacks it will automatically disable hyperthreading. Very cool karg that should totally be the default.
Yeah secureblue is nice and very needed. Wanted to do something similar (as did a lot of other people) and found qoijjjs awesome ground work. He invests hours in that project, look at the “secureblue Chromium vs Vanadium” table its crazy.
Have not tested it. I rely on the flatpak.
Isn’t bubblejail mostly a frontend to bubblewrap? Therefore, is it perhaps possible that, if well-understood, reliance on bubblewrap instead should translate to a less buggy (but indeed harder) experience?
I’ve often heard that the flatpak Chromium browsers are (somehow) less secure, but never heard why that’s the case. Thank you for offering a very concise explanation on the matter!
WOW, that would be awesome! You’ve already found yourself a ‘client’/‘customer’ :P . And I’m sure that a lot of others would be interested as well.
Yes. To be clear, it’s both longer than on vanilla Fedora Atomic and also longer than before on secureblue.
Reminds me of this project, I wanted to wait until it stabilized…, but it never got that far 😅. But I hope its maintainer will join team secureblue, if they haven’t yet*.
For reference; WOW, we definitely can’t deny their commitment. I feel indebted. Perhaps I should support them 😅. Do you happen to know if there are any other channels besides Github to support them (and the project)?
Bubblejail allows to create different seccomp filters per app. This means you can allow the browsers to create namespaces, which fixes that problem. There are tons of problems though.
Yup needed some time to understand that zypak thing too. I think it boils down to that issue, they will be okay but less secure than possible, so… why not use something else?
Yeah there are a ton of hardening arguments. Currently I cant build that damn stuff anymore because somehow I have missing build deps that I have installed and added to my path 100%.
In this repo I collect my mozconfig, and if everything goes well I will use github builder to make RPMs. That would be lit, because I would have all of them hardened, but for v3 and v4 optimized. Put in a directory, do some rpm repo magic and I have my own repo.
Feel free to help me figure that stuff out. Librewolf has a nice build pipeline, I created a PR to just support replacing the malloc, that would be the easiest and best solution.
Then fedora firefox and librewolf would allow that, only flathub firefox missing really. Replacing the malloc is a very unsupported case for flatpak though, as the apps should be OS-unspecific.
That’s very neat! Hopefully it comes through!
But even with the ability to replace malloc, isn’t Firefox still vastly inferior compared to Chromium if security is desired? Or are they actually operating in close proximity of each other in terms of security features?
Arguable. Chromium is just horrible to use. No sync, that would require something NOT Brave or Vivaldi to step up. Floccus is overcomplicated, xbrowsersync unmaintained.
Firefox had core components rewritten in rust too.
Other commitments are too much right now. But thanks for the offer!
Feels like you fell asleep while you were writing this and didn’t bother to finish it later on hahaha (or simply forgot).
Yes something like that, edited it