SSH vs SMB vs NFS for GUI file transfer

You are right, SMB is something coming originally from Windows. But nowadays it works great with Linux and Mac as well.

Since speed is important, you have to keep in mind: SSH is a great thing for everything connected to Unix/Linux and networks, but it is really slow compared to NFS, FTP or SMB.

NFS is the fastest, but it is not encrypted. Do not use any unencrypted protocols if you can't fully trust your network (see also this Q&A). NFS should be available for Windows and Mac too, but it might be a bit of work to set it up.

SMB should be easy to set up on Windows, Linux and Mac and it is still reasonable fast compared to SSH. But the same warning about security holds for SMB (see this Q&A).

Some similar questions were discussed here.

There are also [many benchmarks] about the speed of different network protocols out there.


NFS is easy to set up, fast, and easy to use, but is not designed for security (plaintext file transfers). You might want to look at sshfs, which can be used to create mount points similar to NFS but in a secure way, and in my own humble testing had similar performance to NFS. sshfs can be used to locally access any folder you can access on another system over the network which has an SSH server running. Also, sshfs operates in user space so you don't need to be root to set it up.

Getting either of these to work on Windows will probably be challenging, but both will work on Mac.

The SMB protocol has always seemed clunky to me, so I haven't used it much, but I understand that Samba's implementation is solid. I can't speak to it's performance or ease of use in general.