this post was submitted on 28 Sep 2023
55 points (91.0% liked)

Linux

45488 readers
2070 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Hi! I want to try out fedora workstation in the near future (once 39 is out) and was wondering if systemd-homed is ready for everyday use yet.

I'm a bit paranoid and really need my private data encrypted. However, I don't think that full disk encryption is practical for my daily use. Therefore I was really looking forward to the encryption possibilities of systemd-homed.

However, after reading up on it, I was a bit discouraged. AFAIK, there's no option to setup systemd-homed at installation (of fedora). I was an Arch then Manjaro, then Endeavour user for years but don't have the time/patience anymore to configure major parrts of my system anymore. Also, the documentation doesn't seem too noob-friendly to me, which also plays into the time/patience argument.

Is it ready? Can anyone seriously recommend it for a lazy ex-Arch user who doesn't want to break another linux installation?

Thank you in advance. :)

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 27 points 9 months ago (12 children)

To go back to basics, why is FDE not suitable for your needs?

[–] vector_zero 24 points 9 months ago (6 children)

I second this.

Full disk encryption is entirely practical for everyday use. If you don't already have a dedicated TPM, your motherboard/CPU may provide a software TPM (fTPM?). If so, you don't even have to interact with the machine during boot. It's just a bit slower to start up (by a few seconds), which really isn't a big issue for your average user.

[–] [email protected] 14 points 9 months ago* (last edited 9 months ago) (2 children)

Pardon my ignorance here, but I don't get it how is the whole thing still safe with unlocking from TPM instead of me providing the password at boot time?

Considering now anyone can just boot the machine into the installed system then bruteforce/exploit something to get login/get read permissions and make a plain copy of the data?
Where, without tpm, as long as I do not type in the encryption password myself I have a pretty high guarantee that the data is safe, especially when I am not at the (powered down) computer.

[–] [email protected] 10 points 9 months ago (1 children)

This is what I don't understand either. It seems like with tpm it only protects the data from someone taking or copying the hard drive, but the bigger risk seems like what you describe

plus, using an encryption password and then automatically logging in the user prevents needing to enter two passwords while still keeping the data secure as long as the machine is off

[–] [email protected] 3 points 9 months ago

You have a competent grasp of the situation

[–] vector_zero 5 points 9 months ago (1 children)

The idea behind it is that the files are stored encrypted at rest, which is really what you want, because once a system is booted, you have to play by the computer's rules (respect file permissions, policies, etc.).

The TPM provides a secure mechanism to provide a decryption key to the computer during boot, eliminating the need for direct interaction.

Could it be compromised? Probably, but it would take considerably more effort than a man-in-the-middle on your keyboard via a logic analyzer.

[–] [email protected] 2 points 9 months ago (1 children)

This is a common misunderstanding insofar as how encryption works. You can't flick a bit and TURN your storage unencrypted nor can you plausibly make your computer obey restrictions.

If your storage is encrypted it remains encrypted always including the file you have open right now. Your takes a plausibly length usable string and uses it to compute or retrieve the long binary number actually needed to decrypt your files. This number is stored in memory such that encrypted files can be decrypted when read into memory.

Once that key is loaded in memory anyone with 10 minutes and access to google could trivially unlock your computer in several different ways. It is virtually exactly like having no security whatsoever.

If you don't actually enter a passphrase to unlock you have no meaningful security against anything but the most casual unmotivated snooping.

Your little sister might not be motivated enough to read your diary but the dipstick that stole your laptop will definitely be spending your money.

[–] vector_zero 7 points 9 months ago (1 children)

Once that key is loaded in memory anyone with 10 minutes and access to google could trivially unlock your computer in several different ways. It is virtually exactly like having no security whatsoever.

I highly doubt it.

If you have any tips for how I can personally bypass my computer's encryption in 10 minutes without being able to login, I'd love to try my hand at it.

[–] [email protected] 4 points 9 months ago (1 children)

You aren't actually asking to how to bypass encryption because the key is already in memory. You are asking about the much simpler task of compromising a computer with physical access to same. Depending on configuration this can be as ridiculous as killing the lockscreen process or as hard as physically opening the case chilling the contents of ram enough that data survives transfer to different physical hardware. See also the massive attack surface of the USB stack.

[–] vector_zero 1 points 9 months ago (1 children)

That doesn't sound trivial at all.

[–] [email protected] 5 points 9 months ago (3 children)

On most systems you can press a hotkey in grub to edit the Linux command line that will be booted and in about 7 keystrokes gain access to any unlocked filesystem. Asking how you can break into a system you physically control is like asking how many ways you could break into a house supposing you had an hour alone with a crowbar the answers are legion. No machine in someone else's hand which is unlocked can possibly be deemed secure.

Even dumber no installer will create such an insecure configuration because the people that design Linux installers are smarter than you.

[–] [email protected] 3 points 9 months ago* (last edited 9 months ago) (4 children)

I'm not advocating for this right now, but yes that is why when using TPM password, one must insure to enable secure boot, enable bios password, disable boot media, and disable grub editing. That's the recommended proceedure for this setup.

This is essentially how HEADs works too. Some very smart people have worked on TPM boot and it is even built into systemd. You're just wrong here.

Reference:

Whether I would fully rely on the systems proper operation against a state sponsored adversary is a different question though.

[–] [email protected] 1 points 9 months ago

