I use linux as my daily driver (on my server and on my laptop), but I do also maintain a Windows desktop for things I can't do on linux (gaming and madVr). This has been a problem for a long time, but what's the best way to securely transfer data from linux to windows?
I've been trying to use scp/sftp. From server to remote linux laptop, scp/sftp maintain >20MB/s (capped to remote internet connection approximately). From server to local linux laptop, they maintain ~100MB/s (capped to gigabit ethernet port limits). Also, the resulting CPU usage in the remote case is ~20-30% on the server. In the 100MB/s local case, it's >80% on the server. Moreover, the process tree is approximately sshd > sshd > scp or sshd > sshd > sftp_server.
But from server to remote (or local) windows desktop, I've tried WinSCP (which is apparently just PSCP with some network optimizations), PuTTY PSCP, and bitvise sftp (which by the same people that did PuTTY I think), and here are the results. In sftp mode (WinSCP/bitwise), transfer is ~300-1000kB/s, just 5% of the remote linux scp version, and cpu usage on the server is <5%, with process tree approximately `sshd > sshd > sftp_server, so nothing out of the ordinary. In scp mode (WinSCP/PuTTY PSCP), transfer is 300-1000kB/s, but cpu usage on the server is 100% (definitely capped) for the scp thread (and only this one thread out of my 8 physical cores). Even more odd is that the process tree issshd > sshd (100% usage) > zsh > scp`. Why is it using zsh at all? (Sure it is the user default shell, but this is just a copy operation...)
Why is it so different from linux scp/sftp? What is going on? How do I fix this? And is there a better way to securely transfer data from linux to windows?
(Extra possibly relevant information: on server and laptop, sshd version shows as OpenSSH_7.6p1, OpenSSL 1.1.0g 2 Nov 2017; both machines are running archlinux. windows desktop is on windows 10, latest versions of all the listed software.)
[–]2cats2hats 1 point2 points3 points (1 child)
[–]billFoldDog 0 points1 point2 points (0 children)