Installation
Desktop Install
- Run the MSI installer
- Choose install path (default Program Files)
- Finish wizard; launch app
Installer wizard (insert image)
Web Mode
- Install Node.js LTS
- Run
npm installthennpm run start:web - Open
http://localhost:3000
Web start command (insert image)
Service Style
- Create a Windows service wrapper for
npm run start:web - Set recovery to restart on failure
- Log on as service account with least privilege
Service config (insert image)
Dashboard
Status
See listener health, active sessions, and recent errors.
Dashboard overview (insert image)
- Confirm listeners show green
- Look for spikes on the activity chart
- Click errors to inspect details
Real-Time Activity
1-second updates on operations per second.
Activity chart (insert image)
- Watch green (success) vs red (errors)
- Correlate spikes with user actions
User & Key Management
Create User
- Open Users ➜ Add User
- Set password and/or paste SSH public key
- Assign listeners and permissions
- Add virtual paths for isolation
Add user form (insert image)
Public Keys
- Generate key:
ssh-keygen -t ed25519 -C "user@host" - Copy contents of
id_ed25519.pub - Paste into Public Key field; save
- Optionally disable password for key-only
Key entry (insert image)
CLI Snippet
Connect with OpenSSH:
sftp -i C:\\keys\\id_ed25519 user@host
CLI session (insert image)
Listeners
Add Listener
- Open Listeners ➜ Add
- Select SFTP or FTP; set port and bind IP
- Save, then click Start
Listener form (insert image)
Passive FTP
Define a narrow passive range in config, open it in the firewall, and document it for clients.
Passive ports (insert image)
Web GUI Port
Edit Web GUI port, save, and confirm via the status banner.
Port edit modal (insert image)
Logs & Exports
Activity Log
Audit-grade entries: timestamp, listener, user, action, path, auth method, IP:port.
Activity log (insert image)
- Filter by date range
- Copy all to clipboard
- Export CSV for compliance
CSV Tips
- Open in Excel with UTF-8 option
- Pivot by user or listener to spot anomalies
- Archive monthly exports to offline storage
CSV open (insert image)
Troubleshooting
- Port already in use ➜ choose another port or stop conflicting app
- Permission denied ➜ check virtual path permissions and listener assignment
- Idle disconnect ➜ expected after 5 minutes of inactivity
Troubleshooting tips (insert image)