Here is an alternative Piped link(s):

Matthew Garrett - TPM based attention

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source; check me out at GitHub.

load more comments (3 replies)
[–] vector_zero 2 points 9 months ago (1 children)

Though after a point rubber hose cryptanalysis will become the more pragmatic option for an attacker.

[–] [email protected] 2 points 9 months ago (2 children)

Depends on the attacker. For example: In Europe, law enforcement can legally confiscate/steal your laptop and read out the keys from RAM. They can't (legally) force you to give up your password.

load more comments (2 replies)
[–] vector_zero 1 points 9 months ago (8 children)

Actually, thinking more about this...

Can you give an example of this grub cmdline bypass? If what you're saying is true, this would be a huge issue. I'd switch bootloaders over something like this.

[–] [email protected] 4 points 9 months ago (1 children)

You can disable editing and enable password in grub, done. That's the recommended proceedure for TPM boot.

[–] vector_zero 3 points 9 months ago

Finally, someone reasonable.

load more comments (7 replies)
[–] [email protected] 9 points 9 months ago (1 children)

TPM is only kinda related to FDE, in that it can be used to unlock a LUKS encrypted volume. FDE doesn’t require a TPM.

I also wouldn’t recommend automatically unlocking your root partition on boot using the TPM as this allows access to your data if the device is stolen, which, for an average user, defeats the main purpose of FDE.

[–] vector_zero 2 points 9 months ago (1 children)

How so? The data is still encrypted on the drive after boot, so unless your machine also automatically logs you in, there shouldn't be anything to worry about.

[–] [email protected] 6 points 9 months ago (5 children)

At that point you relying on the fact that nothing running in your machine at boot can be compromised - after all, everything running on your machine has access to your unencrypted data.

If you don’t automatically unlock using the TPM, an attacker only has access to encrypted data.

load more comments (5 replies)
[–] [email protected] 2 points 9 months ago

As others explained: If the FDE key is in RAM, I'm vulnerable. My thread model includes a stolen Laptop with the attackers able to freeze my RAM and reading out the keys.

Thank you for mentioning TPM though. Didn't know of that before. :)

load more comments (3 replies)
[–] [email protected] 4 points 9 months ago* (last edited 9 months ago) (10 children)

Simple convenience. I usually don't have the time to wait one or two minutes until my full disk is decrypted (I am often late and the only person in a group meeting who brought a laptop for taking minutes).

I also use a weird keyboard layout (Neo 2) and I never got grub to load with that layout. Typing a 40+ passphrase in QWRETZ is just cumbersome to me.

Also: I hate to admit it, but I am a bit vain and simply would like a nice gui for entering my password.

Edit: I forgot to add that I'm playing with the idea of getting a surface tablet and installing linux on it. Then I couldn't count on awlays having a usb keyboard with me.

[–] [email protected] 8 points 9 months ago (7 children)

You can setup FDE that utilizes TPM like Windows does with bitlocker, in such a way that your backup phrase is only necessary if something about your hardware changes.

Last I set it up however, there wasn't any easy/automatic way. Searching "luks TPM" should get you started.

load more comments (7 replies)
[–] [email protected] 7 points 9 months ago (1 children)

I have a LUKS-encrypted laptop (1GB SSD), it takes about 10 seconds between typing in the password and the start of the boot process.

load more comments (1 replies)
load more comments (8 replies)
load more comments (10 replies)
[–] [email protected] 11 points 9 months ago

Never used systemd-homed, but i know an alternative to full disk encryption is having the root partition unencrypted, and the home partition unlocked at boot. For a single user machine at least, i don't see any difference when using it than unlocking at login. But then having 2 partitions is mandatory, and that may be a problem when running out of space.

[–] [email protected] 9 points 9 months ago

Works for me on arch linux. No hickups or anything and I am using it since it was first announced.

[–] [email protected] 8 points 9 months ago (1 children)

I read from your answers on other comments, that you do want to have even protection if someone forces you to give up your password and at the same time have the convenience of a quick boot process and avoid full disk encryption? (Not provoking, just want to make sure I get you right). Please consider, that if you don't make your thread-model clear it will be really hard to give a proper advice.

Please be aware that it's often a trade between usability and comfort on the one hand and proper security on the other hand. I'm not really sure if you want to target both at the same priority, that might not work out. You will not achieve Maximum convenience and maximum security at the same time.

If you want to actually commit to high security, there's a thing with LUKS or VeraCrypt supporting plausible deniability. Main concept is, you have one key that decrypts sort of a mock up file system with uncritical data (or misleading, slightly compromising stuff, however you want to play it). Then you have a way longer key, that unlocks the actual data. This can cover your ass for the thread model of some actor forcing you to give up you password. Have a look at the VeraCrypt documentation on plausible deniability.

Another great read for me was hitchhikers guide to online anonymity. Might be off topic, but there are some great advices and guides to increase your anonymity and considerations about online security too. If you want to go fully paranoid on a Snowden level, that might be you way to go. Took it as a inspiration to get myself a QubesOS setup and got a lot of insights with that one.

I really don't want to discourage you, it's the opposite! I appreciate everyone thinking about how to secure their stuff properly, but be aware that you might need to dig yourself deep into it, if you want to achieve the goals you mentioned.

load more comments (1 replies)
load more comments
view more: next ›