Raspberry Pi のWi-Fi設定を事前に用意しておこう!

デスクトップ環境があっても無くても、Wi-Fiの設定はセットアップ時に用意可能です。Raspberry Pi Imagerが登場してから、オプションでWi-Fiのみならず、事前のセットアップを追加できるようになりました。

ただ、個人的にRaspberry Pi Imagerのバグも多く、上手く設定されていないことも多かったので、Wi-Fiは予め用意してあるconfファイルをコピーすることで対処しています。

microSDカードへ何度もOSを入れ替えて試すなら、Wi-Fiの設定は都度しなくてはなりません。ご紹介する方法なら、新しいOSを書き込んだ後、用意したWi-Fiのconfファイルをコピーすればすぐに作業に取りかかれます。

この設定のconfファイルは同じWi-Fi内なら何も変更せずに使えて自宅用には便利な手法です。

目次

wpa_supplicant.confファイルの記述

ネットワークの設定には/etc/interfacesやdhcpcd.confの設定などが関係ありますが、同じ環境であれば問題ありません。

参考までに、当環境はWPA2のAES暗号化方式です。

最終的に以下のようになります。

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid=”myhome_ssid” #<- 接続する予定のWi-FiのSSID””(ダブルコーテーション)で括る
#psk=”myhome_passwd” #<- 平文のパスワードは最後に消す
psk=hogehogehogehogehogehogehogehogehogehogehoge #<- 暗号化されたパスワード
proto=WPA
pairwise=CCMP
key_mgmt=WPA-PSK
group=CCMP
auth_alg=OPEN
}

これをwpa_supplicant.confというファイル名で、Raspbianを焼き付けたSDカードのルート(/boot)直下にコピーします。

wpa_supplicant.conf

試したところ、平文のパスワードで、以下のような最低限の項目だけでも認識しています。

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
	ssid="ssid名"
	psk="平文のパスワード"
}

この中で暗号化の手順も見ていきましょう。

暗号化されたパスワードの作り方

wpa_supplicant.confのパスワード部分(PSK=)を暗号化するなら、Linux環境があれば作れます。コードの書式は次の項目でご紹介しています。

もしもLinux環境が無ければ、以下のウェブサイトを利用しても可能です。

下記URLで変換できます!
WPA key calculation From passphrase to hexadecimal key

wpa_passphraseの書式

これは別のRaspberry Pi を利用してSSHにて作業します。これからセットアップするのではありませんよ。

Raspberry Pi が1台しかない場合は、前述のWEBサイトから行うか、その1台にモニターとマウスを繋いで作業します。(それだとヘッドレスインストールにはなりませんが・・・)

wpa_passphrase SSID 平文のパスフレーズ

:SSIDがmy_wifiと仮定して、平文のパスフレーズは12345678と仮定した場合

以下のコマンドを実行します。

wpa_passphrase my_wifi 12345678

以下のようにpsk="平文で書いたパスフレーズ"が、16進数の暗号化された64桁になります。

f7c76744b9511efa13da93dfe540eaea6ec6da8140f14beeffec95e6028be554

これを先程の.confファイルに置き換えるだけです。

network={
ssid="my_wifi"
#psk="12345678"
psk=f7c76744b9511efa13da93dfe540eaea6ec6da8140f14beeffec95e6028be554
}

このままコピーすれば良いのですが、注意すべきは、psk=のあと、暗号化された方はダブルコーテーションで囲いません。エラーが出たなら、ダブルコーテーションを確認してみてください。

sshも有効にするなら

wpa_supplicant.confファイルと同時に、sshも有効にさせてインストールするならば、SDカードの同じルート(/boot)にsshの空(カラ)のファイルを用意しておきましょう。

sshファイルのアイコン
ファイル名が拡張子なしのssh(中身何もなし)

空のSSHファイルを作るには、テキストエディタで適当なファイルを新規作成します。中身は何も書きません。作った新規のテキストファイル名を、拡張子なしでsshとするだけです。

新規テキスト作成 → 拡張子なしのsshという名で保存

Windowsをお使いで、拡張子をそもそも表示させない設定の人は、見えないだけで拡張が付いています。エクスプローラーのファイル表示設定を確認してください。

事前に用意できる

boot以下のファイル群
/boot/直下へコピーした2つのファイル

Wi-Fiの環境が変わらなければ、今回作成したwpa_supplicant.confファイルは何度も使えます。

何度も同じようなセットアップするのは面倒です。新たにOSを準備したら、このファイルもコピーしておけば設定する必要はありません。

特にRaspberry Pi Zeroなどで、デスクトップ環境がないRaspberry Pi OS Liteを使う場合は便利です。Wi-Fi環境のコマンド操作は省略できます。

実はこれRetropieにも使えます。なぜなら同じRaspbianを元にしているからです。

こうやって準備しておくと、最初の起動時には既にSSHが有効で、自宅のWi-Fiにも繋がります。すぐに他のマシンからSSHで接続できます。

そうなると、モニターもマウスもキーボードも要らないのです。ヘッドレスインストールと呼びます。

ぜひ、試してみてください。

目次