とことん1FD

正式版を公開しました ssh snort perl などが1FDで!


このドキュメントは古くなりました---多少の参考にはなります(^^
配布していたファイル等もすでに置いてあった場所からは削除しました。

で、Linux World 2002年12月号の記事にしたものを正式版(名称: keroppy)として新たに公開することにしましたので、今後はそちら ---> [ keroppy トップページ ] <--- にお越しくださるようお願いしますm(_ _)m

はるかにパワーアップした keroppy をお楽しみください(^^)


と、いうことで、ウチではほぼ全てのサーバが1FDから起動されつつある。
1FD自体は雑誌の記事にもなることだし、人にあげたら喜ばれたので、
これはもしや!?ウケてるのでは?と思い、メボシいものを置いとくことにした。
単なる勘違いだったらそっとしといてください(笑)。

で、最近お気に入りなのは floppyfw-1.9.X なのですね。iptables が使えるからねっ!
Linux World9月号にfloppyfwの特集書いたのね。と、いうことでこいつをベースにしたものを紹介〜。
floppyfw 作者の、ノルウェーだかどこかのはっきり名前のわからないたぶんトーマスナントカさん。
あんたはエライ。

で、ウチで一番重宝してるのは WEBサーバーシステムなんだけど、これはまたしてもそのうち
記事にしてしまうつもりなので、詳しくは書かないのね。本買ってね。単なるWEBサーバーじゃ
つまんないので、ちょっとヒネってあるのね。え?だから本買ってね。

まあ、ヒントでブツだけは置いときましょーね。「ケロりん」お客さんへの特別サービスね。

[ floppyfw-websys-pcmcia.img ]

一時期このファイルが壊れていました、ご迷惑おかけしましたm(_ _ )m

※さらに、パッケージ拡張できるようにRAMまわりいじくってあります。まあ、容量増やしてマウントポイント分けただけですが(^^;
※注意...1680k DOS フォーマット用でーす!正しくフォーマットして、
書き出すには
dd if=floppyfw-websys.img of=/dev/fd0 ではダメ
dd if=floppyfw-websys.img of=/dev/fd0u1680 として

※floppyfw はファイアウォールなのでもともとネットワークデバイス2つ使いますが、こいつは floppyfw でいう INSIDE を殺してあります。正しい floppyfw 風に使うなら、コメントしてある INSIDE 関係の行をコメントアウトしてくださいね。たしか network.ini と config くらいだったかと。
設定とか?だから本買ってね(笑)。でも、がんばればできると思うよ、不穏な仕掛けはしてないから 安心してくださいな(改ざんされてたら知らないけど)。

あ、NE2000コンパチのPCMCIA専用だった(DeXXXn の ML でタタかれてたなあ、オレは好きだけどね、安いから)。デスクトップでは使えないや。ちょっと手を加えれば
使えるのでやれる人はやってみて。やり方は Linux World9月号を読むとわかるでしょう、ひひ。


#テストしてないやつならあるです。動かなかったら言ってください。

WEB鯖システム一般NIC用
[ floppyfw-websys.img ]
パッケージ拡張できるようにRAMまわりいじくっただけのやつPCMCIA用
[ floppyfw-basesys-pcmcia.img ]
パッケージ拡張できるようにRAMまわりいじくっただけのやつ一般NIC用
[ floppyfw-basesys.img ]


まあ、例のごとく当然無保証です。しかし、いいでしょー?フロッピー1枚でファイアウォール 機能つきWEB鯖がいきなり立ち上がるんだから。コンテンツ?そこがミソなのですよ、見てのお楽しみ。





■ 追加パッケージ(ノーマルのfloppyfwにはそのままでは使えません) ■


基本となる floppyfwを起動した後、 ロードすると機能が追加される、というものを作ってみた。なんだ1FDじゃなくて2FDじゃん、
と言ってはイケナイ。ここで見てみぬフリをするのが愛というものです。

追加パッケージは bzip2 圧縮した tar ボールにしてある。展開したら
addon.sh, packages(ディレクトリ), その他ファイル(あれば)
を FAT フォーマットのフロッピーにコピーすればよいです。

ロードの方法はフロッピーを差し替えて
# mount -t vfat /dev/fd0 /mnt/tmp
# . /mnt/tmp/addon.sh

で、その後に追加機能のコマンドを打つ

[ sshd ]
SSH で管理したい、というのはやはり人情。ということで。
パスワードはいったんfloppyfw本体を起動し、sshd パッケージもロードして、
passwd コマンドで設定する。毎回やるのがイヤとか、起動時にちゃんと設定されたいなら passwd コマンドで設定した後 /etc/passwd を フロッピーとかにコピーする。
で、floppyfw.ini を編集して、その passwd ファイルを起動時に /etc/passwd にしてしまう
ようにすればいい。

これは floppyfw のサイトにあった HOWTO になるべく忠実に(完全忠実にしたら動かなかった)
したものなので、バイナリとかも言われた所にあったのをとってきた。よってバージョン等詳細は不明。
#そんなん怖くて使えん(^^;
sshd
|-- addon.sh
`-- packages
    |-- login.bz2
    |-- post-login.ini
    |-- post-sshd.ini
    |-- ssh-keygen1.bz2
    |-- sshd1.bz2
    `-- tmp

/usr/bin/sshd で起動

設定ファイルも内蔵しちゃってるんで、使いにくいよねえ。そのうちオリジナル版を作りやしょう。




[ snort ]
さすがにフロッピー起動のsnortはあまりなかったでしょー?
単に面白いから作ってみた。1FD なのでリスクが少ないからハニーポットとして
意外と活躍できるかも。ログが大量に出るので工夫しないとRAMがいっぱいになるなあ。

snort-1.8.7, libpcap は 0.7.1 を使用してソースからコンパイル。このページアップ時点の
最新のハズ。configure は完全デフォルト
snort
|-- addon.sh
|-- packages
|   `-- snort.bz2
`-- snort.conf

/usr/bin/snort -des -c /etc/snort/snort.conf とかで起動

snort.conf を外に出してるので設定はしやすいでしょう。作ってから気づいたけど、 サイズ的にいうとルールファイルも外に出せなくはないんで、バイナリと一緒につぶさないでそうしたほうが扱いやすいでしょうねえ。そのうちそう作りかえやしょう。

つ、ことで作りました。これならルールの修正、追加とか簡単っす。
[ snort-1.8.7-addon ]
snort
|-- addon.sh
|-- packages
|   `-- snort.bz2
`-- conf
    |-- snort.conf
    |-- classfication.config
    |-- AAA.rule
    〜
    〜
    |-- YYY.rule        
    `-- ZZZ.rule        




[ perl ]
CGIとはperlのプログラムのことだと思っているヒトは結構多いです。そういったヒトは
モニターを指してこのパソコンは〜、というヒトと同類だったり、全てのコンビニをXXXイレブン
と言い切ってしまう方々とも非常に近くて、ある意味危険なのですが、まあそれはいいとして
世の中の多くのCGIはPerlで書かれてるので、これが無きゃ使えねー、とか言われそうです。
あ、そんなヒトはこんなサイト見ないか(^^;
へっぽこなBBSくらいならシェルスクリプトで書けるし、それはそれでチープな喜びもありますが...。
ま、これも遊びということで、Perlパッケージです。
モジュールは入れてませんので、ほとんど何の役にも立ちません(おい!)。
お好きなモジュールを随時追加してお使いください(^^

※動作確認はパッケージロード後
/usr/bin/perl -e 'print "Hello, Perl (^^)/\n";'
で、「Hello, Perl (^^)/」と表示されることしかやってません。

perl
|-- addon.sh
`-- packages
    `-- perl.bz2


[ トップページ ]