Wishlist: SCP support

Have been using DOpus for a few years now and I've always had my fingers crossed for SCP support. I have more than 400 set-top devices on the LAN and they will only talk SCP, so you can see why I'm keen :slight_smile:

Anyway, just bought my upgrade to v.10 and after taking the wrappings off... bah.

Maybe in v.11? Maybe as a plugin?

BTW having searched these forums, I do realise there are only a handful of SCP queries from only a handful of people, so it's hardly a top priority job. That said, I'd wager that if you were to add the feature you'd instantly scoop a large portion of the WinSCP user base - it's an altogether clunky affair next to DOpus and I'm certain that, like me, most users would be glad to see the back of it.

Cheers

P.S. Yes, I've tried FlashFXP but that fails to connect and fails to give any detailed reason why. So I gave up.

1 Like

The devices talk SCP but not SSH (which Opus supports)? That unusual, at least.

As the Wikipedia article mentions, pure SCP isn't much use in a GUI file manager such as Opus, because SCP only provides a way to copy files from one path to another. In particular, SCP lacks any way to get a directory listing from the server.

[quote="Wikipedia"]As the SCP protocol implements file transfers only, GUI SCP clients are rare, as implementing it requires additional functionality (directory listing at least). For example, WinSCP defaults to the SFTP protocol. Even when operating in SCP mode, clients like WinSCP are typically not pure SCP clients, as they must use other means to implement the additional functionality (like the ls command). This in turn brings platform-dependency problems. Thus it may not be possible to work with a particular SCP server using a GUI SCP client, even if you are able to work with the same server using a traditional command line client.

More comprehensive tools for managing files over SSH are SFTP clients.[/quote]

Yeah, SCP has always seemed like fake protocol... :slight_smile:. I guess the LAN devices you use implement a restricted SSH server... but I'm curious what happens when you DO try Opus with these devices. I wonder though... on systems with restricted SSH... how does an "SCP" only client app even get a directory listing, does whatever tool you use now show the file list?

@Greg/Leo: will Opus just abort or error out if it can make an actual SSH connection but gets a 'remote command failed' or whatever error gets thrown by an rssh server when trying to send an 'ls' command?

My desire for this feature is driven purely by the fact that only WinSCP works. This would be fine, but WinSCP simply isn't as polished an application, and of course it's nice to have more and more things contained within Opus leaving fewer other applications open.

Note that in defining the connection profile in WinSCP, you have to either choose 'SCP' or 'SFTP' with SCP fallback. Pure SFTP doesn't work, and this is presumably the same thing that's tripping up Opus.

Here are my logs, if anyone's still interested :sunglasses:

Not sure how much effort it would be, but if it's a simple matter it'd make this particular Opus user dance around the room. And, like I said, probably win a few sales from long term WinSCP sufferers as well.

I agree with your comments, WinSCP is getting a bit long in the tooth.
Hope Dopus supports the functions needed soon.

You mean DOpus supports SFTP. As Wikipedia states, "SFTP is not FTP run over SSH, but rather a new protocol designed from the ground up by the IETF SECSH working group." An SSH server won't necessarily have the additional code necessary to support SFTP. They are different protocols. Greg clarified in a post a few years ago when someone was complaining about SFTP transfers taking longer than copying a file using SCP. The SCP protocol merely copies a file from source to destination. SFTP supports a lot of things related to file and directory manipulation that are necessary for how DOpus functions (Wikipedia provides more info). Unfortunately, the slowness is a limitation of the SFTP protocol.

There's probably a way to hook up a button to call a command line scp executable to do the copy. I've been thinking about doing this since I occasionally use rsync to move a lot of data to and from my laptop and Linux-based home file server.

It would be awesome, though, if DOpus used SCP for file copies and SFTP for everything else. Then again, it's possible that some SFTP servers may exist that do not support SCP.

i am getting the same with my dd-wrt router

