Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ptp-user] SFTP & login shell access different for same connection

PTP uses the ssh connection for two things: to launch remote processes; and to access files on the remote system. It does this using ssh “channels”, which are part of the ssh specification. It uses an “exec" channel for processes, and an “sftp" channel for files. Unfortunately, some systems either limit the number of channels to one, or as it appears in your case, don’t provided an sftp service at all. Incidentally, yours is the first case I’ve come across where this is the case.

While it would theoretically be possible to get around this problem by allowing the exec and sftp channels to be handled by separate ssh connections, this would be a bit of a pain for the user, since they would have to log on twice each time a connection was opened (or in your case, log on to two different machines). Also, the architecture is currently that a new exec channel is opened for every remote process, so this would necessitate a user constantly logging in (at least for the case where channels are limited to one.)

I’m currently working on another approach, which is to use a single ssh connection, but run a small agent at the remote end (that gets automatically uploaded the first time you use PTP). The agent would handle process creation and filesystem access, and multiplex this over the single connection. The agent uses the TCF protocol, and is written in python, so will require python to be installed on the remote machine (I don’t know of any Linux systems where this is not the case.) Another possibility would be to use the C based agent that comes with TCF, but that is about 1MB, so would probably need to be installed manually.

So, if you’re happy to wait (and are interested in being a guinea pig) then I should have something you can try by next week. Otherwise the only option is to enable sftp on the remote machine.

Greg


> On May 12, 2016, at 9:56 AM, Jeremy Wolcott <jeremy.wolcott@xxxxxxxxx> wrote:
> 
> Hi,
> 
> I'd like to create a synchronized project which synchronizes from my laptop to a HPC cluster system that I use.  I'm being flummoxed by one aspect of the cluster: login shell access and SFTP access are provided via different machines, e.g. login.example.com and sftp.example.com.  It appears that PTP needs both: login for the git part, and SFTP for something I don't quite understand.  (If I try to use the login server in the 'connection' I create with Eclipse, I get this error:  "Remote host does not support sftp.  Remote functionality requires sftp to be enabled").
> 
> Is there some way of specifying different hosts for shell and SFTP access?  I can't find one in the connection configuration.
> 
> Thanks!
> 
> -Jeremy Wolcott
> _______________________________________________
> ptp-user mailing list
> ptp-user@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://dev.eclipse.org/mailman/listinfo/ptp-user



Back to the top