無線LANにWPAで接続するには? wpa_supplicantコマンド:ネットワーク管理の基本Tips
Linuxでは無線LANに接続する際のWPA認証に「wpa_supplicant」パッケージを利用するのが一般的です。アクセスポイントへの接続には、このパッケージに含まれる「wpa_supplicant」コマンドを利用します。
本連載では、ネットワーク管理の基本コマンドを順を追って紹介していきます。基本書式と用法、主要なオプション、用例サンプルを示しますので、manやhelp代わりに通読し、各コマンドでできることを順次おさらいしてみてください。今回は、無線LANアクセスポイントにWPA(Wi-Fi Protected Access)で接続要求を行う「wpa_supplicant」コマンドを紹介します。
なお、本連載では、執筆時点の最新版「Red Hat Enterprise Linux(RHEL)」および「CentOS」環境で動作を確認しています。また、用法事例はIPv4(Internet Protocol version 4)ネットワークを前提にしています。コマンドのサンプルなどで一部環境に依存した出力例となる場合がありますので、その際には適宜ご自身の環境に合わせて読み替えてください。
wpa_supplicantコマンドとは?
wpa_supplicantは、無線LANアクセスポイントに対し、WPAで接続要求を行うためのコマンド(サプリカントソフトウェア)です。シェルでコマンドラインとして実行することも可能ですが、バックグラウンドで稼働させておき、接続要求が生じた際に自動実行させるという使い方が一般的です。
wpa_supplicantコマンドを含む「wpa_supplicant」パッケージには、設定ファイル(/etc/wpa_supplicant/wpa_supplicant.conf)や起動/停止用のスクリプトが収録されており、wpa_supplicantコマンドはそれらを介して利用されます。
wpa_supplicantコマンドの基本的な使い方としては、ネットワーク設定ファイル「/etc/network/interfaces」に「wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf」と各設定を読み込むよう記述しておき、無線LANアクセスポイントに関する接続/認証用の情報はその「wpa_supplicant.conf」(リスト1)に対して記述しておく、という方法があります。
ctrl_interface=/var/run/wpa_supplicant # UNIXドメインソケットを作成する領域 ctrl_interface_group=wheel # 上記UNIXドメインソケットの所有グループ network = { ssid="○○○○" # ESSID psk="△△△△" # 暗号化キー key_mgmt=WPA-PSK # 暗号化キーの管理方式 priority=2 # 複数のnetworkブロックが定義されている場合の優先順位(大きいほど優先度が高い) proto=RSN # 暗号化プロトコル pairwise=CCMP # ユニキャスト用暗号化方式 group=CCMP # ブロードキャスト/マルチキャスト用の暗号化方式 }
「/etc/network/interfaces」に直接記述することも可能ですが、「wpa_supplicant.conf」と分けておいた方が、内容変更などの際に混乱しないでしょう。
なお、wpa_supplicantパッケージには、パスフレーズ生成用のコマンド「wpa_passphrase」も収録されています(wpa_passphraseコマンドは次回に詳細を解説します)。「wpa_supplicant.conf」に暗号化キーを記録する場合は、このwpa_passphraseコマンドで暗号化したパスフレーズを記述します。
wpa_supplicantコマンドの主なオプション
lofsコマンドの主なオプションは次の通りです(表1)。
オプション | 意味 |
---|---|
-B | デーモンをバックグラウンドで実行する |
-D | ドライバを指定する(例:-Dwext) |
-P | PIDファイルを指定する |
-c | 設定ファイルを指定する |
-f | ログを指定したファイルに出力する(初期値は標準出力) |
-i | 使用するインタフェースを指定する(例:-iwlan0) |
-p | ドライバのパラメータを指定する |
-s | ログをsyslogに出力する(初期値は標準出力) |
-t | デバッグモード時にタイムスタンプを出力する |
-u | DBusコントロールインタフェースを有効にする |
表1 wpa_supplicantコマンドの主なオプション |
手動で無線LANアクセスポイントに接続するには?
一時的に手動で無線LANアクセスポイントに接続する場合には、「-D」オプション(ドライバ)と「-i」オプション(インタフェース名)、「-c」オプション(設定ファイル「/etc/wpa_supplicant/wpa_supplicant.conf」)をそれぞれ指定して、管理者権限でwpa_supplicantコマンドを実行します。
オプションとその引数は「-iwlan0」(「-i」オプションで「wlan0」インタフェースを指定)のように、間を空けずに続けて記述します。
$ sudo wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf
デバッグ情報を出力するには?
何らかの問題で無線LANアクセスポイントに接続できない、複数登録したアクセスポイントの接続優先順位が期待通りにならない、といったときに原因を調べる場合には「-d」オプションを利用します。
「d」の数を増やすと情報量が増えるため、より詳細な情報を表示したい場合は「-dd」と指定します。なお、この場合も、ドライバとインタフェース名、設定ファイルの指定が必要になります。
$ sudo wpa_supplicant -dd -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf wpa_supplicant v1.0 random: Trying to read entropy from /dev/random Initializing interface 'wlan0' conf '/etc/wpa_supplicant/wpa_supplicant.conf' driver 'wext' ctrl_interface 'N/A' bridge 'N/A' Configuration file '/etc/wpa_supplicant/wpa_supplicant.conf' -> '/etc/wpa_supplicant/wpa_supplicant.conf' ・ ・
- 無線LANのパスフレーズを暗号化するには? wpa_passphraseコマンド
- 無線LANにWPAで接続するには? wpa_supplicantコマンド
- このポートで実行中のプロセスはどれ? lsofコマンドの使い方
- ルーティングテーブルの設定をテストするには? routeコマンド
- DHCPサーバーと連携してIPアドレスを設定するには? dhclientコマンド
- NICの無効化/有効化、再起動を行うには? ifdown/ifupコマンド
- SSHサーバーの公開鍵管理を効率化するには? ssh-keyscanコマンド
- サーバーの時刻合わせコマンド、ntpdateはどのサーバーを参照すべき?
- 連番ファイルをダウンロードして他のコマンドに渡すには? curlコマンドの使い方
- 無線LAN接続の設定を操作するには? iwconfigコマンドの使い方
- 端末からアクセスポイントの情報を調べるには? iwlistコマンド
- HTTP/HTTPSでまとめてデータを取得するwgetコマンドとは?
- サーバーリソースのリアルタイム監視ができる便利ツール、dstatコマンドとは?
- SSHを介してファイル転送を行うには? sftpコマンド
- バッチなどでファイルのやり取りを安全に実行するには? scpコマンド
- SSHサーバーにログインするには? sshコマンド
- SSHでリモートホストに接続する前にやっておくと便利なことは? ssh-keygenコマンド
- あのホストまでの経路や通信ボトルネックを調べるには? tracerouteコマンド
- IPアドレスを指定してMACアドレスを調べるには? arpingコマンド
- NetworkManagerをコマンドラインから操作するには? nmcliコマンド
- 「192.168.0.100/24」のネットワークアドレスを即答するには? ipcalcコマンド
- サーバーとの通信状況を確認するには? ネットワークの速度を測るには? pingコマンド
- ネットワークデバイスを設定/状態確認するには? ifconfigコマンド
- MACアドレスを調査するには? arpコマンド
- IPアドレスやホスト名を調べるには? hostコマンド
- netstatコマンドとは?
- DNSサーバーが正常に動作しているかどうか確認するには? digコマンド
Copyright © ITmedia, Inc. All Rights Reserved.