SyncClipboard:替代微信输入法同步功能的最佳解决方案
介绍 SyncClipboard 这款跨平台剪贴板同步工具以及部署流程,作为微信输入法同步功能的最佳替代方案,实现多设备间内容无缝传输。

· 2 min read
我一直向往那种在单一屏幕上无缝操控所有设备的终极体验。但由于iOS系统封闭的生态,无法在Windows实现。退而求其次,我将目光投向了解决日常最高频的痛点——跨设备剪贴板同步。
在国民级软件的微信的大力推广下,我不得不发现了「小而美」的微信输入法。而微信输入法的一大亮点功能就有剪切板同步。半年前,我兴冲冲在各个设备都安装了微信输入法,使用体验还真不错,十分便捷,简约而不简单。
但是,两个致命的缺陷逐渐让我浑身不自在,其一,作为一款输入法,它竟无法自定义用户词库,这对于追求效率的用户来说是个硬伤;其二,也是更让我警惕的——它建立在“用隐私换方便”的模式之上。每当我复制密码、API密钥或是个人敏感信息,并意识到这些数据正毫无保留地流向微信的服务器时,那种心头一紧的感觉便挥之不去。不是说自己的数据有多重要,但总有一股难受的感觉。
某天闲下来的时候想到:我之前的思路太局限了。我将希望完全寄托于各大厂商的第三方输入法来实现互联,却因此忽略了隐私的代价,也忘记了去拥抱开源。
SyncClipboard主要功能 #
来自GitHub官方SyncClipboard: 跨平台剪贴板同步方案:
剪贴板同步,支持「文字」、「图片」和「文件」。服务器/客户端架构,可以使用客户端内置服务器、独立部署服务器,也可以使用支持WebDAV的网盘作为服务器
优化图片类型的剪贴板,功能有:
- 从任意位置复制图片时,可以直接向文件系统粘贴图片文件,反之亦然
- 从浏览器复制图片后,后台下载原图到本地,解决无法从浏览器拷贝动态图的问题(大多网站有认证,适用范围有限,支持bilibili动态图片)
- 从文件系统复制较新格式类型的图片文件时(webp/heic等),在剪贴板内储存gif或jpg格式,用于直接向支持图片的文本框粘贴图片
补充:
- 支持所有主流平台,包括 Windows, macOS, Linux, Android, 和 iOS,真正实现了全平台覆盖。
- 使用「服务器/客户端」架构,不受局域网的限制,适合网络复杂的情形(如校园网)。
- 使用自部署的中转服务器,无隐私风险
服务端搭建 #
准备工作:
- 服务器:由于需要服务器中转,延迟越低越好,但没有这么高的要求,我使用日本的服务器,无延迟体感。内存使用100MB左右。
- 域名:用于开启 HTTPS,保障数据传输安全性。
- 安装Nginx、Docker
话不多说,直接用最简单的 docker-compose
+ Nginx 反代方案开干。
编辑docker-compose.yml #
- 登录服务器,创建一个工作目录并进入,然后创建
docker-compose.yml
文件:
mkdir syncclipboard && cd syncclipboard
sudo vim docker-compose.yml
- 将以下内容写入
services:
syncclipboard-server:
image: jericx/syncclipboard-server:latest
container_name: syncclipboard-server
restart: unless-stopped
ports:
- "127.0.0.1:5033:5033" # 左边的5133可以改成服务器上没有用过的其他端口
environment:
- SYNCCLIPBOARD_USERNAME=your_username
- SYNCCLIPBOARD_PASSWORD=your_pswd
# 自动更新
watchtower:
image: containrrr/watchtower:latest
container_name: watchtower_sync
restart: unless-stopped
environment:
- TZ=Asia/Shanghai
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --cleanup --schedule "0 0 4 * * *"
Tips: 这里踩了个坑,密码不建议包含特殊符号,例如 * $等,会导致验证失败。
- 运行
docker compose up -d
配置Nginx #
不要忘记将域名解析到服务器,因为有很多种配置Nginx的方式,这里只给出我写的Nginx配置:
# Server block for HTTP to HTTPS redirection
server {
listen 80;
server_name clip.yourdomain.com; # ⚠️ 替换成你的域名
# Redirect all other HTTP traffic to HTTPS
location / {
return 301 https://$host$request_uri;
}
}
# Server block for HTTPS
server {
listen 443 ssl http2;
server_name clip.yourdomain.com; # ⚠️ 替换成你的域名
client_max_body_size 1024M;
# --- SSL Certificate Configuration ---
ssl_certificate /etc/ssl/certs/clip.yourdomain.com.pem; # ⚠️ 替换成你的证书路径
ssl_certificate_key /etc/ssl/private/clip.yourdomain.com.key; # ⚠️ 替换成你的私钥路径
# --- SSL Security Enhancements ---
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_stapling on;
ssl_stapling_verify on;
# Add HSTS header to force HTTPS on the client side
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
# --- Reverse Proxy Configuration ---
location / {
# 代理到 docker-compose 中映射的宿主机端口 1265
proxy_pass http://127.0.0.1:5033;
# --- WebSocket Support ---
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# --- Standard Proxy Headers ---
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
}
}
配置好后,检查 Nginx 语法并重载服务:
sudo nginx -t
sudo systemctl reload nginx
至此可以使用域名访问,输入设置的username以及password,看到以下提示证明成功部署:
客户端使用 #
查看GitHub官方教程即可:SyncClipboard #客户端使用
这里提到「Windows」以及「ios」:
Windows #
在Release页面下载名字以
SyncClipboard_win_
开头的zip文件,解压后运行SyncClipboard.exe
服务器配置:
图片粘贴配置:
检查服务状态: 应为 ✔ ❌ ✔ ✔
iOS #
- 手动同步,导入这个快捷指令,手动触发上传或下载
- 自动同步,导入这个快捷指令,运行后设备会自动在后台同步剪贴板内容,此快捷指令将执行无限时长,需要手动关闭,你还可以手动修改同步后是否发送系统通知、查询的间隔秒数
- 自动上传短信验证码,参考这个discussion中的视频教程 #60
我选择使用手动触发,配合辅助触控中的「轻点背面」,很好用。
至此,试试吧,交互的过程是十分优雅的:拿起手机只需轻叩背面,即可同步文字到剪切板、下载图片甚至文件。
经过一番折腾,终于找回那份掌控自己数据的安心感。
也请相信,在看似被巨头垄断的数字世界里,总有另一条路可走。那是一条由开源精神铺就的、通往真正自由的道路。我们需要的,仅仅是多一点探索的勇气。