無線LAN/WAN接続を共有/中継する [Kali Linux]

hostAPdairbase-ngを使って、Linux機を無線LANのAP(親機)化する事例は、マジメなモノや特殊な意図を秘めたモノ(HoneyPot)など、結構多いのですが、逆に無線LAN接続をeth0経由で共有する事例は余り見かけないので、今回はこれをやってみます。

[どこかのAP] --無線-- AO533 <-有線-> pc1,pc2,pc3....

無線アクセスポイントに繋いだ無線接続をローカル側でshareするわけです。(もちろんローカル側をeth0ではなく、masterモードが使える増設wlan1にして配下向けの無線LAN親機にしてもよい。ま、中継ですね) 設定が面倒ならeth0に余っている無線LAN親機を接続してしまうのもアリだと思います。
AO533はダイバシティ(?)な二本アンテナ内蔵らしいので、非常に高感度なのが嬉しい所です。

今回は分かり易くローカル側をイーサネットポート(eth0)に設定します。
ここから配下にDHCPサービス,DNSサービス,インターネットへのルーティングを行なう仕組み。

必要になって来るのはDNSサーバとDHCPサーバになりますが、これを兼ね備えたコンパクトなdnsmasqというパッケージが有りますのでこれを使います。コンパクト&簡単と言いつつもクライアント1000台まで対応する能力があるので、覚えておくと何かと便利ですね。実際に商用サービスでも使われている例があります。ルーティングについてはおなじみのipマスカレード

とにかくdnsmasqをinstall

#apt-get install dnsmasq-base
#apt-get install dnsmasq-utils
#apt-get install dnsmasq

事前にgnomeメニューから上流に使う有効な無線LAN接続を設定(作成)しておきます。KaliらしくMACアドレス偽装も組み込まれていて、面白い。これ、利用目的によっては重要ですねw
当然ですが、IPv6は全て無効にしておきましょう。色々と筒抜けになっちゃう事がある。
このGUIから設定した接続は /etc/NetworkManager/system-connections にファイルが作成されます。修正改変したい場合はココをイジッても可。

で、アレコレ設定変えるのも面倒なので例によってシェルスクリプト一発作戦。
pastebinに貼り付けておきます。viあたりからペーストしてください。実行すると簡単にAO533が超多機能WiFi中継機に変身であります。(haltかrebootで元に戻ります)
※上記のiptablesではファイアウォールを全く考慮していません。気になる人はiptablesを使ったファイアウォール構築例を探してくださいね。


なお、シェルスクリプトですが、分かり易い名称にして保存し、実行権限を付与して使用準備OKなんですが、/usr/binあたりへ短い名前のSymlin張ってコマンド扱いにしておくと便利です。

つづく
現場で使えるパケット解析テクニック (NETWORK MAGAZINE BOOKS) (NETWORK MAGAZINE BOOKS)