banner
miaoer

miaoer

喵二の小博客 xLog 分站
tg_channel
telegram

OpenwrtにSSL証明書を適用する

内部ネットワークで見るだけではあまり役に立ちませんが、外部ネットワークでアクセスすると必ずしも同じではありません。

Openwrt に SSL 証明書を設定することは想像以上に難しくありませんでした。私のファームウェアには OpenSSL がコンパイルされていないし、必要もありませんでした。テストの際には、デフォルトで https でアクセスするようにコンパイルしましたが、本番版では内部ネットワークを使用しないと有効にならないと感じました。

Openwrt に SSL 証明書を設定するには、まず SSL 証明書が必要です。私はここでは GoDaddy(無料で申請できる SSL 証明書)を使用しました。ここでは ECC 256 の暗号化アルゴリズムを使用して 1 つの証明書を申請しました。

image

ダウンロード:証明書サーバータイプを Nginx に選択し、圧縮ファイル内のキー.keyと証明書.crtのみを使用します。

ファームウェアに付属のシステムファイルマネージャーがない場合は、お手持ちの SSH ツールで SCP を使用してアップロードできます。ここでは Windows ターミナルのコマンドをデモします。scp C:\Users\【ユーザー】\Desktop\****.crt [email protected]:/www 参考までに。

vim を使用してvi /etc/config/uhttpdを編集します。

config uhttpd 'main'
        list listen_http '0.0.0.0:80'
        list listen_http '[::]:80'
        list listen_https '0.0.0.0:443'
        list listen_https '[::]:443'
        option redirect_https '0'
        option home '/www'
        option rfc1918_filter '1'
        option max_connections '100'
        option cert '/etc/uhttpd.crt'
        option key '/etc/uhttpd.key'

option cert '/etc/uhttpd.crt'/etc/uhttpd.crt/www/****.crtに置き換えます。
option cert '/etc/uhttpd.key'/etc/uhttpd.key/www/****.keyに置き換えます。

パブリック IP がある場合は、ISP が 443 ポートをブロックしていないか確認してください。ブロックされている場合は、443 を好きなポートに変更し、list listen_https '0.0.0.0:443''0.0.0.0:443'を好きなポートに置き換えます。

保存して Esc キーを押し、Shift + ;(:) を入力して wq と入力して vim を終了します(:wq)。

次に、uhttpd を再起動します /etc/init.d/uhttpd restart

内部ネットワークと外部ネットワークの両方でテストしてみてください。ポートマッピングと DDNS ドメイン解決を行うことを忘れないでください。広帯域 IPv6 では 443 ポートに制限はありませんので、正常にアクセスできます。

これで証明書の設定が完了しました。

image

この記事はMix Spaceから xLog に同期されました。
元のリンクはhttps://www.miaoer.xyz/posts/network/openwrt-sslです。


読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。