Geƶffnet wird Verbindung 192.168.1.12:22
SSH: Server version: SSH-2.0-dropbear_0.52
SSH: We claim version: SSH-2.0-PuTTY-FZ-Local: Jun 24 2011 14:08:02
SSH: Using SSH protocol version 2
SSH: Doing Diffie-Hellman key exchange
SSH: Host key fingerprint is:
SSH: ssh-rsa *******************************************************************
SSH: Initialised AES-256 client->server encryption
SSH: Initialised AES-256 server->client encryption
SSH: Initialised zlib (RFC1950) compression
SSH: Initialised zlib (RFC1950) decompression
SSH: Sent password
SSH: Access granted
SSH: Opened channel for session
SSH: Started a shell/command
SSH: Server sent command exit status 127
SSH: All channels closed. Disconnecting
SSH: Fatal: unable to initialise SFTP: could not connect
Verbindung geschlossen

would be cool if dopus could one day also replace winscp

I recently had a need to use winSCP due to a restriction on synology servers and would like to see winSCP like functionality in dopus using SSH and SCP as an alternative FTP access.

Synology servers restrict FTP access to only the folder shares. If you would like to see the root file system you need to use telnet/SSH shell and log on as root. I was not able to get access to the root filesystem with dopus, but was able to use WinSCP to get access.

As discussed here SCP is for file transport only not getting a file list. I believe that WinSCP uses a type of shell scraping for accessing the file system gain access. On the winSCP page under SCP Requirements it calls out a list of shell commands that need to be on the server. Also in the logs I can see calls like this

ls -la -d  "/usr/syno/synoman/scripts" ; echo "WinSCP: this is end-of-file:$?"
drwxr-xr-x    7 root     root          4096 Apr 25 23:20 /usr/syno/synoman/scripts
WinSCP: this is end-of-file:0

The reason this works for me, is that SCP it is not using the FTP protocol.

I think that clears up some of the questions as to how WinSCP works at times and dopsu does not, and how WinSCP gets access to the file system with out using FTP or SFTP.
Has this style of SCP support been considered before?
Is it something you might consider adding?

Thanks

Opus already supports SFTP over SSH. (SFTP is not to be confused with FTP and FTPS, which Opus also supports.)

It's rare, although not unheard of, for SSH servers to only support SCP and not SFTP over SSH.

Does what you're doing definitely require SCP itself or does it just need SSH?

Note that SFTP and FTPS both require the Advanced FTP add-on for Opus.

Hi Leo, I have the advanced FTP option for dopus.

The synology OS supports FTP, SFTP, and FTPS (FTP over SSL). I have tested these and they all connect and function. The FTP features are part of the Synology OS and have been locked down so that even if you log in as root (root is disabled by default and needs to be manually enabled), you only get access to the configured folder shares not the root file system or the volumes.

If I Telnet or SSH with a console as root I can see the root file system and volumes. This is what WinSCP is doing to preform its actions and then using SCP to copy the file. This link recommends using WinSCP as FTP or SFTP wont work for accessing the root on a synology server.

So the Synology NAS supports four different file transfer protocols (FTP, SFTP, FTPS, SCP) but has intentionally limited what you can do with three of them in a way which doesn't actually limit what you can do because you can still do it with the fourth, more obscure protocol?

That seems like a pointless thing for Synology to do, and something you could ask them to stop doing.

We may add SCP support in the future, as we are considering moving away from the current PuTTY-based solution to something that is better maintained and easier to update, but that won't happen in the very near future and will depend on whether the PuTTY replacement we choose (if we do indeed go down that route) happens to support SCP.

Well kind of, like most linux products telnet/SSH allows you full access to the file system when accessing as root user. This is no different, the fact that SSH on the server supports SCP makes it possible for an app like WinSCP to use this as a way to access the file system. All of the supported methods of accessing files (FTP, SFTP and Samba) go through the shares. I suspect this is to protect the user from braking the OS.

Ok, thanks

I have run into a similar thing. I would really like to see SCP support as well. There are some pretty big performance issues with SFTP - the way the protocol works messages are not pipelined so the overall speed is determined by the network latency not the network bandwidth. SCP does not suffer from this problem. I do a lot of work over the Internet, so SFTP is giving me about 10% of the available bandwidth.

So please count this as another vote for SCP.

I need SCP support!

1 Like