SFTP File Browser
ProfessionalTransfer files securely to and from network devices with the integrated SFTP file browser, featuring drag-and-drop uploads, breadcrumb navigation, and transfer progress tracking.
Overview
The SFTP File Browser provides a graphical file management interface for remote devices, directly integrated into the NetStacks terminal. Instead of running command-line scp or sftp commands, you get a visual browser with drag-and-drop uploads, context menus for rename and delete, breadcrumb navigation, and a transfer progress panel -- all over the same SSH connection as your terminal session.
Key Capabilities
- Browse remote filesystems -- navigate directories with breadcrumb paths, see file sizes, permissions, and modification dates
- Upload and download -- drag and drop files to upload, or double-click remote files to download them
- File operations -- create folders, rename files, delete files and directories directly from the browser
- Transfer progress tracking -- monitor active uploads and downloads with progress bars, speed, and cancel controls
- Device-aware start paths -- automatically opens to the correct filesystem location based on device type (e.g.,
flash:/for Cisco IOS,bootflash:/for NX-OS)
SFTP requires the remote device to have an SFTP subsystem available over SSH. Most Linux servers and modern network operating systems support SFTP. Some older network devices may have limited or no SFTP support.
In enterprise mode (connected to a Controller), SFTP can connect using credentials from the Credential Vault, enabling file operations on devices without storing passwords locally.
How It Works
The SFTP browser leverages the existing SSH connection established by your terminal session. When you open the SFTP browser, NetStacks creates an SFTP channel over the same SSH transport -- no additional authentication or network connection is required.
Connection Architecture
- SFTP channel creation -- NetStacks opens an SFTP subsystem request over the existing SSH session, establishing a file transfer channel alongside your interactive terminal
- Home directory detection -- on connection, the SFTP client resolves the remote user's home directory and uses it as the initial path (unless overridden by device-type start paths)
- Directory listing -- browsing a folder sends an SFTP readdir request and displays entries with name, size, permissions, and modified timestamp
- File transfers -- uploads and downloads are processed sequentially through the SFTP channel with progress tracking
Device-Aware Start Paths
NetStacks automatically selects the correct starting directory based on the detected CLI flavor of the connected device:
| Device Type | Start Path | Typical Contents |
|---|---|---|
| Cisco IOS | flash:/ | IOS images, startup-config, VLAN data |
| Cisco NX-OS | bootflash:/ | NX-OS images, scripts, configuration backups |
| Juniper JunOS | /var/ | Log files, temporary storage, core dumps |
| Arista EOS | flash:/ | EOS images, startup-config, extensions |
| Palo Alto / Fortinet | / | Root filesystem |
| Linux / Default | Home directory | User files, scripts, configs |
Enterprise Mode
When connected to a Controller, the SFTP browser can establish connections using credentials from the Credential Vault. This means you can browse files on devices without having the SSH password or key stored locally -- the Controller provides the credential at connection time.
Step-by-Step Guide
Workflow 1: Opening the SFTP Browser from an Active Session
- Connect to a device via SSH in the terminal
- Click the folder icon in the status bar, or press
Cmd/Ctrl+Shift+F - The SFTP browser opens in a panel alongside your terminal session
- The browser automatically navigates to the device-appropriate start path (e.g.,
flash:/for a Cisco IOS device) - Use the toolbar buttons to navigate: up arrow to go up a directory, home icon to return to the home directory, or click breadcrumbs in the path bar
You can type a path directly into the path bar and press Enter to navigate to any location on the remote device. This is useful for jumping to deep directory structures like /var/log/messages.
Workflow 2: Uploading a Configuration File to a Device
- Open the SFTP browser from your active session
- Navigate to the destination directory on the remote device (e.g.,
flash:/or/home/admin/configs/) - Drag and drop files from your desktop into the SFTP browser, or click the upload button in the toolbar to open a file picker
- The transfer progress panel appears showing upload status, speed, and a cancel button
- When the upload completes, the file appears in the remote directory listing
Always verify available storage space on the device before uploading large files like firmware images. Use dir flash: or show file systems in the terminal to check.
Workflow 3: Downloading Device Files to Your Local Machine
- Open the SFTP browser and navigate to the file you need
- Double-click a file to download it, or right-click and select Download
- The file is downloaded through the SFTP channel and saved to your local Downloads directory
- Monitor progress in the transfer panel for large files
Code Examples
SFTP Browser Operations
The SFTP browser supports the following file operations via toolbar buttons and right-click context menus:
# Available operations in the SFTP browser
Browse: Navigate directories with breadcrumb path bar
Upload: Drag-and-drop or toolbar upload button (multi-file)
Download: Double-click file or right-click > Download
New Folder: Toolbar button or right-click > New Folder
Rename: Right-click file > Rename
Delete: Right-click file > Delete (files and directories)
Refresh: Toolbar refresh button to reload directory listingDirectory Listing on a Cisco IOS Device
# SFTP browser view of flash:/ on a Cisco IOS switch
# Path: flash:/
Name Size Permissions Modified
─────────────────────────────────────────────────────────────────
cat9k_iosxe.17.09.04.SPA.bin 945.2 MB rw-r--r-- 2025-11-15
cat9k_iosxe.17.06.05.SPA.bin 812.7 MB rw-r--r-- 2024-06-20
startup-config 28.4 KB rw------- 2026-03-10
running-config 28.4 KB rw------- 2026-03-10
vlan.dat 3.1 KB rw-r--r-- 2026-03-09
pnp-tech-time 0 B rw-r--r-- 2024-01-15
dc1-core/ - rwxr-xr-x 2026-02-28Directory Listing on a Linux Server
# SFTP browser view of /var/log/ on a Linux server
# Path: /var/log/
Name Size Permissions Modified
───────────────────────────────────────────────────────
syslog 12.4 MB rw-r----- 2026-03-10
auth.log 3.2 MB rw-r----- 2026-03-10
kern.log 1.8 MB rw-r----- 2026-03-10
dpkg.log 456.0 KB rw-r--r-- 2026-03-08
nginx/ - rwxr-xr-x 2026-03-10
mysql/ - rwx------ 2026-03-10
journal/ - rwxr-sr-x 2026-03-10Device Filesystem Paths for Common Tasks
# Common SFTP paths by device type and task
# Cisco IOS / IOS-XE -- firmware and configs
flash:/ # Main storage (IOS images, configs)
flash:/managed/scripts/ # EEM scripts
bootflash:/ # Boot images (on some platforms)
# Cisco NX-OS -- bootflash is primary
bootflash:/ # NX-OS images, scripts
bootflash:/scripts/ # Python and TCL scripts
slot0:/ # External storage
# Juniper JunOS -- log and temp files
/var/log/ # System and process logs
/var/tmp/ # Temporary files, core dumps
/var/db/scripts/ # Op/event/commit scripts
# Arista EOS
flash:/ # EOS images, startup-config
/mnt/flash/ # Alternative flash mount
/persist/local/ # Persistent local storage
# Linux servers
/etc/ # Configuration files
/var/log/ # Log files
/home/<user>/ # User home directoryQ&A
- Q: Does SFTP work in standalone mode or is it enterprise-only?
- A: SFTP works in both standalone and enterprise modes. In standalone mode, SFTP uses the SSH credentials from your active terminal session. In enterprise mode (connected to a Controller), SFTP can additionally use credentials from the Credential Vault to connect to devices without local password storage.
- Q: Is there a maximum file upload size?
- A: NetStacks does not impose a hard upload limit -- the constraint is the available storage on the remote device and the stability of the SSH connection. For very large files (hundreds of megabytes, such as firmware images), monitor the transfer progress panel and ensure the connection remains stable throughout the transfer.
- Q: Can I transfer files between two remote devices?
- A: Not directly through the SFTP browser. The browser transfers files between your local machine and a single remote device. To move files between two devices, download from one and upload to the other, or use
scpbetween the devices from a terminal session.
- Q: How do I access a Cisco device's bootflash?
- A: NetStacks automatically detects the device type and opens the SFTP browser to the appropriate starting path. For Cisco IOS devices, this is
flash:/. For NX-OS devices, it isbootflash:/. You can also type any path directly into the path bar and press Enter.
- Q: What file permissions are shown and can I change them?
- A: The SFTP browser displays standard Unix permissions (owner, group, other) in
rwxformat. Permission changes depend on the remote device -- Linux servers typically allow permission modification through the SFTP protocol, while network device filesystems often have fixed permissions.
- Q: Can I edit files directly in the SFTP browser?
- A: Yes. NetStacks includes an integrated text editor for files recognized as text (based on file extension and size). Supported text extensions include
.conf,.cfg,.txt,.log,.xml,.json,.yaml,.sh,.py, and many more. Files without extensions are treated as text if they are under 64 KB.
Troubleshooting
SFTP Subsystem Not Available
- The remote device must support the SFTP subsystem over SSH. Some older network devices do not include SFTP support.
- On Linux servers, ensure the SSH server configuration includes
Subsystem sftp /usr/lib/openssh/sftp-server(or equivalent) - Check that your user account has permission to use the SFTP subsystem
Permission Denied
- Verify the remote user account has read/write permissions for the target directory
- On network devices, some filesystems are read-only or restricted to privileged users
- In enterprise mode, confirm the Credential Vault entry has sufficient privileges
Transfer Timeout or Failure
- Large file transfers may fail if the SSH connection drops. Check network stability between your machine and the device
- Some devices have SSH session idle timeouts that may disconnect during long transfers. Keep the terminal session active while transferring
- If a transfer fails, the file may be partially written on the remote device. Delete the partial file before retrying
Large File Upload Failures
- Verify available storage on the remote device before uploading (use
dir flash:ordf -hin the terminal) - Some network devices have file size limitations on their filesystems
- For firmware upgrades, ensure the device has enough free space for both the existing and new image files during the upload
Connection Error on Enterprise SFTP
- Verify the Controller is reachable and your session is authenticated
- Check that the credential in the Vault is valid and has not expired
- Ensure the target device is reachable from the Controller if connecting through the Controller's SSH proxy
Related Features
- Terminal Overview -- learn about the terminal interface that hosts the SFTP browser panel
- Connecting to Devices -- set up the SSH connections that SFTP runs over
- Credential Vault -- manage credentials used for enterprise SFTP connections
- SSH Passwords & Keys -- configure authentication methods for SFTP access
- Session Recording -- record terminal sessions while using SFTP for a complete audit trail