Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

File Manager repeatedly reconnects when browsing ASUSWRT over Dropbear SSH with SCP Legacy Mode

Aperta
#12 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
backend, devtools

Direzione di ricerca

Start with src/backend/list-routes.ts, where the report identifies the SFTP channel failure and SSH Exec fallback checks. Reproduce directory browsing against a Dropbear host with SCP Legacy Mode, then inspect how connection state and the listing command affect the fallback. Done means directories can be listed over SSH Exec when SFTP is unavailable without triggering repeated reconnects.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug
What happened?

The File Manager successfully establishes an SSH connection to an ASUS RT-AX52 Pro running stock ASUSWRT, but attempting to open any directory causes the file session to disconnect and repeatedly reconnect.

This occurs with all tested directories, including /tmp, /etc, and /root.

The SSH terminal works correctly, and remote commands execute successfully through SSH Exec.

The router runs Dropbear and does not appear to include an SFTP server. SCP Legacy Mode is enabled, but directory navigation remains unusable.

I investigated the File Manager source code and found two possible causes:

  1. In src/backend/list-routes.ts, certain SFTP channel failures set sshConn.isConnected = false before calling tryFallbackMethod(). However, the fallback immediately returns HTTP 503 when isConnected is false. A missing SFTP subsystem may therefore prevent fallback to an otherwise working SSH Exec connection.
  2. The fallback runs command ls -la --color=never ''. The router's embedded shell reports -sh: command: not found when the command builtin is invoked interactively. This may make the fallback incompatible with ASUSWRT.
    Neither cause has been conclusively verified as the trigger of the reconnect loop.

Source: https://github.com/Termix-SSH/Plugin-File-Manager/blob/main/src/backend/list-routes.ts

Steps to reproduce
  1. Add an ASUS RT-AX52 Pro running stock ASUSWRT as an SSH host.
  2. Enable the File Manager plugin for the host.
  3. Enable SCP Legacy Mode.
  4. Open the File Manager.
  5. Attempt to navigate into any directory, such as /tmp.
  6. Observe that the file session disconnects and attempts to reconnect instead of displaying directory contents.
What did you expect?

The File Manager should list directories using SSH Exec when the SFTP subsystem is unavailable and SCP Legacy Mode is enabled.
An SFTP subsystem failure should not mark an otherwise working SSH connection as disconnected.
The fallback should also support embedded Linux environments using Dropbear and BusyBox

Termix version

26.10.5

Plugin version

1.1.1

Environment

Termix Desktop on Windows 11 25H2 (local installation). Remote device: ASUS RT-AX52 Pro running stock ASUSWRT with Dropbear SSH and an embedded /bin/sh shell. SCP Legacy Mode enabled.

Logs
No File Manager-specific error logs have been captured yet.
Remote SSH Exec was verified successfully:

ssh -T [email protected] "sh -c 'echo EXEC_OK; ls -ld /tmp'"
EXEC_OK
drwxrwxrwx ... /tmp

The router reports the following when command is invoked in an interactive shell:

-sh: command: not found

Available executables include /usr/sbin/dropbear, /bin/cat, /bin/dd, /bin/tar, and /bin/busybox.
Neither scp nor sftp-server was found in PATH.
Anything else?

This appears to be a compatibility issue affecting embedded Linux devices without an SFTP subsystem.

The following logic may be relevant:

if (isChannelFailure) {
  sshConn.isConnected = false;
  sshConn.sftp = undefined;
}
tryFallbackMethod();

The fallback then checks !sshConn?.isConnected and returns HTTP 503 instead of attempting SSH Exec.

Additionally, the fallback directory listing command is:

command ls -la --color=never '<path>'

It may be worth making this command compatible with minimal BusyBox shells.
I would appreciate support for SCP Legacy Mode on stock ASUSWRT without requiring additional packages or firmware modifications.

Before you submit
  • I searched open and closed issues and this is not a duplicate
  • I am on the latest version, or I said which version I am on
Lingua principale
TypeScript
Stelle
1
Fork
3
Merge medio
1g 4h
PR unite (30g)
6

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Termix-SSH/Plugin-File-Manager

Tutte le issue di Termix-SSH/Plugin-File-Manager

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.