3 ms·
I feel like this article tries a little too hard to make the SCP protocol sound weird. It’s just using SSH as a transport layer, which is not really unusual at
by jchw 6y ago
I feel like this article tries a little too hard to make the SCP protocol sound weird. It’s just using SSH as a transport layer, which is not really unusual at all. Perhaps there are some security issues but IIRC Git for example does basically the same exact thing to use SSH as a transport layer, calling git-receive-pack on the remote. I’d be surprised if Rsync wasn’t the same.
- mortehu 6y agoThe bad performance and security concerns described in the article are not at all caused by using SSH as a transport. You should be able to clone a git repository or rsync from an untrusted server, and there’s nothing about SSH as a transport that makes that impossible.
- jchw 6y agoYes, but there's a lot of text in the article that seems to be suggesting SCP is weird because it is just piping text over SSH. But that's not particularly weird. Other aspects of the protocol are surely flawed, but I don't understand that one.
- m463 6y agoI've ported ssh before and I think the whole system is a little hacky. I think what is lacking is a precise split between file transfer and remote command execution. If the split were well defined, we could simply and securely split out file transfer as a "thing". it would allow: - write-only no-account-required file uploads - read-only no-account-required file downloads - an account-required incoming dropbox - an account-required file store - full blown remote filesystems (filestore + file protocol goodies) and a number of other services that involve files and NOT command execution, environment variables, shells, a login or even a user account.
- fanf2 6y agoDoesn’t the sftp subsystem allow that in principle? You might have to configure the server fairly heavily to make it sftp only, though...
- m463 6y agoIt's been many years, but I vaguely recall there were some things preventing that, but I don't remember if they were protocol or implementation dependent.