rabbit51

it's since Nov.30 2005
May.29 2014, transferred from broach

OpenWrt化WZR-HP-G300NHのLuCIをssl化する

2018-08-24 11:00:00 | WZR-HP-G300NH
OpenWrt化WZR-HP-G300NHのLuCIをssl(https)で接続するよう設定する

「システム・ソフトウェア」を選択し、「リストの更新」を行う


プログレッシブ表示が無いので「リストの更新」状況が判らないが結果表示されるまで待つ。


「フィルタ」に「luci-ssl」設定し検索する


「luci-ssl」をインストールする


パッケージがダウンロードされ、インストールが行われる


インストールが終了すると「再起動」確認となるので、再起動を実行する


いくら待っても再接続しないので、ほど良い頃合いを見計らって、「http://OpenWrt/index.html」でアクセスする


「luci-sslパッケージ」に含まれる「px5g」により自己署名サーバ証明書が生成され起動されたhttpsにredirectで接続する


「サーバ証明書の内容」


証明書を信頼して接続を続行する


macOSX sierraのキーチェーンに自己署名証明書を登録するための認証を行う


キーチェーンのログインにサーバ証明書が登録される(正規のサーバ証明書設定後は、削除する)


httpsでLuCI起動後、メニューを確認するが、httpsに関連した設定は存在しない。


サーバ証明書をプライベートCAが発行したイントラネット用サーバ証明書に入れ替える方法を調べてみる
安全性の向上について(WebUI)
利用できるhttpパッケージ
uhttpdサーバを使用
サーバ証明書の設定

「luci-ssl」パッケージは、uhttpdサーバでサーバ証明書(公開鍵)が「/etc/uhttpd.crt」に秘密鍵が「/etc/uhttpd.key」に設定されている。uhttpd.crtもuhttpd.keyもDERフォーマットのバイナリである必要がある。CA発行の中間CA証明書やルート証明書は、結合して「/etc/uhttpd.crt」に設定するよう記載されている。

Let's Encryptの証明書(DST Root CA X3/Let's Encrypt Authority X3/サーバ証明書)のようにtrust pathに中間CAがあるサーバ証明書をOpenWrtに設定させる時の情報
https configuration for uhttpd
DER Certificate chain not being walked, FireFox and SSL Labs fail

これらの情報を解釈すると「trust path」の公開鍵を結合したファイルを公開鍵設定する。
結合したファイルは、上記情報によると「結合したファイル」を「バイナリ(der)」変換するように読める。
「openssl x509」のコマンドで結合したファイルをバイナリにすることは出来ない(実行した場合は、ファイル先頭の証明書がDERファイルとなる)。

結合する「trust path」の各証明書は、PEMフォーマット。結合したfullpathファイルもPEMフォーマット。
ファイルの拡張子は、「.pem」でも「.crt」でも良い。
「/etc/config/uhttpd」設定ファイルで「option cert ファイルパス名」で指定されたファイル。

秘密鍵
・暗号化されていない「バイナリ形式(DER)」のファイルである事が必要。
・秘密鍵を「PEM形式」のファイルを指定するとuhttpdが起動しない。

サーバ証明書の「PEM -> DER」変換
server.pem -> server.crt
openssl x509 -in server.pem -outform der -out server.crt

サーバ証明書の「DER -> PEM」変換
server.crt -> server.pem
openssl x509 -inform der -in server.crt -out server.pem

trust pathの結合
cp server.pem intermediate-ca.pem > fullpath.pem

サーバ秘密鍵の「PEM -> DER」変換
openssl rsa -in server-key.pem -outform der -out server.key

証明書ファイルをOpenWrtにコピー
scp fullpath.pem root@192.168.1.1:/etc/uhttpd.crt
scp server.key root@192.168.1.1:/etc/uhttpd.key

OpenWrtのuhttpd設定例
/etc/config/uhttpd
option cert /etc/uhttpd.crt
option key /etc/uhttpd.key

OpenWrtのuhttpd再起動
/etc/init.d/uhttpd restart

OpenWrtがSSLネゴシエーション時に「trust path」設定のサーバ証明書が提示されるか確認する
openssl s_client -connection 192.168.1.1:443 -CAfile rootCA.pem -showcerts -status



コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ひかり電話ルータ(PR-S300SE)配下のPCからOpenWrt化WZR-HP-G300NHで「ぷらら」IPv6 IPoE Transix DS-Liteを使う

2018-08-21 08:20:00 | WZR-HP-G300NH
OpenWrt化したBuffalo WZR-HP-G300NH配下で「ぷらら」IPv6 IPoE DS-Liteの利用を確認した。ひかり電話ルータ(PR-S-300SE)配下のネットワークに接続されたPCから同じネットワークに接続されたOpenWrt化WZR-HP-G300NHのDS-Lite機能(IPv4 over IPv6)を使ってみた。



ひかり電話ルータ(PR-S300SE)のデフォルトルートをOpenWrt化WZR-HP-G300NHへ設定する。
OpenWrt化WZR-HP-G300NHのWAN側インターフェースのNAPT(Masquerade)を解除しているので、受取ったIPv4パケットがdslite-TRANSIXトンネルインターフェースに転送されIPv4 over IPv6でインターネットマルチフィードTransix DS-Lite AFTRサーバに転送されIPv4インターネット接続される。

ひかり電話ルータ(PR-S300SE)の
デフォルトルート設定前のIPv4/IPv6状態


デフォルトルートをOpenWrt化WZR-HP-G300NHに設定


デフォルトルート設定後のIPv4/IPv6状態


P.S.
市販のIPv6 IPoE(DS-Lite/V6プラス[Map-E])対応のルータでもブリッジ設定でDS-Lite機能だけ使えるかも。。。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Buffalo WZR-HP-G300NHにOpenWrtを入れ「ぷらら」のIPv6 IPoEでTransix DS-Liteを使う

2018-08-19 18:00:00 | WZR-HP-G300NH
「ぷらら」がIPv6 IPoEの提供を開始したので、ヤマハのNVR500で利用している。Macbook pro(macOSX Sierra)単独で、直接Transix IPv6 IPoE DS-Liteの利用も確認できた。DS-Liteを調べていると「OpenWrtでDS-Liteを使う」情報を得た。OpenWrtって何?さらに調べていると「 WZR-HP-AG300HをOpenWrtで再利用」なる情報を見つけた。
2009年5月に導入したBuffalo WZR-HP-G300NH不具合ヤマハNVR500の導入以来、無線LANアクセスポイント兼Gbtスイッチとして使用してきたが、ネットワークから撤去し予備機材扱いとしていたのを思い出した。OpenWrtの対応ハードウェアを検索して観ると「WZR-HP-G300NH」でも利用出来そう。確認して観ることにした。

運用中の構成はそのままに、ひかり電話ルータ(PR-S300SE)の配下に「OpenWrt化WZR-HP-G300NH」を下記のように配置して確認することにした。


(1)OpenWrtのインストール
OpenWrtサイトSupported Devices」ページを表示し「Tables answering your questions」セクションの「I have a router and want to know if it is supported by OpenWrt」に利用可能機器一覧がある。ここから#191 Buffalo WZR-HP-G300NH行の「Device page」欄内リンクから「wzr-hp-g300nh」ページを選択する。「Installation」セクションの「Firmware OpenWrt Install」欄内のリンクからfirmwareを取得する。

WZR-HP-AG300HをOpenWrtで再利用」を参考にfirmwareをインストールする

「http://192.168.1.1/」でログインページが表示されるはずだが、エラーページが表示された。

「http://192.168.1.1/index.html」とすると「http://192.168.1.1/cgi-bin/luci」へリンクされログインページが表示される。


日本語化が必要な場合は、
OpenWrtの初期設定作業の続き」を参考に設定する
「システム・ソフトウェア」で「リスト更新」をクリック後、プログレッシブ表示が無いので、落着いて待つ事
OpenWrt(18.06)の日本語用パッケージ名は、「luci-i18n-base-ja」

18.06では、
「ネットワーク・ファイアウォール」の日本語化が未了?不具合?
「ネットワーク・インターフェース」の「グローバルネットワークオプション」?ULA(ユニーク・リンク・アドレス)の設定だが、英語もGlobal Network Options.....?

