mediaproc

🎬 安全容器化远程媒体处理

通过 SSH 访问隔离容器,使用 ffmpeg、sox、ImageMagick 进行安全媒体文件处理,支持视频转码、音频处理、图像转换等操作。

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

使用说明

核心用法

mediaproc 是一种基于 Docker 容器的远程媒体处理技能,通过 SSH 协议提供安全的视频、音频和图像处理服务。用户需要先配置 MEDIAPROC_HOSTMEDIAPROC_PORT 环境变量指向运行中的 mediaproc 实例,首次连接时需接受主机密钥。

所有命令通过 SSH 执行,经 Python 包装器白名单过滤,仅允许预设命令,禁止 shell 注入。文件操作限定在 /work 目录内,路径遍历被阻止。

支持的媒体工具

  • ffmpeg/ffprobe: 视频/音频编解码、转码、滤镜处理
  • sox/soxi: 音频处理与信息获取
  • convert/identify/magick: ImageMagick 图像处理

文件操作命令

ls/put/get/rm/mkdir/rmdir/rrmdir,支持 JSON 格式输出列表

显著优点

1. 安全隔离: 无 shell 访问,命令白名单机制,禁用所有 SSH 转发,仅支持密钥认证
2. 防止注入: &&;|$() 等被当作字面参数处理,无命令注入风险

3. 路径锁定: 强制限定在 /work 目录,阻止目录遍历攻击

4. 功能丰富: 集成 ffmpeg、sox、ImageMagick 三大工具链,支持 frei0r、LADSPA、LV2 插件

5. 字体完备: 内置 2200+ 字体,覆盖多语言场景

潜在缺点与局限性

1. 架构复杂: 需要额外部署 Docker 容器并维护 SSH 服务
2. 网络依赖: 所有操作依赖 SSH 连接,本地离线无法使用

3. 交互受限: 无交互式 shell,复杂工作流需多次命令组合

4. 存储限制: 文件仅能在 /work 目录操作,需通过 put/get 传输

5. 首次配置繁琐: 需要手动配置环境变量、接受主机密钥

适合人群

  • 需要在受限环境中安全处理媒体文件的开发者/运维人员
  • 追求命令行自动化、避免本地安装重型媒体工具链的用户
  • 构建 CI/CD 流水线中媒体处理环节的团队
  • 注重安全隔离、需防止恶意文件执行风险的企业环境

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 密钥泄露 | SSH 私钥泄露导致未授权访问 | 妥善保管密钥,限制容器网络暴露 |
| DoS 攻击 | 恶意大文件处理耗尽资源 | 容器层面设置资源限制 |
| 中间人攻击 | 首次连接时主机密钥被伪造 | 离线验证主机密钥指纹 |
| 资源滥用 | 转码任务占用过量 CPU/内存 | 监控容器资源使用,设置配额 |

安全等级评估说明

基于技能设计:强制 SSH 密钥认证、白名单命令过滤、无 shell 访问、路径沙箱、禁用端口转发。这些机制构成了纵深防御体系。

mediaproc 内容

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