LocalSend默认启用HTTPS加密模式,通过动态生成TLS证书、SHA-256指纹校验和verify_cert验证实现端到端安全传输;支持自动证书、手动PKI部署、强制HTTPS锁定及WebRTC信令层加固四类配置。

如果您在使用LocalSend时希望启用端到端加密保障传输安全,则需正确配置HTTPS加密模式。LocalSend默认采用动态生成的TLS证书实现HTTPS加密通信,其安全机制依赖于本地证书验证、密钥对生成与SHA-256哈希校验。以下是具体配置方法:
一、启用HTTPS加密模式(自动证书)
LocalSend默认即运行于HTTPS加密模式,启动时自动在内存中生成自签名RSA证书与私钥,并通过verify_cert函数完成证书有效性校验。该模式无需手动导入证书,所有通信均经TLS/SSL加密保护。
1、确保LocalSend版本为v1.13.0或更高版本,旧版本可能默认启用HTTP调试模式
2、启动应用后进入设置界面,检查“加密模式”选项是否显示为HTTPS(已启用)
3、在app/lib/util/security_helper.dart中确认enable_https = true已被设为默认值
4、发送文件时观察地址栏URL前缀是否为https://,且浏览器或接收端未弹出证书警告
二、手动配置TLS证书(企业级部署)
适用于需对接内部PKI体系的企业环境,可替换默认自签名证书为受信CA签发的证书,从而消除设备端证书警告并满足合规审计要求。
1、准备PEM格式证书与私钥文件:cert.pem包含完整证书链,private_key.pem为对应RSA私钥
2、将两个文件置于LocalSend可读路径,例如C:\localsend\certs\
3、通过命令行启动并指定证书路径:localsend --receive --tls-cert cert.pem --tls-key private_key.pem
4、或在环境变量中配置:export TLS_CERT_PATH="C:/localsend/certs/cert.pem"; export TLS_KEY_PATH="C:/localsend/certs/private_key.pem"
三、强制启用加密并禁用HTTP调试模式
防止因误操作或配置残留导致降级至不安全的HTTP模式,需显式关闭调试通道并锁定加密策略。
1、编辑LocalSend配置文件config.json(位于用户数据目录下),将http_enabled字段设为false
2、在app/rust/src/api/crypto.rs中确认force_https_only = true编译标志已启用
3、启动时添加参数:localsend --receive --no-http-fallback
4、验证端口监听状态:执行netstat -ano | findstr :3000,确认仅绑定HTTPS服务端口,无HTTP端口(如8080)监听记录
四、WebRTC信令层加密加固
当使用WebRTC点对点传输时,需确保信令交换过程同样受TLS保护,避免STUN服务器暴露原始IP或遭中间人劫持。
1、修改WebRTC配置,将STUN服务器地址由stun:stun.l.google.com:19302替换为TLS加密的TURN服务器地址
2、在app/rust/src/api/webrtc.rs中设置ice_transport_policy = "relay",强制流量经中继而非直接P2P暴露
3、启用DTLS-SRTP:确保webrtc_config.dtls_cert_fingerprints包含有效的SHA-256指纹列表
4、启动接收服务时追加--webrtc-secure-signaling参数:localsend --receive --webrtc-secure-signaling

















