wpa_supplicant


wpa_supplicantとはIEEE802.1X/WPAを無線LANクライアントに提供するツールです。Linux以外にもWindowsやMacOS Xでも使用可能です。簡単にいうとLinuxでWPA-PSKを設定したい場合はこのツールを使用します。また802.1Xを使用する際に必要なクライアントのサプリカント機能もサポートしています。802.1Xについては 今回の実験では省略しました。
Madwifi-ngドライバの場合、Atherosチップのバージョンによって正常に動作しない可能性があります。
最近のディストリビューションでは既にインストールされているものもある(実験で使用したFedora7もインストール済み)
使用するドライバによって設定方法が異なります。ここではMadwifi-ngドライバを使用する場合の設定方法を記述しています。
設定する前にアクセスポイントのESSIDと任意のキーフレーズ(文字列)を準備しておきます。実験ではESSIDは00160E9DECA、キーフレーズはwellstoneを使用しています。



インストール方法

   cd /usr/local/src    tar -zxvf wpa_supplicant-0.5.9.tar.gz    cd wpa_supplicant-0.5.9    make    make install



設定方法
設定ファイルを編集します。設定ファイルは2種類あり、それぞれの役割は以下のようになっています。

/etc/sysconfig/wpa_supplicant         どのネットワークインターフェースを使用するかを設定
/etc/wpa_supplicant/wpa_supplicant.conf  WPA-PSKに関する設定

まず最初にインターフェイスの設定ファイルを編集します

   vi /etc/sysconfig/wpa_supplicant      3行目 INTERFACES="-iath0"      6行目 DRIVERS="-Dwext"


保存終了。
設定する項目は使用しているドライバやインタフェースによって適宜変更します。ここではMadwifi-ngドライバ使用の場合の記述です。
続いてwpa_passphraseコマンドを使用してパスフレーズキーをwpa_supplicant.confファイルに設定します。wpa_passphraseコマンドの書式は以下

    wpa_passphrase ESSID キーフレーズ

    例:wpa_passphrase 00160E0DECA wellstone


このコマンドを実行するとパスフレーズキーが生成されターミナル上に出力(表示)されます。この出力されたものをwpa_supplicant.confファイルにコピー&ペーストをするという方法もあります。ですが、それよりもリダイレクトを使用したほうが楽です。以下のように入力します。

    wpa_passphrase 00160E9DECA wellstone >> /etc/wpa_supplicant/wpa_supplicant.conf


※”>>”を”>”と一つにしないでください。設定ファイルが追記ではなく上書きされてしまいます。念のためcpコマンドでwpa_supplicant.confファイルのバックア ップをとっておいてください。

コマンドを入力するとwpa_supplicant.confファイルは以下のようになります。

    vi /etc/wpa_supplicant/wpa_supplicant.conf

    1 ctrl_interface=/var/run/wpa_supplicant
    2 ctrl_interface_group=wheel
    3
    4 network={
    5     ssid="any"
    6     key_mgmt=NONE
    7 }
    8
    9 network={
    10    ssid=001601E9DECA"
    11    #psk="wellstone"
    12    psk=7caecde9fef15560c621aacdf8d676666356decd0069883307a7231c6f87848a
    13 }

4〜7行目を削除します。そしてnetwork={内に以下の項目を追記

   proto=WPA    key_mgmt=WPA-PSK    pairwise=CCMP TKIP    group=CCMP TKIP


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

    1 ctrl_interface=/var/run/wpa_supplicant
    2 ctrl_interface_group=wheel
    3
    4
    5 network={
    6     ssid="001601E9DECA"
    7     proto=WPA
    8     key_mgmt=WPA-PSK
    9     pairwise=CCMP TKIP
    10    group=CCMP TKIP
    11    #psk="wellstone"
    12    psk=7caecde9fef15560c621aacdf8d676666356decd0069883307a7231c6f87848a
    13 }


設定は以上で終了です。最後にwpa_supplicantサービスを起動します。

   service wpa_supplicant start

これで接続が出来るようになりますが、このままではPCを再起動する度にwpa_supplcantサービスを手動で起動させなければならないので面倒です。そこで起動する際に自動的にwpa_supplicantサービスが起動するようにします。まず/etc/rc.d/init.d/wpa_supplicantファイルを編集します。

   vi /etc/rc.d/init.d/wpa_supplicant      5行目 # chkconfig 2345 09 88


と変更して終了。続いて以下のコマンドを入力

   chkconfig wpa_supplicant on

以上で再起動すると起動時に自動的にwpa_supplicantサービスが起動し,無線LANを使用することが出来るようになります。



TOPへ