コワーキングスペースの悩み:定期的な Wi-Fi パスワード更新を自動化する

自宅でのリモートワークが中心ですが、契約しているコワーキングスペースを利用しながら都内で移動して仕事をすることもあります。

カフェや公共施設の Wi-Fi は、キャプティブポータルや固定の SSID・パスワードが一般的ですが、契約しているコワーキングスペースでは月に 1 回 SSID のパスワードが更新されます。

そのたびに macOS の Wi-Fi 設定を削除してパスワードを再登録するのが面倒でした。定期的にパスワードが変わる環境はレアケースかもしれませんが、この作業を簡単にするためにスクリプトを作ってみました。

セッション中だけ更新するスクリプト

今回のスクリプトは macOS Sequoia で動作確認しています。要件は次のとおりです。

  • OS: macOS Sequoia
  • 方法: ターミナルの bash スクリプトで更新できるようにする
  • インターフェース: Ethernet アダプタの接続順が変わる場合もあるため、Wi-Fi インターフェース名は自動検出する

MacBook Air 上で動かしている Ollama と VS Code を使い、プロンプトを書いてスクリプトを生成しました。

SSID はほぼ変わらないのでスクリプトに直接埋め込んでいます(上記の SSID はサンプルです)。

このファイルを update-wifi.sh として保存し、実行権限を付与しておきます。毎月のパスワード更新通知が届いたら、次のようにコマンドを実行するだけです。

これでその接続セッション中は新しいパスワードで Wi-Fi に接続できます。

キーチェーンも更新して再接続をスムーズに

上記のスクリプトはセッション中のみ有効です。最近コワーキングスペースを使う頻度が増えてきたため、macOS のキーチェーンに保存されているパスワードも合わせて更新できるようにしました。

キーチェーンの更新には security コマンドを使います。

オプションの説明は次のとおりです。

オプション内容
-a / -sSSID 名(完全一致が必要)
-w新しいパスワード
-U既存エントリを上書き更新

注意: 実行時に管理者パスワードの入力を求められます。

このコマンドを実行しておくと、次回コワーキングスペースに接続する際にパスワードを再入力せずに自動接続できます。翌月のパスワード更新時にも、同じコマンドを新しいパスワードで実行するだけで OK です。

スクリプトは、次のような簡単なものです。
こちらは upgrade-wifi.sh として、同じように保存して使っています。

これで、月1回 SSID のパスワードを更新すれば、すぐにコワーキングスペースの無線LANに接続できるようになりました。

Translate »