Skip to main content
Self-Hosted Screenshot Upload

Your server.
Your keys. Your screenshots.

Every capture goes straight to your SFTP server over an encrypted SSH tunnel. Ed25519, ECDSA, RSA — all supported. No cloud in the middle.

SFTP over SSH · OpenSSH keys · Path templating

SFTP screenshot upload is a workflow where every capture auto-uploads to your own SFTP server over an encrypted SSH connection. Maxisnap supports this natively with Ed25519, ECDSA, and RSA key authentication (added in v1.9.0), plus path templating, custom base URLs, and connection retry. Configure once in Settings → Upload, then every Ctrl+Alt+7 lands on your infrastructure.

Protocol Deep-Dive

Supported SSH key types

Key type Formats Recommended
Ed25519OpenSSH (new format)Best choice
ECDSAOpenSSH, PEM (P-256/P-384/P-521)Strong alternative
RSAOpenSSH, PEM (2048 bit min)Fine for legacy servers
DSANot supported (deprecated)

Path templating variables

Variable Expands to Example
{date}YYYY-MM-DD2026-04-25
{time}HHMMSS143205
{uuid}10-char randoma1b2c3d4e5
{ext}File extensionpng / jpg

Base URL examples

# Simple public folder
Path Template:  /var/www/screens/ms_{uuid}.{ext}
Base URL:       https://screens.yourcompany.com/

# Date-partitioned
Path Template:  /var/www/screens/{date}/ms_{uuid}.{ext}
Base URL:       https://screens.yourcompany.com/

# Per-user folder
Path Template:  /home/chris/public_html/s/{date}/{time}_{uuid}.{ext}
Base URL:       https://yourdomain.com/~chris/s/
Five-minute setup

Configure SFTP upload

  1. 01

    Open Upload settings

    Click the Maxisnap tray icon → Settings → Upload tab. You'll see any existing servers and the Add Server button.

  2. 02

    Choose SFTP

    Click Add Server, pick SFTP from the protocol list. A configuration pane appears with fields for host, port, user, and authentication.

  3. 03

    Enter host + port + user

    Host: sftp.yourdomain.com. Port: usually 22. User: the SSH account name. If your provider assigned a different port, set it here.

  4. 04

    Pick your private key

    Click Browse and select your key file (~/.ssh/id_ed25519 on Linux/mac, %USERPROFILE%\.ssh\id_ed25519 on Windows). If the key is passphrase-protected, enter the passphrase — it's used in memory only, never stored to disk.

  5. 05

    Test and save

    Click Test Connection. On success you'll see "Connected — OK". Set your Path Template and Base URL, then Save. Your next Ctrl+Alt+7 capture lands on your server.

Frequently asked

SFTP screenshot upload FAQ

Does Maxisnap support Ed25519 SSH keys?

Yes, since v1.9.0. Ed25519 is the recommended key type — faster, smaller, more secure than RSA. ECDSA and RSA keys also work.

What key formats work?

OpenSSH Ed25519, ECDSA (P-256/384/521), and RSA (2048-bit and up). Both PEM-encoded and OpenSSH-format private keys. Encrypted keys prompt for passphrase at runtime.

Can I set a custom path on my server?

Yes. Use {date}, {time}, {uuid}, and {ext} placeholders. Directory structure is created if missing, so /var/www/screens/{date}/ms_{uuid}.{ext} auto-makes daily folders.

Does SFTP upload work over a VPN?

Yes. Maxisnap uses the system network stack, so WireGuard, Tailscale, OpenVPN, ZeroTier — all work transparently with private internal SSH hosts.

What happens if the connection drops mid-upload?

Errors surface as a toast notification; the screenshot is retained in the editor so you can retry. v1.9.0 fixed a session-leak bug — aborted uploads now close cleanly in a finally block.

Own every screenshot you take

Download Maxisnap, point it at your SFTP server, and stop shipping screenshots through someone else's cloud.

Download Free See all features

Related: S3 upload · screenshot-to-link · features · SFTP guide · for developers