nginx hls を認証付きで配信したい refererを見て判断

惨々探し回ったけど、やっぱりお金を払わないとSecure Linkを使ったHLS配信は無料では出来なさそう。何か、有料のモジュールなどを購入しないといけない。

そこで、無料でできる範囲で試行錯誤して何とかreferer判断する事で直リンクを避ける事だけはできた。セキュリティ的にまだ問題があるかもしれないけど。一応忘れないように。
単純にm3u8,tsファイルができるフォルダにbasic認証をかけると、tsファイルが無数にできる関係で、その都度パスワード認証が出てきて、とても実用できない。

そこで
1.videojs を利用 プレーヤhtmlにはbasic認証をかけておく
2.hlsフォルダはreferer制御 refererが同じホストでなければアクセスさせない

/etc/nginx/nginx.conf

#パスワード認証部分(videojsを配置するディレクトリ)

 

#m3u8ファイルができる部分

#rtmp の配信を受け hlsに変換する部分

/usr/local/nginx/html/live/hls.html

確認できたブラウザ

iOS Safari,Google Chrome
Windows Edge

m3u8に直接アクセスしても再生できない。

今のところ、Androidでアクセスできず。refererがうまく取れないのかな。referer設定をとったら再生できるようになった。

1件のコメント

  1. ピンバック: VOD – オレンジの国

コメントは停止中です。