(2)環境に合わせてOpenWrtの変更
・ひかり電話ルータ(PR-S300SE)のLAN側ネットワーク「192.168.1.0/24」に接続するため、OpenWrtのLANを「192.168.12.0/24」ネットワークとしてアドレスを「192.168.12.1」に設定(「ネットワーク・インターフェース・LAN」「IPv4アドレス」)


・無線LANの設定(「ネットワーク・無線LAN」)
OpenWrtで無線LANを有効にする」を参考に設定する
(設定後、PCやiPhoneなどからWiFi接続を確認)


・WANに設定されるNAPTを外し「普通のルータ」に設定
「ネットワーク・ファイアウォール」
初期設定時は、「WAN」からのパケットをMasquerading(NAPT)している


Forwardを許可、Masqueradingをオフ、MSS clampingをオフに設定



(3)ひかり電話ルータに接続
ひかり電話ルータ(PR-S300SE)のLAN1から4の空いているコネクタにWZR-HP-G300NHのWANコネクタから接続する。
OpenWrtのWANインターフェースとWAN6インターフェースは、PR-S300SEからDHCP/DHCPv6でアドレスなどが取得される。


PR-S300SEのDHCPv4サーバ払い出し状況


PR-S300SEのDHCPv6サーバ払い出し状況


接続確認を行う
外部のIPv6サイト「www11.plala.or.jp」と内部NVR500配下のネットワーク内ホスト「2409:10:XXXX:YY10::11:241」


外部のIPv4は、DS-Lite未設定のため内部NVR500配下のネットワーク内ホスト「192.168.11.241」



(4)DS-Liteの設定を行う
IPv4のDefault gatewayがDS-Liteサーバに向けられるのでNVR500配下の内部ネットワーク(192.168.11.0/24)へ接続できなくなる。
静的経路設定で対応する(192.168.11.0/24ネットワークをPR-S300SEへ)。
「ネットワーク・静的ルーティング」で設定


DS-Lite接続用moduleを設定する。「リスト更新」ボタンが表示されている場合は、最新のリストを取得する。「パッケージのダウンロードとインストール」「フィルタ」に「ds-lite」を入力してパッケージの検索を行う。
「ds-lite」をインストールする


エラーが無ければ、インストール完了


「ネットワーク・インターフェース」「インターフェースの新規作成」
インターフェース名を「TRANSIX」としインターフェースプロトコルを「Dual Stack Lite(RFC6333)」で作成する


一般設定 DS-Lite AFTRアドレスを「gw.transix.jp」


詳細設定 デフォルトのまま追加変更なし


ファイアウォールの設定 ゾーンの作成/割当で「TRANSIX」を設定


ファイアウォールのゾーン概要に「DSLite」ゾーン名で設定(編集でゾーン名を「1」から「DSLite」に設定)


「DSLite」ゾーンの詳細設定


設定を保存後、「システム・再起動」で再起動する。

IPv4のデフォルトルートとして「TRANSIX」インターフェース(トンネルインターフェース)が生成された。
インターフェース欄の左端のアイコン部にカーソルを合わせるとポップアップウィンドウが表示されトンネルインターフェースの内容が表示される。デバイス「dslite-TRANSIX」の接続中が「いいえ」となっているが実際は、Transix ds-lite AFTRに接続されている。
接続失敗していると思い、設定を繰返したが「はい」となることは無かった。
IEでIPv4サイトに接続すると表示される。


(5)IPv4/IPv6接続確認

IPv4/IPv6共にTransix経由でインターネットアクアセス


「ステータス・リアルタイムグラフ・トラッフィク」「ds-TRANSIX」でIPv4 over IPv6のトラッフィクが確認できる


--- 2018/09/11 追記 ---
IPv4サイトのブラウザ表示が遅かったり、表示されない(表示待ち)状態となるのを対策した
DS-LiteインターフェースのMTUに関する設定変更
--- 2018/09/15 追記 ---
OpenWrt化WZR-HP-G300NHでぷららIPv4 PPPoEとDS-Liteの同時接続設定#1
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする