その他

UnixやらNetworkやら、日々の雑感を含め書き連ねる

freeradiusを使ったWPA3-Enterprise 192 bit modeの構築

  • 投稿日:
  • by
  • Category:

はじめに

いまやどのご家庭にもあるWi-Fiアクセスポイントだが,さすがにWPA3-Enterprise 192bit modeに対応しているケースは少ないであろう.完全に自己満足の世界であるが,ふと思い立って構築に挑戦してみた.おそらく,アクセスポイントベンダーが提供している設定プログラムを使えば困難なく導入されると思うが,オープンソースだけで構築できるのであれば挑戦してみたかった.このため,「動けばよい」の精神の記事である.業務で使う場合は,クライアント証明書の配布・再配布,無効化などの仕組みまで考える(ここがEAP-TLSの難点だろう)必要があるだろうが,そういったことはスコープ範囲外としている.とはいえ,問題はfreeradiusではなく・・・.

IEEE802.1X

IEEE802.1Xは様々な認証方式に対応している.が,Wi-FIで用いられるものはさほど多くはなく,代表的なものは以下の2種類であろう.

  1. EAP-TLS
  2. EAP-PEAP

WPA3-Enterprise 192bit modeはEAP-TLSのみ対応となっている.そのため,freeradiusとしてはEAP-TLSに対応した設定をすればよい(ここは割愛する,他サイト等を参照のこと).

対応EAP暗号化スイート

やっかいなのはこれ.以下のいずれかのみ受け付けられる.すなわち,要件を満たした証明書が求められる.

  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384

ここまでは,某google先生に聞けば出てくる.が,上記を満たした証明書をopensslで作る方法が出てこない.ここを以下,説明していく.なお,書いている本人も良く理解しておらず「こうやったら通った」だけのため,(参考にする向きも無いと思うが)参考にする場合はあくまで自己責任で.ちなみに本講の手法を使うと,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384として通用するはず.

証明書作成

設定ファイル

設定ファイルの設定方法はここを参考にした.おそらく,サーバ証明書,クライアント証明書ともに,以下の記述がポイントと思われる.

[CA_default]
default_md = sha384
  • CA 証明書

おそらく,CA証明書は特に上記要件に関わらない模様(だが,特に検証していない).

openssl ecparam -genkey -noout -name prime256v1 -out "./private/ca_key.pem"
openssl req -x509 -new -nodes -key private/ca_key.pem -sha384 -days 3650 -out RootCA_cert.pem -config openssl.cnf

証明書をwindowsへインストールするためのファイル形式に変換.

openssl x509 -in RootCA_cert.pem -outform DER -out RootCA_cert.der
  • サーバ証明書
openssl ecparam -name secp384r1 -genkey -out server-key.pem
openssl req -new -out server-csr.csr -key server-key.pem -subj="/C=JP/ST=Hoge/L=Tete/O=HogeTete/CN=server.hogetete.net/OU=Hote/emailAddress=administrator@server.hogetete.net" -config freeradius-server-wpa3.cnf
openssl ca -in server-csr.csr -keyfile private/ca_key.pem -cert RootCA_cert.pem -out server-cert.pem \ -config ./freeradius-server-wpa3.cnf -extensions xpserver_ext -extfile xpextensions
  • クライアント証明書
openssl ecparam -name secp384r1 -genkey -out client-key.pem
openssl req -new -out client-csr.csr -key client-key.pem \-subj="/C=JP/ST=Hoge/L=Tete/O=HogeTete/CN=client@hogetete.net/OU=Hote/emailAddress=client@hogetete.net" \-config freeradius-client-wpa3.cnf
openssl ca -in client-csr.csr -keyfile private/ca_key.pem -cert RootCA_cert.pem -out client-cert.pem \-config ./freeradius-client-wpa3.cnf -extensions xpclient_ext -extfile xpextensions
  • クライアント証明書をandroidやwindowsに導入するためにファイル形式を変更
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem -out client.p12 -certfile RootCA_cert.pem \-name "client@hogetete.net WPA3-Enterprise Certificate" -legacy -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES

あとは,クライアント証明書を各端末に適切にインストールし,相応の設定をすればWPA3-Enterprise 192bit modeで接続されるはず.

参考サイト

USB OTGでUSB-DAC音声出力しながら充電

  • 投稿日:
  • by
  • Category:

ここの続編.

じつは,正解はこちら.Sense/ID端子を100kの抵抗でGNDに落としてあげると良かった.そうと分かれば事は簡単.

ELECOMのUSB HUBに上記工作+USB電源ケーブルをつけてあげて,今は快適に使っている.

ちなみに,100kの抵抗は金属皮膜の±1%品を使っている.

いまさらSO-02EでMVNO Wi-Fiテザリング

  • 投稿日:
  • by
  • Category:

いろいろ理由があって,SO-02E (Xperia Z)を入手した.まもなくSO-02F(Xperia Z1)がでるというに,いまさら.

最大の理由は,通信費削減のため,現在持っているau回線を通話専用とし,データ通信はMVNO SIMをつかう方向にするため.ちょうどauの新型ガラケーも発表されたところであるし,2年縛りも切れることだし.

そうすると,別に小型にする必然性は薄くなる.が,タブレットはでかい.そこで,スマートフォンのうちややでかいもの,が条件となった.

それから,モバイルSuicaも画面がでかい方が良いので,Felica対応のもの.この時点で海外モデルが除外され,国内モデルが必須に.

で,これまで使っていたXperia(IS11S)に特に不満を感じなかったので,Sony Mobileで条件に合うもの,とするとSO-02Eとなった.本当は,SO-02Fを待つつもりだったのだが,価格がこなれるまで時間がかかりそうなので,さくっと購入.

本当は,「お行儀良く」(白ロム使ってる時点で,という突っ込みはスルーで)使いたかったのだが,デフォルトではMVNO回線でWi-Fiテザリングが出来ないため,rootを取る羽目に.

初期導入のシステムバージョンは10.1.D.0.333だった.10.1.D.0.343にバージョンアップする時にftfを作ってバックアップをし,この辺を参考にrootを取った.そして,TitaniumBackupをインストールしてようやく準備修了.

...と思ったら,早速android 4.2へのアップデートが来た.ここの手順を参考に,アップデート.rootは維持されたままアップデート成功.

ここを参考に,書き換える.が,アップデートに伴い,テーブルがsecureからglobalに移っているようなので,転記.

adb shell
su
/data/data/com.keramidas.TitaniumBackup/files/sqlite3 /data/data/com.android.providers.settings/databases/settings.db
select * from global where name = 'tether_dun_required';
update global set value = 0 where name = 'tether_dun_required';
select * from global where name = 'tether_dun_required';

しかし,理由は分からなくはないが,妙な制限を加えるのはやめていただきたいものだ.今回は,Felicaを使いたいがために国内モデル必須だったが,そうでないのであればSIMフリー海外モデルの方が余計な事を考えずに出来る分(それと,いじっている人が多い),おすすめ.

余談だが,ソフトバンクはなぜキャリアやっているのだろうか.あそこのビジネスモデルからして,MVNOが最も合っている気がするのだが.

android と 音楽再生

  • 投稿日:
  • by
  • Category:

androidベースのスマートフォン,2年近く使っているがなかなか便利.特に,音楽データを持ち出す際の自由度が高い事が大きな魅力であり,車でもbluetoothのA2DPを使って再生させている.

なのだが,A2DPはbluetoothの帯域制限からSBCなどの圧縮を経る必要があり,音質上気になってはいた.いたのだが,どうせAAC圧縮音声なのであまり気にしても負けかなと,妥協して使ってきた.

ところが,android 4.1から USB DACがつながると言うじゃありませんか,奥さん.手持ちの4.1搭載のandroid端末につなげてみたところ,これまたあっさり音声が出力される.あとは,なんとかして端末にパワーを供給する手段を確保すれば,今よりも格段に音質の向上が望める.

という訳で,USBの(規格外)ケーブルを自作してチャレンジする予定.

気が向いたら,また書くかも?