\ 年に1度のブラックフライデーセール! /

Wi-Fiパスワードを暗号化して設定する方法

Wi-Fiのパスワードの暗号化方法をご紹介します。Raspberry Pi (ラズパイ)では、デスクトップ環境があるGUIでは、マウスで操作してWi-Fiの設定ができます。同時にコマンドでもできます。

デスクトップ環境がない状態やOSがそもそもRaspbian Lite では、CUIでWi-Fiの設定をします。

この辺がLinux系というか非Windows系ではあまり機会が無いので理解しにくいところですね。玄人が慣れるとコマンドでおこなう方が便利で早いというのは、余計な操作もなく比較的すぐに結果が出ることが挙げられます。

この記事では一般的にパスワードと言われているものはパスフレーズと記載しています。パスワードとは違いWi-Fiの暗号化されたパスワードは長いため区別しています。

  • パスワード  = 日本語だと一語で表す (6〜8文字など)
  • パスフレーズ = 日本語だと一句で表す(8〜64文字など)

要は長いパスワードは句の意味であるフレーズをつけてパスフレーズと言います。まぁ、どちらでも同じ意味合いです。

ネットではWi-Fiのパスワードはパスフレーズというのが多いですね。

ちなみに、パスコードは4桁程度の数字の場合によく言いますね。

この記事の主な流れ

平文と暗号化のパスフレーズ

Wi-Fiのパスワードは通常、平文(そのまま)で設定できます。

例えばパスワードが「oshienai」だとすると、そのまま記載してOKです。

  • ssid="my-wifi"
  • psk="oshienai"

SSIDとはどのWi-Fiにアクセスするか区別された名前だと思ってください。

このように色々ありますね。

※ここでは自宅のWi-Fiが外に公開されていないという前提で、パスワードは平文のままでご紹介しています。

パスワードの暗号化

RaspbianなどのLinux環境のターミナルで行います。MacのOSXにはこのコマンドはありません。(※Debian系?)

書式は以下です。

wpa_passphrase ESSID パスフレーズ

「wpa_passphrase(スペース)ESSID(スペース)パスフレーズ」という形です。

先程の例(ssid="my-wifi"、psk="oshienai")に合わせると以下です。

wpa_passphrase "my-wifi" "oshienai"

ここでダブルクォーテーション("")で囲んでいるのは、ESSIDとパスフレーズの空白スペースがある場合は囲みます。この例では空白スペースはありませんが念のため囲っています。仮に上手く動作しない場合はダブルクォーテーション("")で囲んであげてください。

同じターミナル画面上に結果(しかもそのままコピー出来る形で)が表示されます。

network={
ssid="mywifi"
#psk="oshienai"
psk=e8bc33ad37d697d542e13a0f463f4bc561d457144786d2b738bc9279dedba7b8
}

これを/etc内にある「/etc/wpa_supplicant/wpa_supplicant.conf」をnanoなどで開いてコピペすればOKです。
その後に接続が確認できたら、コメントアウトされている「#psk="oshienai"」は削除してください。合っても動作しますが、平文が記載されていたら暗号化した意味が無い・・・?

コマンドを1回で終わらせる

この暗号化とコピーを一回のコマンドで終わらせることが可能です!

2つやり方がありますけど、同じ意味合いで使います。今回の例では、ユーザーpiで書き込み先がwpa_supplicant.confですから、2番目のteeコマンドを使った方法になります。

1.相手先の権限がある場合(またはrootでログインしている場合)

# wpa_passphrase "mywifiap" "shinobu1234" >> /etc/wpa_supplicant/wpa_supplicant.conf

ターミナルのプロンプト左側が「#」ならrootという意味です。

これは「>>」で出力したものを追記してくれます。便利なんですけど、相手先のroot権限がある場合だけです。(※要はsudo使わない)リダイレクションと言います。リダイレクトするとか言います。 リダイレクトの違い
リダイレクション >  上書き
リダイレクション >> 追記

piフォルダ内など、システムに書き込まないならこちらでOKです。

sudo suでrootに変更してからならば、リダイレクションは使えます。しかし、Raspberry Pi OSではrootの設定はできていません。セキュリティの面からrootの設定をするのは辞めた方が無難です。

Raspberry Pi OSなら、リダイレクションは使わずに次の方法で対応します。

2.相手先の権限がない場合(またはrootでログインしていない場合)

sudo wpa_passphrase "mywifi" "oshienai" | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf

ターミナルのプロンプト左側が「$」なら一般ユーザーという意味です。

これは「| sudo tee -a」で管理者権限が必要な「wpa_supplicant.conf」ファイルに追記(引数-a)しています。

Teeコマンド

  • 引数 -a 追記される
  • 引数 なし 上書きされる

piユーザーのままならこちらの方法でOKです。

確認をする方法

ネットに繋がっていれば問題ありませんし、それは理解できると思います。

しかし、上手く繋がっているのか不安であったり、なんとなくおかしいと思う場合は、以下のコマンドでこの設定を終わらせてみてください。

1.すぐに適用する(再構築する)

wpa_cli -i wlan0 reconfigure

これでwlan0のWi-Fiを再構築します。

Wi-Fiをデフォルトのwlan0と仮定しています。※USBドングルのWi-Fi機器の場合などは違うかも知れません。

2.確認する

ifconfig wlan0

このコマンドでネットワークの状況がターミナルに出てきます。
inet addrの後に続く場所にIPアドレスがきちんと表示されていればOKですね。

2番の確認だけでも行うと分かりやすいと思います。もしも上手くいっていない場合は、ESSIDの名前が間違っていたり、そもそもパスフレーズが間違っていることが考えられます。再度、確認してください。

意外と奥が深いWi-Fiの設定

やはり少し難しいですね。個人的にパスフレーズは平文で記載しても問題ないと思っています。
ただ、サーバーなど24時間365日運用する場合や、外にサーバーを公開しているとか、危険にさらされると感じるなら暗号化をオススメします。

Teeコマンドは特殊ですよね。なるべく分かりやすくお伝えしたいと思います。

Wi-Fiでお困りの人は、Wi-Fiについて知っておこう。

シェアする
  • URLをコピーしました!

Raspberry Pi 4、400、Zero2W

販売価格は、必ず販売サイトで確認してください。

\年に1度のブラックフライデーセール!/
Amazonで詳しくみる
\年に1度のブラックフライデーセール!/
Amazonで詳しくみる
RaspberryPi
¥15,987 (2022/11/29 14:24時点 | Amazon調べ)
\年に1度のブラックフライデーセール!/
Amazonで詳しくみる

この記事のコメント(承認後に公開)

コメント一覧 (2件)

  • コマンドラインのやつがたぶん権限で実行できなかったです BY初心者

    • コメントありがとうございます。ご指摘の箇所は「2.相手先の権限がない場合(またはrootでログインしていない場合)」だったでしょうか。sudoを付け足しました。
      それ以外の場合は、ちょっと検証してみます。
      ご指摘をありがとうございました!

初心者 へ返信する コメントをキャンセル

コメントは日本語で入力してください。名前は表示されます。メールアドレスは表示されません。

CAPTCHA

この記事の主な流れ