mediaproc

🎬 SSH沙箱媒体工厂,安全转码无忧

安全隔离的SSH媒体处理容器,内置ffmpeg/sox/ImageMagick,支持视频转码、音频处理、图像转换,通过Python白名单沙箱防命令注入,适合敏感环境下的批量媒体处理任务。

收藏
9.4k
安装
2k
版本
1.1.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

mediaproc 是一个基于 Docker 的锁定式媒体处理服务,通过 SSH 暴露 ffmpeg、sox、ImageMagick 等工具集。用户通过环境变量 MEDIAPROC_HOSTMEDIAPROC_PORT 配置连接,所有命令经 Python 白名单包装器代理执行,无 Shell 解释器介入。

文件流转模型:数据通过 put/get 命令以 stdin/stdout 管道传输,工作目录锁定在 /work,路径遍历攻击被阻断。支持 2200+ 内置字体及 frei0r/LADSPA/LV2 插件生态。

显著优点

  • 命令注入免疫&&;、管道、子shell等元字符被当作字面参数处理,从根本上消除传统SSH远程命令执行的安全隐患
  • 零依赖部署:单容器封装完整媒体工具链,免去本地编解码环境配置
  • 细粒度访问控制:仅暴露白名单命令(ffmpeg/sox/convert等),无交互式Shell,SSH转发全禁用
  • 审计友好:所有操作通过SSH通道留痕,便于日志追踪

潜在缺点与局限性

  • 性能瓶颈:大文件传输依赖SSH管道,无原生SCP/SFTP优化,高吞吐场景受限
  • 单点故障:无内置高可用或负载均衡,容器宕机即服务中断
  • 功能边界:目录操作仅支持基础增删,无权限精细控制;插件生态依赖容器预装,自定义扩展需重建镜像
  • 调试困难:错误信息经多层包装(SSH→Python→工具链),问题定位链条较长

适合人群

  • 隔离不可信媒体输入的安全敏感场景(如接收外部用户上传内容)
  • CI/CD 流水线中需要确定性、可复现的媒体处理步骤
  • 多平台团队希望统一编码参数,避免"本地能跑"类环境差异

常规风险

  • 密钥管理:SSH密钥泄露即等于服务完全沦陷,需严格轮转机制
  • 资源耗尽:视频转码属CPU密集型,单容器易被恶意/误操作任务打满,建议配合cgroups硬限制
  • 输入验证盲区:虽阻断命令注入,但媒体文件本身可能携带攻击载荷(如恶意PNG触发ImageMagick漏洞),白名单机制不防护应用层漏洞

mediaproc 内容

手动下载zip · 2.7 kB
SKILL.mdtext/markdown
请选择文件