设置 SFTP 截图上传
大多数截图工具都会把你的图片上传到它们自己的云服务。你会拿到一个链接,但你并不掌控那台服务器。你没法选择域名,没法设置访问控制,也没法保证这个链接两年后还能用。而且你上传的每一张图片——包括那些可能含有敏感数据的截图——都是在把它交托给第三方。
SFTP 上传彻底改变了这种模式。你的截图会传到你自己的服务器上、你自己的域名下,完全由你掌控。由你决定谁能访问它们,由你决定它们保留多久。从截取到链接的整条链路,都在你手里。
本指南将带你走一遍如何用 Maxisnap设置 SFTP 截图上传,从服务器准备、配置,一直到你的第一次自动上传。如果你有一台 Web 服务器或 VPS,15 分钟以内就能跑起来。
为什么选 SFTP 而非其他上传方式
SFTP(SSH 文件传输协议)通过加密的 SSH 连接来传输文件。与其他上传方式相比,它有几大优势:
- 传输过程加密 ——所有数据都通过 SSH 加密。与明文 FTP 不同,你的截图在传输途中无法被截获。
- 服务器上无需额外软件 ——只要你的服务器运行着 SSH(几乎所有 Linux 服务器都是如此),SFTP 便可开箱即用。不需要 FTP 守护进程,不需要 Web 服务器 API 端点,也不需要额外配置。
- 基于密钥的身份验证 ——你可以用 SSH 密钥对来代替密码,既更安全又更方便。
- 标准协议 ——SFTP 受所有主流托管服务商、VPS 和云平台支持,不会被厂商锁定。
- 完全掌控 ——你的服务器、你的域名、你的规则。截图就是你文件系统上普普通通的文件。
Maxisnap 同样支持 FTP、S3 兼容存储和 HTTP POST 上传。但对大多数拥有自己服务器的用户来说,SFTP 是最简单、也最安全的选择。 查看所有上传选项。
你需要准备什么
- 一台可通过 SSH 访问的服务器 ——任何 Linux VPS 都可以。DigitalOcean、Linode、Hetzner、AWS EC2,或者你自己的硬件。你需要 SSH 访问权限,以及一台用来对外提供上传图片的 Web 服务器(Nginx 或 Apache)。
- 一个域名 ——可选,但建议有。上传到
screenshots.yourdomain.com的截图,看起来比用 IP 地址要专业得多。 - Maxisnap Studio ——SFTP 上传需要 Maxisnap Studio 附加组件 (一次性付费 $20)。免费版包含完整的截图和标注功能。
第 1 步:准备你的服务器
如果你已经有了一台可通过 SSH 访问的 Web 服务器,请直接跳到第 2 步。否则,下面是最简配置:
在你的服务器上,为截图创建一个目录,并配置 Web 服务器从该目录对外提供文件。
# Create the screenshot directory sudo mkdir -p /var/www/screenshots sudo chown $USER:$USER /var/www/screenshots sudo chmod 755 /var/www/screenshots
如果你用的是 Nginx,请添加一个 server 块(或在你现有站点中添加一个 location):
server {
listen 80;
server_name screenshots.yourdomain.com;
root /var/www/screenshots;
location / {
try_files $uri =404;
expires 30d;
add_header Cache-Control "public, immutable";
}
} 如果你用的是 Apache,对应的做法更简单——只需把一个 VirtualHost 指向该目录即可:
<VirtualHost *:80>
ServerName screenshots.yourdomain.com
DocumentRoot /var/www/screenshots
</VirtualHost> 用 Let's Encrypt 添加 SSL(强烈建议):
sudo certbot --nginx -d screenshots.yourdomain.com # or for Apache: sudo certbot --apache -d screenshots.yourdomain.com
第 2 步:设置 SSH 密钥认证(推荐)
你可以用密码来认证,但 SSH 密钥更安全,还省去了每次输入密码的麻烦。如果你已经在用 SSH 密钥,请跳过这一步。
在你的 Windows 机器上,打开 PowerShell:
# Generate an SSH key pair (if you don't have one) ssh-keygen -t ed25519 -C "maxisnap-upload" # Copy the public key to your server type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh user@your-server "cat >> ~/.ssh/authorized_keys"
测试连接:
ssh user@your-server "echo 'Connection successful'"
如果连接时没有要求输入密码,就说明密钥认证已经生效。
第 3 步:配置 Maxisnap
打开 Maxisnap,依次进入 设置 > 上传。选择 SFTP 作为上传协议,然后填写以下各项:
- 主机: 你服务器的主机名或 IP 地址(例如
screenshots.yourdomain.com中查看) - 端口(Port): 22(默认的 SSH 端口,如果你的服务器使用非标准端口,请相应更改)
- 用户名(Username): 你的 SSH 用户名
- 身份验证(Authentication): 密钥文件(选择你的私钥,通常是
C:\Users\YourName\.ssh\id_ed25519)或密码 - 远程路径(Remote path):
/var/www/screenshots/(你在第 1 步中创建的目录) - URL 前缀:
https://screenshots.yourdomain.com/(文件可被公开访问的 URL)
点击 测试连接 进行验证。Maxisnap 会尝试连接并写入一个测试文件。如果成功,你就可以开始上传了。
第 4 步:你的第一次自动上传
按 Ctrl+Alt+7 (Maxisnap 的自动上传快捷键)。框选屏幕上的一块区域。Maxisnap 会截取该区域、通过 SFTP 上传,并把可分享的链接复制到你的剪贴板。
把这个链接粘贴到浏览器里。你的截图应当会从你自己的域名加载出来。URL 大致会是这个样子:
https://screenshots.yourdomain.com/2026-05-06_143022.png
一旦配置好上传目标,一次截取就能在同一套流程里完成上传到你的服务器、并把可分享的 URL 放到剪贴板上。
文件命名与整理
Maxisnap 默认根据截取时的时间戳来生成文件名(例如 2026-05-06_143022.png)。你可以在“设置 > 上传 > 文件名格式”中自定义命名格式。可选项包括:
{datetime}——完整时间戳(默认){date}/{datetime}——按日期整理到不同的子目录中{random}——随机的 8 位字符串,生成无法被推测的 URL{random}-{datetime}——用随机前缀保证唯一性,再加时间戳便于查找
对于注重安全的场景,请使用 {random} 命名。这会让 URL 无法被猜到——没有人能通过递增时间戳来枚举你的截图。
进阶:加固你的截图服务器
对于专业用途,可以考虑以下这些额外的安全措施:
访问控制
默认情况下,你的截图可以通过 URL 公开访问。要限制访问,你有几种选择:
- 随机文件名 ——没有确切的链接就无法猜到 URL。简单,但算不上真正的安全。
- Nginx 基础认证 ——为整个截图目录添加密码保护。适合团队内部分享。
- IP 白名单 ——把访问限制在你办公室或 VPN 的 IP 段之内。
- 签名 URL ——如果你用 S3 兼容存储而非 SFTP,就可以生成带时效的签名 URL。
自动清理
截图会随时间不断堆积。添加一个 cron 定时任务来删除旧文件:
# Delete screenshots older than 90 days 0 3 * * * find /var/www/screenshots -type f -mtime +90 -delete
带宽与存储
存储用量取决于图片尺寸、内容、格式和截取量。请从你自己的工作流程中挑一些有代表性的文件测一测,乘以预计的每月截取次数,并在选择套餐前为数据留存和备份预留出容量。
故障排查
“连接被拒绝”或超时: 确认你服务器的 SSH 端口是开放的(用 sudo ufw status检查防火墙规则)。确保 SSH 服务正在运行(sudo systemctl status sshd)。
“权限被拒绝”: 你的 SSH 用户需要对远程路径有写入权限。用 ls -la /var/www/screenshots/检查所属关系。该目录应当归你的 SSH 用户所有,或归你所在的某个用户组所有。
上传成功但链接打不开: 确认你的 URL 前缀与实际的公开 URL 相符。检查你的 Web 服务器确实在对外提供截图目录。试着用完整路径在浏览器里直接访问该文件。
上传缓慢: SFTP 是加密的,因此比明文 FTP 略有额外开销。对于一般大小的截图(200 到 500 KB),在任何还算过得去的网络下,上传都应在一秒内完成。如果上传一直很慢,请检查你到服务器的网络连接。
SFTP 的替代方案
对大多数拥有自己服务器的用户来说,SFTP 是最佳选择,但 Maxisnap 也支持其他协议:
- S3 兼容存储 ——AWS S3、DigitalOcean Spaces、Cloudflare R2、MinIO。最适合想要托管式存储、又不愿自己维护服务器的团队。
- HTTP POST ——上传到任何接受文件上传的 API 端点。最适合与自定义后端集成。
- FTP ——老旧协议,未加密。仅在无法使用 SFTP 时才用。不建议用于敏感截图。
为什么自托管截图很重要
使用第三方截图服务,意味着把你的数据、你的可用性和你的链接都托付给他们。服务会关停、 更改定价,或被收购。链接会失效,数据政策会变动。
自托管截图消除了这些依赖。你的图片存放在你自己的服务器上,通过你的域名访问,想留多久就留多久。对于 涉及隐私的敏感截图、专业文档,以及那些需要长期可靠有效的链接来说——自托管都是正确的选择。这也是开发者 选择 Maxisnap 而非 Monosnap。
下载 Maxisnap ,今天就把 SFTP 上传设置好。最快的途径是那份专门的 在 Maxisnap 中配置 SFTP 截图上传 详细教程——主机、端口、密钥、基础 URL,搞定。从现在起十五分钟后,你就拥有了一套更快、更私密、且完全由你掌控的截图工作流程。