-*- outline -*-

                        README of ipts

$Id: 00README,v 1.3 2006/08/16 12:15:22 sierrajuliett Exp $

---------------------------------------
* このパッケージに含まれているファイル
---------------------------------------

00README -- このファイル
iptables-setup.pl -- perl スクリプト

以上、２つです。

-----------
* 使いかた
-----------

root権限で、

# iptables-setup.pl

と実行すると、shell script "myiptables-setup.sh"が作成され、
これを実行した後に、iptables-saveを呼び出して、"iptables"という
ファイルに結果をリダイレクトします。

ここで生成されたファイルは、スクリプト内の設定を変えることで、
任意のディレクトリに生成できます。

standalone client、server、router用の３つの設定をするように
なっています。

# ./iptables-setup.pl

と実行すると、

1 : standalone client host
2 : server
3 : router

と聞いてきますので、1〜3の数字を入力して選択してください。

次に、デフォルト・ゲートウェイのインターフェイス名を聞きますので、
これを入力します。

以上、２つの質問に答えると、iptables を設定するための
シェルスクリプトと /etc/init.d/iptables から呼び出される
設定ファイルを生成します。

------------
* オプション
------------

テスト用に、オプションを用意しました。

        -help : help を表示
        -directory : 生成するファイルを落とすディレクトリを指定する
                     (e.g. -directory ./)
        -scriptonly : スクリプト(myiptables-setup.pl)を生成するが、
                      実行はしない。

------
* 動作
------

iptables-setup.plを実行すると、

/DIR/myiptables-setup.sh
/DIR/iptables

という２つのファイルを生成します。

# "/DIR/"の部分の設定は、「* テスト時に書き換えるところ」を読んでください。

o /DIR/myiptables-setup.sh

  iptables を実行するためのスクリプトです。client用、server用、router
  用の３つの設定ができます。

  server用は、特に何かのサーバに特化した設定（webサーバ用など）にはなっ
  ていません。いくつかのポートを開けているだけです。

  router用のスクリプトは、十分にテストしていません。私が普段使っている
  設定から、通常の利用だと必要だと思われる部分を抜粋しただけです。

o /DIR/iptables

  /etc/init.d/iptables start した時に、読み込まれる設定ファイルです。
  上のスクリプトを実行した後、iptables-saveを呼び出して生成していま
  す。


----------------------------
* テスト時に書き換えるところ
----------------------------

デフォルトの設定では、

my $DEFAULT_DIRECTORY = "/etc/sysconfig/";
my $DEFAULT_SCRIPT_FNAME = "myiptables-setup.sh";
my $DEFAULT_CFG_FNAME = "iptables";

となっており、

生成されるスクリプト名は、"/etc/sysconfig/myiptables-setup.sh"、
iptables の rule set ファイル名は、/etc/sysconfig/iptables" です。

もしも、変更したい場合には、適宜書き換えてください。

「* オプション」のところに書いてありますが、オプションでも、
出力するディレクトリを変更することができます（-directoryオプション）。


テスト用に、オプション指定することもできます。

        -help : help を表示
        -directory : 生成するファイルを落とすディレクトリを指定する
                     (e.g. -directory ./)
        -scriptonly : スクリプト(myiptables-setup.pl)を生成するが、
                      実行はしない。

------
* 追記
------

一部のディストロで、loopback interfaceのパケットを明示的に許可しないと
いけないものがあったので、記憶をたどってACCEPTにした。

# dnsが動いているホストでこの設定をしていないと、当該ホスト上で名前の
# 解決ができない（digとかできない）。

@SIMPLE_SETTING定数の中の
  "\$IPTABLES -A allowed -i lo -j ACCEPT"
の部分。

Vine では必要のない設定です。
