RTSP 与 554 端口
554 是 RTSP 的默认端口,用于 IP 摄像头与流媒体服务器的信令交互:客户端先描述媒体、再建立会话、最后发起播放。音视频数据本身通常不经过 554,而是由 RTP 在动态端口上传输。地址中常直接携带账号口令,弱口令摄像头是该端口最典型的风险来源,也正因如此,这类设备长期是物联网僵尸网络扫描与入侵的主要目标。
基本信息
| 服务 | RTSP 信令(摄像头、流媒体服务器、视频平台) |
|---|---|
| 协议 | TCP 与 UDP |
| 规范 | 早期版本与 RTSP 2.0 两份规范 |
| 数据通道 | RTP 与 RTCP,使用动态端口范围 |
| 地址形态 | 常写成带用户名口令的完整地址 |
| 安全等级 | 不与公网直接互联,按需映射 |
典型使用场景
- 监控平台接入:把摄像头码流拉取到平台统一存储与展示
- 视频诊断:确认码流编码、分辨率与帧率是否符合预期
- 取帧留证:按需截取一帧用于告警或人工确认
- 转推分发:把摄像头码流转推到流媒体服务器供多端观看
- 协议排查:区分信令阶段失败与媒体传输阶段丢包
探测、抓帧与转推
探测、抓帧与转推
ffprobe -v error -rtsp_transport tcp -show_entries stream=codec_name,width,height -of csv rtsp://192.0.2.10:554/stream1 # 确认编码与分辨率
ffmpeg -rtsp_transport tcp -i rtsp://192.0.2.10:554/stream1 -frames:v 1 -y frame.jpg # 抓取一帧留证
ffmpeg -rtsp_transport tcp -i rtsp://192.0.2.10:554/stream1 -c copy -f rtsp rtsp://media.example.com/live1 # 转推地址形态与鉴权
| 形态 | 说明 | 注意点 |
|---|---|---|
| rtsp://host:554/stream | 无鉴权或设备内部鉴权 | 尽量避免对外直接暴露 |
| rtsp://user:pass@host/stream | 凭据写在地址中 | 注意不要留存在脚本日志与浏览器历史里 |
| 通道号路径 | 不同厂商路径规则不同 | 按设备手册确认主码流与子码流地址 |
故障分层
| 阶段 | 现象 | 排查方向 |
|---|---|---|
| 信令 | 探测阶段即被拒绝 | 核对账号口令与设备访问权限 |
| 传输 | 能连上但画面卡顿或花屏 | 改用 TCP 承载或降低码率,检查链路丢包 |
| 解码 | 能取流但播放器无法解码 | 核对编码格式与播放器支持范围 |
设备使用默认口令又直接映射到公网,是物联网设备被入侵的标准路径;至少要做到改口令、隔离网段、仅按需映射端口。
承载方式影响体验:UDP 时延低但丢包会直接反映为花屏,TCP 更稳但网络抖动时可能出现累积延迟;跨公网或弱网环境优先选择 TCP。
媒体端口常被忽略:除 554 外还要按厂商实际放行 RTP 与 RTCP 的端口范围,只开信令端口时,媒体流建立不起来而信令看起来完全正常。