因昨晚收到阿里云邮件,指出FFmpeg 2.x被爆高危漏洞(CVE-2016-1897、CVE-2016-1898),黑客可通过上传构造的hls切片索引文件,远程窃取服务器端本地文件。FFmpeg 多个版本的用户存在被攻击的风险! 详情可以看这里
公司的视频转换服务器刚好是这个漏洞范围内的,版本2.6,服务器版本CentOS6.5.
记录下升级的过程。
1、在ffmpeg.org官网下载最新的版本,目前是3.0.2;
2、上传到服务器,这个就不说了;
3、用tar解压;

tar jxvf ffmpeg-3.0.2.tar.bz2 

4、开始重新编译,注意要把原来的x264等插件链接进去

cd ffmpeg-3.0.2
 ./configure --enable-shared --prefix=/usr/local/ffmpeg --enable-shared --enable-yasm --enable-libx264 --enable-nonfree --enable-libfaac --enable-gpl --enable-pthreads --extra-cflags=-I/usr/local/x264/include --extra-ldflags=-L/usr/local/x264/lib --extra-cflags=-I/usr/local/libpng/include --extra-ldflags=-L/usr/local/libpng/lib

make
make install

5、修改配置文件

vi /etc/ld.so.conf

6、加入:/usr/local/ffmpeg/lib
7、执行ldconfig
8、为 Ffmpeg 加入环境变量

vi /etc/profile

9、加入以下内容:

FFMPEG=/usr/local/ffmpeg
PATH加入:$FFMPEG/bin

10、让环境变量生效

source /etc/profile

11、查看运行版本

ffmpeg -version
ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg 

developers
built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-16)
configuration: --enable-shared --prefix=/usr/local/ffmpeg
libavutil      55. 17.103 / 55. 17.103
libavcodec     57. 24.102 / 57. 24.102
libavformat    57. 25.100 / 57. 25.100
libavdevice    57.  0.101 / 57.  0.101
libavfilter     6. 31.100 /  6. 31.100
libswscale      4.  0.100 /  4.  0.100
libswresample   2.  0.101 /  2.  0.101

12、验证转码是否成功

ffmpeg -i /usr/home/jack/test.mov -r 25 -b 3200k -vcodec mpeg4 -ab 128k -ac 2 -ar 44100  /usr/local/jack/test.mp4

注意:如果遇到ffmpeg: error while loading shared libraries: libpostproc.so.54: cannot open shared object file: No such file or directory错误,估计是没进行ldconfig。


阿修罗王
105 声望2 粉丝