Amazefilemanager: Add support for SFTP client

Created on 29 Mar 2017  路  13Comments  路  Source: TeamAmaze/AmazeFileManager

There is another issue about a FTP client where it's said that SFTP client was on the way should be almost done.

I think it's easier to have separate issue, so anyway, can you add a SFTP (SSH) client so it's possible to connect to remote linux server's file tree over internet?

Thanks

Issue-Feature

Most helpful comment

Very well, I'll include a SFTP client connection too! Thanks @TranceLove for pointing me to the library (:

All 13 comments

As a refugee from another famous file manager app I'm interested in having this feature available in Amaze. However I also see some refactoring at the current codebase is necessary since the code related to remote server connection (at least at open source side) is mostly SMB oriented.

May see what I can do when I have time.

@TranceLove I refractored most of the code to support multiple file types in past so it's really easy to implement new file types now... And as a matter of fact, I've started working on a FTP/FTPS client implementation just now. So rest assured, it's coming very soon (:
BTW I don't think SFTP is worth it, as an SSH protocol is supposed to be used to tunnel authentication via secure medium, it's not ideal to establish secure data connection. Correct me if I'm wrong.
Also, I'm using Apache Commons net API to implement FTP/FTPS client, it doesn't support SFTP client afaik.

SFTP is definitely worth it just by the convenience factor alone. It's working really well and only requires SSH to be installed on the server (which most distros do by default).

I share the same thought with @Limero.

I'm using Apache Commons net API to implement FTP/FTPS client, it doesn't support SFTP client afaik.

@vishal0071 Yes, you need external library like jsch or sshj to implement this.

Very well, I'll include a SFTP client connection too! Thanks @TranceLove for pointing me to the library (:

Is there any progress on implementing the SFTP client?

Using SFTP is the best way of accessing files Linux machines remotely. Using SFTP on a daily basis.

I did had some groundwork based on the codebase of the last release, only been setback 'cos of my daytime work.

It had POC of integration with jssh, connection setup dialog, but it's far from complete; and hence, it's not even on my own fork on github yet.

Wouldn't give out any hard promise based on my current situation... but I'm trying to make way for it because I need it too. So let's say, I'll let Santa Claus test it before he sends it to your device? Adding the necessary work merge, code review, (initial) bugfixing... Christmas should be about the time.

That's great! @TranceLove
Meanwhile I'm also busy with my job, however I'm looking forward to resume my work with SMBv2 implementation.

Hi,

I'm also interested in that feature! But basically I just want a secure ftp connexion, and it seems that on version 3.2.1 it is already implemented?

When I want to identify, I've got that window that offers me to enter my ID and password, then I can check anonymous, or "secured connexion" (connexion s茅curis茅e un French). That last option is greyed.

Do you believe it's actually not implemented yet, or my issue has different causes?

Thanks!

@deyvidpi that option is grey'd because the ssl certificate broke because of some reason, and it won't work any more. I'll be fixing it in new update, but you should create a separate issue for this as this issue is mainly concerned for SFTP client and not a server connection.

Thanks for the quick answer, I'm looking forward both to this fix and to the client!
Great app by the way ;)

Hello,

A little sitrep about the progress.

After a month of working, I got the integration working, with both password and key authentication support. I can upload and download files, create folder or file on the remote, as well as deleting them.

(Tested on Lollipop emulators though)

However, there are some problems I need to solve before hand in the pull request.

Problems that would certainly fail the code review

  • Coding style doesn't fully match (I still preferred C-style brackets during writing)
  • Changes made to MainActivity was done on fdroid's, not play's (yes... my BIG mistake)
  • Terminology problems: both SFTP and SSH are used when describing connections to SSH server (I think this should go through code review to reconcile things anyway)
  • Code comments

As well as some bugs I need to fix before others complain

  • no handling on authentication (password/key-based) failures
  • at SSH/SFTP connection setup dialog, should indicate user chose to use private key to authenticate
  • handle SSH server key fingerprint change. Currently app will crash on seeing fingerprint differ from the cached one; should display dialog to prompt user (proposed is tell user to create new connection instead of allow user to accept changed SSH fingerprint)

I'm glad to have the spare time to work on the implementation during November, and I do hope I can at least make the pull request accepted before the end of December when I may be busy again at my day work ;)

@TranceLove It's December already :) Thanks for your work!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

spocko picture spocko  路  4Comments

organik1 picture organik1  路  5Comments

mueller-ma picture mueller-ma  路  5Comments

disdagithubacc picture disdagithubacc  路  4Comments

EmmanuelMess picture EmmanuelMess  路  3Comments