無線 LAN の認証用に wpa_supplicant をインストールして設定する。WEA, WPA2, WEP などがサポートされている。実際に設定してみたところ,WEP での接続は高い確率で成功するが,WPA2 は微妙。上手くいったりいかなかったりする。
Linux で無線 LAN の続き。動作環境については前記事を参照 (nlog(n): Linux で無線 LAN の成功と挫折: デバイスドライバの導入)。WPA, WPA2, WEP などの認証には wpa_supplicant を使う (Linux WPA Supplicant (IEEE 802.1X, WPA, WPA2, RSN, IEEE 802.11i))。無線 LAN アクセスポイントは,WEP, WPA, WPA2 をサポートしているとする。
日本語マニュアルとしては,wpa_supplicant コマンド (On-line Manual of "wpa_supplicant"),wpa_supplicant.conf コンビグレーション (On-line Manual of "wpa_supplicant.conf") がある。
パッケージをインストールする。
コンフィグレーションは,次のファイルに格納される。
まず,WEP40 (40 ビットの鍵を使う 64 ビットの WEP) (Wired Equivalent Privacy - Wikipedia) での接続を試す。wpa_supplicant.conf の例は次の通り。概説としては Gentoo Linux ドキュメント -- 無線ネットワーク が分かりやすい。
WPA2 で接続する場合の wpa_supplicant.conf の例は次の通り。この設定では,WPA と WPA2 の有効な方を選択し,暗号化方式は AES, TKIP を試すようになっている。すべての組み合わせを試してくれる設定である。「CCMP」は「AES」を含んでいるので,コンフィグレーションの中には「AES」という文字列は出てこない。
鍵は「psk="01234567"」のように書いてもよい。設定ファイルが他人に読まれる可能性のある場合は,「psk=86a8673...」のように暗号化した鍵を書いてもよい (Quick HOWTO : Ch13 : Linux Wireless Networking - Linux Home Networking)。つまり,暗号化された鍵を書くなら,暗号化されてない鍵を残しておくのでは意味がないので,削除すること。暗号化された鍵を書く場合,ダブルクォートで囲んではいけない。
鍵を暗号化するには,wpa_passphrase コマンドを使う。
これをコピーアンドペーストして設定ファイルを書くことになるのだが,ここに暗号化する前の鍵が残っているので,設定ファイルにも残ってしまいがちなのである。
WPA2 で接続する場合,ダミーの WEP キーを別ファイル /etc/sysconfig/network-scripts/keys-ra0 に書いておく必要があるそうだ (WPA−PSKを使用したリナックス(FC5)の無線LAN接続について)。
WEP キーは本当に「"s:dummyKey"」という文字列でいいようだ。
無線 LAN アダプタ Buffalo WLI-UC-GN のデバイスドライバの設定ファイル /etc/Wireless/RT2870STA/RT2870STA.dat をどうするかが問題。詳しくは,デバイスドライバのソースに同梱されている README_STA_usb に記述されている。
ぶっちゃけてしまえば,デフォルトでも動くことが多い。すまり,RT2870STA.dat の中身は Default だけでもよい。
もう少しきちんと書くなら,
wpa_supplicant の起動スクリプトは /etc/init.d/wpa_supplicant である。OS 起動時に無線 LAN を自動起動させたい場合,このスクリプトを登録しておく必要がある。wpa_supplicant は,ifconfig ra0 up の前に起動しておいた方がよいので,起動の順番を調整してやる必要がある (WPA−PSKを使用したリナックス(FC5)の無線LAN接続について)。 wpa_supplicant の前に ifconfig ra0 up だという意見もあり (tohzo’s » やっと普通に無線LANが使える、か),微妙なところだが,ここでは wpa_supplicant を先に起動することにする。Vine Linux 4.2 では,ネットワークインターフェイスの活性化は /etc/init.d/network スクリプトで行われる。/etc/init.d/network の起動順は,スクリプトに書かれている通り
「10」なので,wpa_supplicant はこれよりも前に起動する必要がある。また,後で終了するように調整する必要があるので,次のようになるように書き換えておく。
OS 起動時に有効にするには,chkconfig コマンドでもよいが,Vine Linux の場合はコンソールのテキスト画面で
としてやれば,対話的に設定ができる。RedHat 系なら「setup」の代わりに「ntsysv」が使える。
OS 起動時に ra0 を活性化した場合,
ということで,静的 IP アドレスでの運用は可能。
OS 起動時に ra0 を活性化した場合,
接続に失敗しているとき,wpa_supplicant が /var/log/messages に連続して残すログは次のようなものである。
これが18秒おきに延々と繰り返される。もうイヤ。
OS 起動後に,「dhclient -r ra0」「depmod -a」「/etc/init.d/wpa_supplicant restart」「ifconfig ra0 up」などを適当な順で入力していると,極まれに接続が成功することがある。成功と失敗は「iwconfig」コマンドの結果で判断できる。
失敗している場合は次のようになる。注目点は Bit Rate と Encryption key の2点。
成功している場合は,以下のようになる。
成功していると,Bit Rate は 1 Mb/s 以外の値になり,Encryption key のところが「off」以外の長い文字列になる。
WPA2 での接続ができたりできなかったりする理由が不明。使用している wpa_supplicant のバージョンが古いせいという可能性もある。使用しているのは wpa_supplicant 0.4.8 で,現在の最新版 0.7.3 よりもかなり古い。もちろん,ドライバの問題ということも大いに考えられる。高い確率で接続できるのは WEP だが,セキュリティ的に問題があるため,不安が残る。どうするか悩みどころである (まだ決めていない)。
追記: nlog(n): Linux で無線 LAN の成功と挫折: 困ったときの調べ方 に補足。
Posted by n at 2011-05-23 00:29 | Edit | Comments (1) | Trackback(0)
Master Archive Index
Total Entry Count: 1957
UT-VPNでVPSに接続し、VPSをデフォルトGWとして
Posted by: 必須 at October 02, 2015 11:55ルーティングしてインターネットに接続する。
UT-VPNの通信は、暗号化されているので
無線LANではOPENで接続する。
スパムの踏み台にしている迷惑なアクセスが
気になる場合には、ARPを使って端末を自動的に
検知して、パケットが飛ばないようにする。