WowzaStreamingEngine用のSSL証明書をLet'sEncryptで作成する


社内用など、インターネットに公開していないWowzaServerのSSL証明書をLet'sEncryptで更新する方法を調べたのでメモ。

ベースはこちらを参考にしました。
https://vanmarion.nl/blog/blog/ssl-letsencrypt-wowza-4-x-server-frontend/

前提

  • docker をインストールしておいてください。
  • 以下、「my-wowza.example.org」の部分は任意のドメインに読み替えてください。

wowza-letsencrypt-converter

Let'sEncryptの証明書をwowza用のJKS形式に変換するスクリプトをダウンロードします。

cd /usr/local/WowzaStreamingEngine/lib
wget https://github.com/robymus/wowza-letsencrypt-converter/releases/download/v0.2/wowza-letsencrypt-converter-0.2.jar

証明書のリクエスト

docker run -it --rm --name certbot -v "/etc/letsencrypt:/etc/letsencrypt" -v "/var/lib/letsencrypt:/var/lib/letsencrypt" certbot/certbot certonly --manual --preferred-challenges dns -d my-wowza.example.org

以下のようなメッセージが表示されますので、DNSサーバで「_acme-challenge.my-wowza」のTXTレコードに「abcdefghijklmnopqrstuvwxyz1234567890ABCDEFG」を指定して保存します。

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name
_acme-challenge.my-wowza.example.org with the following value:

abcdefghijklmnopqrstuvwxyz1234567890ABCDEFG

Before continuing, verify the record is deployed.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

converterでJKS形式に変換して出力します。

cd /usr/local/WowzaStreamingEngine/lib
java -jar wowza-letsencrypt-converter-0.2.jar -v /usr/local/WowzaStreamingEngine/conf/ /etc/letsencrypt/live/
cd /usr/local/WowzaStreamingEngine/conf
cat jksmap.txt
# 表示される keyStorePath と keyStorePassword を後で使います。
vi VHost.xml
# ここで、KeyStorePath と KeyStorePassword を書き換えます。

WowzaStreamingEngineの再起動

service WowzaStreamingEngine restart

TODO

  • 自動更新