分类 Linux 下的文章

使用ffmpeg进行ts切片并AES-128加密

目录应包含文件

input.mp4
videokey.info
video.key

videokey.info文件内容示例

http://example.com/video.key
video.key

video.key文件内容示例

DMvkBs7vNlok1kj9

切片并加密

ffmpeg -i input.mp4 -c copy -bsf:v h264_mp4toannexb -hls_time 5 -hls_list_size 0 -hls_key_info_file videokey.info output.m3u8

-hls_time 设置每片的时长,默认值为2。单位为秒
-hls_list_size 设置播放列表保存的最多条目,设置为0会保存所有切片信息,默认值为5

由于解密的key文件都是公开的,所以并不能算上完全加密,用户只要把你的key+m3u8里的ts切片文件全部下载,用ffmpeg还是能解,这时就要考虑url的key防止用户直接下载和盗链。

编译安装ffmpeg

1、安装yasm

#CentOS
yum install yasm
 
#Debian
apt-get install yasm

无效则

wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make && make install

2、安装ffmpeg

yum install git
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure --enable-shared --prefix=/usr/local/ffmpeg
make && make install

查看ffmpeg版本

/usr/local/ffmpeg/bin/ffmpeg -version

如显示错误为

/usr/local/ffmpeg/bin/ffmpeg: error while loading shared libraries: libavdevice.so.56: cannot open shared object file: No such file or directory

修改/etc/ld.so.conf/ld.so.conf文件

vi /etc/ld.so.conf

内容修改如下,并保存

include ld.so.conf.d/*.conf
/usr/local/ffmpeg/lib/

保存好后,运行↓

ldconfig

添加到环境变量

vi /etc/profile

再最后一行添加

export PATH=/usr/local/ffmpeg/bin/:$PATH

保存退出并重启

查看ffmpeg版本

ffmpeg -version

Centos6.8 升级Python到版本2.7.13

wget https://www.python.org/ftp/python/2.7.12/Python-2.7.13.tgz
tar zxvf Python-2.7.13.tgz
cd Python-2.7.13
./configure
make all
make install
make clean
make distclean

查看版本信息

/usr/local/bin/python2.7 -V

建立软连接,使系统默认的 python指向 python2.7

mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/bin/python2.7 /usr/bin/python

重新检验Python 版本

python -V

- 阅读剩余部分 -

Linux rootkit的检测

1、chkrootkit

wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar -zxvf chkrootkit.tar.gz
cd chkrootkit-0.52/
make sense
./chkrootkit

chkrootkit参数说明

Usage: ./chkrootkit [options] [test ...]
Options:
  -h                显示帮助信息
  -V                显示版本信息
  -l                显示测试内容
  -d                debug模式,显示检测过程的相关指令程序
  -q                安静模式,只显示有问题部分,
  -x                高级模式,显示所有检测结果
  -r dir            设定指定的目录为根目录
  -p dir1:dir2:dirN 检测指定目录
  -n                跳过NFS连接的目录

- 阅读剩余部分 -

tar命令常用参数

常用选项

-z --gzip:使用gzip工具(解)压缩,后缀一般为.gz
-c --create:tar打包,后缀一般为.tar
-f --file=:后面立刻接打包或压缩后得到的文件名
-x --extract:解包命令,与-c对应
-p 保留备份数据的原本权限和属性
-g 后接增量备份的快照文件
-C 指定解压缩的目录
--exclude 排除不打包的目录或文件,支持正则匹配

辅助选项

-X --exclude-from:在一个文件中列出要排除的目录或文件(在--exclude=较多时使用)
-t --list:列出备份档案中的文件列表,不与-c、-x同时出现
-j --bzip2:使用bzip2工具(解)压缩,后缀一般为.bz2
-P 保留绝对路径,解压时同样会自动解压到绝对路径下
-v (解)压缩过程显示文件处理过程,常用但不建议对大型文件使用