Has anyone used tsnet on android with public/private keys for SFTP transfers successfully? It works fine on Windows, but on Android, it always fails with an "Authentication failure" error. I have set "ssh_private_key" and "username" in the tsnet settings and confirmed that the "ssh_private_key" path points to the private key on the Android filesystem and that the file is actually present and readable.
I also find that the tsnet "trace" settings has almost no effect on Android. On Windows it produces all the information you expect, but on Android, it only reports the final error. You never see any of the connection or debugging information. tsnetVersion() reports "Version 1.4.10 Business Edition" on both windows and android.
Without any way to access the debugging info., I'm not sure how to troubleshoot this.
tsnet on Android
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
-
brianallen
- Posts: 1
- Joined: Sun May 31, 2026 6:58 pm
- Contact:
Re: tsnet on Android
I haven't hit this exact issue, but I have seen Android behave differently from Windows with SSH key handling. One thing I'd double-check is the private key format itself. Some libraries on Android can be picky and may work with traditional PEM/RSA keys but fail with newer OpenSSH key formats.
You might also want to test with a password temporarily (if your server allows it) just to confirm basic authentication and connectivity are working. If password auth succeeds but key auth fails, that narrows it down to the key parsing/handling side.
For the file path, Android storage can be tricky too. The file may exist and appear readable, but app sandboxing/permissions can still interfere. I would try placing the key somewhere inside the app's own documents/special folder rather than shared storage if you aren't already.
The trace behavior is interesting. It almost sounds like Android logging is getting swallowed before tsnet can output detailed info. Since you're only seeing the final authentication error, there may not be enough visibility to tell whether the key is failing to load, failing to parse, or being rejected by the remote server.
Curious whether anyone else on Android with key-based SFTP can confirm if they're using RSA, Ed25519, or OpenSSH-format keys.
You might also want to test with a password temporarily (if your server allows it) just to confirm basic authentication and connectivity are working. If password auth succeeds but key auth fails, that narrows it down to the key parsing/handling side.
For the file path, Android storage can be tricky too. The file may exist and appear readable, but app sandboxing/permissions can still interfere. I would try placing the key somewhere inside the app's own documents/special folder rather than shared storage if you aren't already.
The trace behavior is interesting. It almost sounds like Android logging is getting swallowed before tsnet can output detailed info. Since you're only seeing the final authentication error, there may not be enough visibility to tell whether the key is failing to load, failing to parse, or being rejected by the remote server.
Curious whether anyone else on Android with key-based SFTP can confirm if they're using RSA, Ed25519, or OpenSSH-format keys.