Spyke
locuesterreply
lemmy.zip

Docker does by default - it only works if you use sudo. But the docs tell you to add yourself to the docker group (which requires sudo to do). Then running docker doesn’t require sudo anymore.

42

Yeah, that's a terrible decision in the docs. Don't ever add a path where anything on the shell can execute user-modifyable code as root.

As soon as you do that, you lose any protection that comes from separating root users and non-root users. Because now any malicious program can just use docker to elevate its code to root.

51

Or don't give your user docker and use sudo to use the docker CLI to get the same effect. Hell, you could even alias docker as sudo docker to get the same feel.

26
tabularreply
lemmy.world

Sudo can/usually does ask for password - but if you're feeling lucky you can use sudo without a password.

(Currently doing that after repeatedly failing to install an OS and have not yet felt compelled to change it back).

9
mkwtreply
lemmy.world

Most systems I use will keep a sudo authentication session open for several minutes, so you don't have to repeatedly enter your password on every single command.

1

It's a great feature - a necessary feature even. Tired using doas Linux port and that feature isn't supported - it was depressing.

1
nord.pub

… and the Nextcloud developers think it’s completely reasonable to build a plugin system where you give this access to a web facing PHP application.

52
lemmy.world

Sadly, nobody reads docs anymore. Now that I’m thinking, people never read the docs.

23
racemaniacreply
lemmy.dbzer0.com

Suppose we all did read the docs. How possible is it with the complexity of a modern system to really take literally everything in account, and understand the implications oof everything to keep your system safe? It's great that it's documented, but if security isn't the default option, it will lead to issues, and everything has become so complex, that imo correctly managing everything is literally impossible... This is a systemic issue, not a user issue.

4

I don't think it would've been an issue if they just put a warning in the getting started section in the docs (or if they just have secure defaults to begin with). But currently there's no mention of it. It took almost a year for me to realise that I was running "production ready code" in root

1

I remember when I first needed to run containers I specifically went with podman because it doesn't require root access out of some vague fear that docker can be exploited to break my stuff. I feel validated.

69
fedia.io

Podman for the rescue. Runs fully under current user pribileges, so no sudo or other root-privileges needed to run containers.
(Especially useful for devs who want containers but should not get sudo.)

56
lemmy.world

there's just that pesky IBM thing that's constantly hanging around in the back waiting to pull the rug you're standing on.

10
Ghoelianreply
piefed.social

It's all open source. If they do that it will just get forked, I don't really see the issue.

6
lemmy.world

keep telling yourself that. if it was 2006 I would say you're right, but 20 years of corporate neglect and abuse has caused many developers to age out and not really give a shit anymore.

young devs don't want to just "fork it", they want to make a better product. to sell it. to IBM (or entities like them).

so yeah. you keep trusting that IBM bear in the corner won't maul you when you take a nap.

I'll stick with docker, the solution that outright refused to bend a knee to the worse corporate slaver in modern history.

4

¯\_(ツ)_/¯ I have faith in the open-source community. So far that's turned out pretty well.

7
mander.xyz

TIL: uninstall docker on any machine with Claude code installed.

43

This was known for a decade now? That's why adding a user to docker group was always an additional step with a warning

And also why podman works the way it does

23
Ghoelianreply
piefed.social

Or: dont let Claude code run whatever commands it wants. Read them before allowing.

19
yermawreply
sh.itjust.works

I read them. I didnt understand them but I read them. It still fucked me.

7

Well yeah additionally: don't execute commands you don't understand. Not yourself, but especially not via claude

8

That's just letting it run any command it wants with more steps

2

How do you find running it as rootless? I have enough grief with docker as is... Don't really feel the need to further complicate things by going off the status quo.. but I'm guessing it's somewhat more secure.

1

This is your regular reminder that docker isn't a sandboxing solution and shouldn't be treated as one.

33

On the docker side, yes, it runs as root by default. If you want rootless containers, try podman.

For Claude code, no, by default it asks for every command if it's allowed to run. Either this user allowed all docker commands, allowed all commands, or allowed the to ai decide if the command is safe or not by itself (yes this is a real feature). (If this is Claude code, which I can't tell if it is)

1

You reached the end