53
Samba vs NFS vs SSHFS ?
(lemmy.ml)
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.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I ran SSHFS for a while maybe half a year ago? I quite liked it cause we obviously already use SSH so setup was quick and easy, performance was good too. Then I learnt it's no longer maintained so switched to NFS.
NFS is good, if you aren't accessing from Windows I would go for that. Setup is pretty simple too, just change
/etc/exports
and a few permissions or ownerships (after installing the package obviously) then start the systemd service.Can't comment on Kerberos, but considering NFS popularity I can't imagine it being difficult.
Ohhh wasn't aware of that information ! Thank you.
How do I set permissions up with NFS? Do I have to have the same uids and gids on both server and clients?
Yes, if you're not using Kerberos for authentication.
Thanks!
I think that's what the kerberos is there to solve. I've heard that it isn't that bad to set up. I haven't tried and just stuck with SMB.
Yeah, I just wanted to have something mounted at boot on my Linux box from my NAS. Looks like it’s possible with SMB, I just need to figure out how to match the users on my machine with the ones on my server.
In my experience, just making sure the directory you're sharing is owned by
nobody:nogroup
is enough.sudo chown -R nobody:nogroup /path/to/nfs
Ohh, no - you don't want to do that. Why would you do that?
NFS without kerberos uses the UIDs of the remote users to determine access to files on the server. It's very insecure since the client systems can use whatever UIDs they want. It's why NFS has a "squash root" option which blocks any remote system from using UID 0. Kerberos allows users to authenticate so that the server knows who they are on the local system rather than trusting the remote system.
Changing ownership to "nobody" doesn't give anyone access - it just sets the owner to the "nobody" user. You would need to "chmod" to give read/write permissions.
I'm not an expert with this stuff, I just do whatever works. This works, so I do it and when people ask me or just in general how to do it this is what I tell them. Most of the guides I've come across, including one from DigitalOcean, recommends doing this.
Ah - that's the root-squashing I was mentioning. Root is translated to "nobody" on the server. If you're not using the root user or if you've set "no_root_squash" then you don't need/want to do that.
That’s making it public, isn’t it?
I think so.