OpenWrtでhttpsのSSL証明書を設定する
サーバ
Published: 2023-02-23

OpenWrtでhttpsのSSL証明書を設定する方法です。
実はWebUIから設定できない??

Let’s Encryptなどの有効期限が短い証明書の場合は、シェルスクリプト化してcronで定期実行するといいかもしれません。

事前準備

  • SSL証明書を取得しておく
  • WebUIからhttpsを有効にしておく
    システム -> 管理 -> HTTP(S) アクセス 
    HTTPS へのリダイレクト にチェックを入れる
    

SSL証明書と秘密鍵をDER形式に変換する

openssl x509 -in server.crt -outform DER > uhttpd.crt
openssl x509 -in chain.crt -outform DER >> uhttpd.crt
openssl rsa -in server.key -outform DER > uhttpd.key

秘密鍵がRSAではなく楕円曲線暗号の秘密鍵の場合は openssl ec -in server.key -outform DER > uhttpd.key にしてください。

SSL証明書と秘密鍵をOpenWrtにコピーする

scp uhttpd.crt uhttpd.key <OpenWrtのホスト>:/etc/

OpenWrtのWebサーバであるuhttpdを再起動する

ssh <OpenWrtのホスト> /etc/init.d/uhttpd restart

これで、https://<OpenWrtのホスト>/に接続すると設定したSSL証明書が有効になっているはずです。