世に落ちている(==Google先生で見つかる) iptables の説明はなんで NAT がセットなの?
NAT なんて使わない普通のサーバのフィルタが書きたいのに、 設定ページではそういう説明はされていない。
初心者じゃないなら、自分で作りやがれってことか?
そりゃやりましたよ。
RH-Firewall-1-INPUT の filter を作成してるコマンドライン (iptables ほげほげ という内容) が、どこで実行されたか分からないから、
/etc/sysconfig/iptables
を手動で書き換えましたよ、ええ。
system-config-securitylevel-tui なんて知らなかったんだよ。
(補足しておくと、この時は0から書き直す必要は薄かったので、 こういう手抜きの実装方法になっている。)
因みに、system-config-securitylevel-tui コマンドは system-config-securitylevel-tui パッケージに入っている。
/usr/bin/system-config-securitylevel-tui にあるけど、実体は /usr/sbin/lokkit への symlink だ。
/usr/sbin/lokkit も system-config-securitylevel-tui パッケージに入っている。
system-config-securitylevel-tui パッケージ は system-config-securitylevel.spec のサブパッケージだ。
で、system-config-securitylevel-1.6.16 の tarball を展開すると、 RH-Firewall-1-INPUT は lokkit.c で定義されている。
#define CHAIN_NAME "RH-Firewall-1-INPUT"
RH-Firewall-1-INPUT はここで定義されていているのだが、
fprintf(fw, "# Firewall configuration written by system-config-securitylevel\n"); fprintf(fw, "# Manual customization of this file is not recommended.\n"); fprintf(fw, "*filter\n"); fprintf(fw, ":INPUT ACCEPT [0:0]\n"); fprintf(fw, ":FORWARD ACCEPT [0:0]\n"); fprintf(fw, ":OUTPUT ACCEPT [0:0]\n"); fprintf(fw, ":%s - [0:0]\n", CHAIN_NAME); fprintf(fw, "-A INPUT -j %s\n", CHAIN_NAME); fprintf(fw, "-A FORWARD -j %s\n", CHAIN_NAME);
...ちょっと待て、なんだこの「うわダッサ」な実装は??