ぱちもん switch (?)

ぱちもん switch (?)とすらいえるか?こんなの :-)

やりたいこと:

できるだけ NetBSD デフォルト設定を変更せずに、 特定のサービスだけをねじまげる。 IP forwarding をせず、 アプリケーション層だけで行う。

まず最初に、 IP forwarding をしない NetBSD BOX を用意する。 ネットワーク図はこういう感じになります。

     Internet
       |
       | ef0
     NetBSD mf0 ---- virus checker の箱が別にあるとする
       | if0
       |
    -------- LAN

 ef0 外 側インターフェイス
 mf0 DMZ側インターフェイス
 if0 内 側インターフェイス

お金があったら L4 switch とかで曲げるんだろうけど、 お金がないから、さぁどうしましょう? :-)

汎用 TCP proxy

特定のサービスに関しては、 if0 でどんな宛先でも吸いあげて、 proxy を勝手に行なってほしい。 以下これを gauntlet firewall にちなんで transparency モードと呼ぶことにしよう。

IP Filter を使う場合、別に難しくはない。ioctl(2) すればよい。

WWW (80/tcp)

if0 に来る (dst 80/tcp) は virus checker へねじ曲げる。

ブラウザで if0 の 80/tcp を proxy 指定するなら別に何も必要としないんだけどね。 同じホストの上の squid にねじ曲げるなら何も必要ないし、 別のホストの virus checker へねじまげる場合でも、 単純な tcp_proxy を daemon として走らせることで解決できる。 inetd でうけて、virus check へとばしてもよいわけだし。

SMTP (25/tcp)

virus checker は普通に smtp を喋っているので、 NetBSD 箱で postfix を走らせる。

ただ if0 では 25/tcp を吸って、全部 virus checker へ投げてしまう方がよ いのかもしれない。 これは汎用 tcp proxy でねじまげれば OK ( ログが問題だが… )。

POP3 (110/tcp)

汎用 TCP proxy で十分です。

POP を APOP に変換しろは別に不必要だろう。 メールソフトがきちんとしてればいいんだし。

my homepage is www.fml.org/home/fukachan/.
my free softwares are found at www.fml.org/software/.
fml 4.0 project homepage is www.fml.org/fml/menu.ja.html.
fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
about one floppy bsd routers, see www.bsdrouter.org/.
Also, visit nuinui's world :) at www.nuinui.net.
For questions about me, e-mail <fukachan@fml.org>.
Copyright (C) 1993-2008 Ken'ichi Fukamachi

Powered by NetBSD.