2009年9月3日木曜日

Zaurusルータでファイアウォール

昨日に続いてZaurusネタです。
おそらくこれがZaurusに触れる最後の記事になるでしょう。
私自信はあと1年半使い続けますが、
新たな機能を使うようなことはもうないと思われます。

さて、私はもう4年以上前からPHSをWANとするモバイルルータとして
Zaurus SL-C1000を利用しております。
2年半ぐらい前からは、さらにUSBイーサネットアダプタと
モバイル無線LANアクセスポイントを組み合わせて、
最近流行のモバイル無線LANルータを実現しておりました。

今回ちょっと事情があって、
無線LANをWANとする無線LANルータにする必要があり
実現させて見ましたのでそれを報告します。

ZaurusのCFカードスロットに無線LANカードを挿して、
これで普通どおりにネットに接続します。
それからUSBの有線LANアダプタをZaurusに接続するのですが、
電力的にかなりきついようで、
Zaurusに外部電力を供給しても動作が不安定になります。
ふたを閉じてLCDのバックライトを切ると落ち着くんですよね…
ですので、設定してとりあえず動作させられれば後は問題ありません。
あるいは外部給電可能なUSBハブを使って、
こちらからUSBの有線LANアダプタの電源を取ることで
Zaurus本体は安定するでしょう。

ちなみに、電源に関連してかどうかはわかりませんが、
USBの有線LANアダプタを有効にすると
無線LANカードでのネットワーク接続が切れてしまいます。
一番最初にUSBの有線LANアダプタを接続するのがよさそうです。

これで2つのインターフェイスが有効にでき、
一方はWAN回線として利用できる環境について説明できました。
そのWAN回線を他方のインターフェイスに接続した
ネットワーク機器から共有できるよう
ネットワーク設定とdhcpサーバの立ち上げとiptableの設定を行います。
の各記事等に書いておりますのでそちらを参照ください。

最後になりますが、
ファイアウォールについて説明します。
といっても、設定ファイル"/etc/sysconfig/iptables"を書き換えるだけです。
あるいはこれを別名でコピーして編集し、
それを"/home/QtPalmtop/bin/iptables.sh"で読み込むように変更することです。
とりあえず元は

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
COMMIT

のような内容になっているので、
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o wlan0 -j MASQUERADE
-A PREROUTING -d 192.168.1.1/255.255.255.255 -j ACCEPT
-A PREROUTING -d 192.168.1.0/255.255.255.0 -j DROP
-A PREROUTING -j ACCEPT
COMMIT

のようにできます。
最初のポイントは"-A POSTROUTING"の行で、
"-o"オプションで他の機器から共有されるネット接続の
インターフェイス名を指定します。
ようするにWAN回線の名前です。
そして"-A PREROUTING"の行で転送ルールを作成します。
これだと、IPアドレス 192.168.1.* の機器への通信は遮断しますが、
192.168.1.1 については例外的に中継し、
そのほかのすべてのアドレスには接続を許可します。
いろいろなオプションが使えるので細かくルールを作成できます。

この情報が参考になるという方はほとんどいらっしゃらないでしょうから、
まあ、自分用のメモということで。

0 件のコメント:

コメントを投稿