[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:77301] Re: how to shut off all ports withipchains (was Re: Re:一番簡単なセキュリティー対策方法)


こんにちは。松田陽一 _at_ PAL-NET三鷹です。

From: ISHIOKA Takashi <ishioka _at_ dad.eec.toshiba.co.jp>
Subject: [linux-users:77296] Re: how to shut off all ports with ipchains (was Re:  Re: 一番簡単なセキュリティー対策方法)
Date: Fri, 8 Dec 2000 09:58:32 +0900

> matsuda> ppxp の場合、どこにスクリプトを書くんだったかな?
> matsuda> ML検索サーバが止まってて検索できないっす。^^;
> 
> guide-3 あたりをみて...

ぁぅ、そうでした。(汗)

> IP.START(RW)
>     変数IP.UPとは異なり、接続時にのみ呼び出されるスクリプトを指定します。自動モ
>     ードでは呼び出されませんので、接続後に自動実行したいプログラムを呼び出すよ
>     うなスクリプトを指定すると良いでしょう。例えばキューをフラッシュするために
>     sendmailコマンドを呼び出したり、時刻設定を行うために netdateコマンドを呼び
>     出したりするためのスクリプトです。
> IP.UP(RW)
>     接続時や自動モードへの移行時にネットワークの設定を行うスクリプトを指定しま
>     す。一般的なダイアルアップ接続ではdrouteupスクリプトを指定します。
> 
> どっちかってえーと UP のほうでしょう.

あー…
IP.UP って、確か、シェルスクリプトをそのまま書き入れることができな
かったんじゃなかったかな? と記憶しています。

drouteup は、 ppxp の内部コマンドが列挙されているものですよね。

ipconfig $IP.LOCAL $(IP.REMOTE) $(IP.NETMASK) $(IF.MTU)
iproute add default $(IP.REMOTE)

こういう奴で。

だから、 IP.UP よりも IP.START じゃないかなぁ、と。

/etc/ppxp/rc/ipchains.rc というファイルを作って、

------ /etc/ppxp/rc/ipchains.rc -------
#!/bin/sh

export PATH="/usr/bin:/bin:/sbin:/usr/sbin"

case "$1" in
    up)
	case "$PPXP_PHASE" in
	    Dead)
		;;
	    *)

# ethertap の場合は tap0 、 userlink の場合は ul0 …かな?

/sbin/ipchains -N ppp-in
/sbin/ipchains -A input -i tap0 -j ppp-in
/sbin/ipchains -N ppp-out
/sbin/ipchains -A output -i tap0 -j ppp-out

/sbin/ipchains -A ppp-in -s 10.0.0.0/8 -j DENY -l
/sbin/ipchains -A ppp-in -s 172.16.0.0/12 -j DENY -l
/sbin/ipchains -A ppp-in -s 192.168.0.0/16 -j DENY -l

/sbin/ipchains -A ppp-out -s 0/0 -d 10.0.0.0/8 -j DENY -l
/sbin/ipchains -A ppp-out -s 0/0 -d 172.16.0.0/12 -j DENY -l
/sbin/ipchains -A ppp-out -s 0/0 -d 192.168.0.0/16 -j DENY -l

/sbin/ipchains -A ppp-out -s 0/0 -d 0/0 137:139 -p udp -j DENY
/sbin/ipchains -A ppp-out -s 0/0 -d 0/0 137:139 -p tcp -j DENY

/sbin/ipchains -A ppp-in -p tcp -s 0/0 -d $IP.LOCAL ssh -j ACCEPT
/sbin/ipchains -A ppp-in -p tcp -s 0/0 -d $IP.LOCAL www -j ACCEPT

/sbin/ipchains -A ppp-in -p tcp -s 0/0 -d 0/0 auth -j REJECT

/sbin/ipchains -A ppp-in -s 0/0 -d $IP.LOCAL -p tcp -y -j DENY -l
/sbin/ipchains -A ppp-in -s 0/0 -d $IP.LOCAL -p tcp ! -y -j ACCEPT

/sbin/ipchains -A ppp-in -s 0/0 53 -d $IP.LOCAL 1024:65535 -p udp -j ACCEPT
/sbin/ipchains -A ppp-in -p udp -s 0/0 ntp -d $IP.LOCAL ntp -j ACCEPT

/sbin/ipchains -A ppp-in -p icmp -s 0/0 echo-reply -d 0/0 -j ACCEPT
/sbin/ipchains -A ppp-in -p icmp -s 0/0 destination-unreachable -d 0/0 -j ACCEPT
/sbin/ipchains -A ppp-in -p icmp -s 0/0 echo-request -d 0/0 -j ACCEPT
/sbin/ipchains -A ppp-in -p icmp -s 0/0 time-exceeded -d 0/0 -j ACCEPT

/sbin/ipchains -A ppp-in -j DENY -l

		;;
	esac
	;;
    down)

/sbin/ipchains -D input -i tap0 -j ppp-in
/sbin/ipchains -D input -i tap0 -j ppp-out

/sbin/ipchains -F ppp-in
/sbin/ipchains -F ppp-out

/sbin/ipchains -X ppp-in
/sbin/ipchains -X ppp-out
	;;
esac

exit 0
------ end of /etc/ppxp/rc/ipchains.rc -------


~/.ppxp/conf/hogehoge に

IP.START ipchains.rc up
IP.STOP ipchains.rc down

を書き入れる感じでしょうか。

試してないんで、どなたか内容チェックをお願いします。>いしおかさん(笑)
--
よぉ、ちぇきらっ、ちょぉ!(ぼうよみ)
松田 陽一(yoh)
mailto:matsuda _at_ palnet.or.jp (メールアドレス変更しました)
http://www2.palnet.or.jp/~matsuda/index.htm

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: