No.5995 投稿時間:2002年10月24日(Thu) 15:07 投稿者名:miwa URL:
こんにちは。
vine2.5でiptables-1.2.6a-0vl0を使用しています。セキュリティの為に
# 外部からプラアドでのIP偽称を遮断する
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
# 内部からグロアドでのIP偽称を遮断する
/sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
を追加したら名前解決できなくなりました。
10.0.0.0/8、172.16.0.0/12がダメみたいです。これはプライベートアドレスではないのでしょうか?
これは何が間違っているのでしょうか?
(正しいと思うのですが…)
No.5996 投稿時間:2002年10月24日(Thu) 19:07 投稿者名:OAK URL:
> # 外部からプラアドでのIP偽称を遮断する
> /sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
> # 内部からグロアドでのIP偽称を遮断する
> /sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
外部(インターネット)との接続は何で行っているのでしょうか。
linux マシンはPPPとイーサーと両方使ってるのですか。
これから見るとPPPが外部でイーサーネットがLANと言うことですが。(自分がルータ)
No.6006 投稿時間:2002年10月24日(Thu) 23:44 投稿者名:miwa URL:
すいません。下記のような記述したかったのです。誤って編集中の記事が投降されてしまいました。
vine2.5がルータになってまして、外部向けがppp0で、内部向けがeth0です。
下記のようにすると、内部ホスト(Win2k、TurboLinux8Workstation)からvine2.5のFTP・Samba・DNS・NFSサーバにアクセスできなくなってしまいました。
vineからも内部ホスト(Win2k)にsmbmountできなくなりました。
vine2.5から外部へ、また、外部からvine2.5へは特に何も支障はありません。
vine2.5でiptables-1.2.6a-0vl0を使用しています。セキュリティの為に
# 外部からプラアドでのIP偽称を遮断する
/sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
# 内部からグロアドでのIP偽称を遮断する
/sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
/sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
/sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
を追加したら名前解決できなくなりました。
10.0.0.0/8、172.16.0.0/12がダメみたいです。これはプライベートアドレスではな
いのでしょうか?
これは何が間違っているのでしょうか?
(正しいと思うのですが…)
No.6010 投稿時間:2002年10月25日(Fri) 01:13 投稿者名:おやじ URL:http://www.aconus.com/~oyaji/
> vine2.5でiptables-1.2.6a-0vl0を使用しています。セキュリティの為に
>
> # 外部からプラアドでのIP偽称を遮断する
> /sbin/iptables -A INPUT -s 10.0.0.0/8 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 172.16.0.0/12 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 192.168.0.0/16 -i ppp0 -j DROP
> # 内部からグロアドでのIP偽称を遮断する
> /sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
> /sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
> /sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
>
> を追加したら名前解決できなくなりました。
> 10.0.0.0/8、172.16.0.0/12がダメみたいです。これはプライベートアドレスではな
> いのでしょうか?
> これは何が間違っているのでしょうか?
> (正しいと思うのですが…)
/sbin/iptables -A INPUT -s 10.0.0.0/8 -d 0/0 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 172.16.0.0/12 -d 0/0 -i ppp0 -j DROP
/sbin/iptables -A INPUT -s 192.168.0.0/16 -d 0/0 -i ppp0 -j DROP
/sbin/iptables -A OUTPUT -s 0/0 -d 10.0.0.0/8 -i ppp0 -j DROP
/sbin/iptables -A OUTPUT -s 0/0 -d 172.16.0.0/12 -i ppp0 -j DROP
/sbin/iptables -A OUTPUT -s 0/0 -d 192.168.0.0/16 -i ppp0 -j DROP
No.6021 投稿時間:2002年10月25日(Fri) 15:05 投稿者名:miwa URL:
ご回答ありがとうございます。
> /sbin/iptables -A INPUT -s 10.0.0.0/8 -d 0/0 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 172.16.0.0/12 -d 0/0 -i ppp0 -j DROP
> /sbin/iptables -A INPUT -s 192.168.0.0/16 -d 0/0 -i ppp0 -j DROP
> /sbin/iptables -A OUTPUT -s 0/0 -d 10.0.0.0/8 -i ppp0 -j DROP
> /sbin/iptables -A OUTPUT -s 0/0 -d 172.16.0.0/12 -i ppp0 -j DROP
> /sbin/iptables -A OUTPUT -s 0/0 -d 192.168.0.0/16 -i ppp0 -j DROP
これで上手くいきました。でも
/sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
/sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
がエラーとなるのでしょうか?
(何がおかしいのでしょうか?)
No.6026 投稿時間:2002年10月25日(Fri) 20:52 投稿者名:おやじ URL:http://www.aconus.com/~oyaji/
> > /sbin/iptables -A INPUT -s 10.0.0.0/8 -d 0/0 -i ppp0 -j DROP
> > /sbin/iptables -A INPUT -s 172.16.0.0/12 -d 0/0 -i ppp0 -j DROP
> > /sbin/iptables -A INPUT -s 192.168.0.0/16 -d 0/0 -i ppp0 -j DROP
> > /sbin/iptables -A OUTPUT -s 0/0 -d 10.0.0.0/8 -i ppp0 -j DROP
> > /sbin/iptables -A OUTPUT -s 0/0 -d 172.16.0.0/12 -i ppp0 -j DROP
> > /sbin/iptables -A OUTPUT -s 0/0 -d 192.168.0.0/16 -i ppp0 -j DROP
>
> これで上手くいきました。でも
> /sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
> /sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
> がエラーとなるのでしょうか?
> (何がおかしいのでしょうか?)
Netfilterは、というよりルータのフィルタもそうですが、優先度の高い順番
(ipchainの場合は先頭行から)に処理されますので、通らなくなって当然です。
1. /sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
2. /sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
3. /sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
1番のフィルタの意味をよく考えてみれば、判ると思いますが、これは、
hth0から、つまり家庭内から、10.0.0.0/8以外のソースアドレスのパケット
流入したら廃棄するという設定ですから、家庭内がクラスA(10.0.0.0/8)なら、
このフィルタには引っかかりません。しかし、それ以外は全て廃棄されてしまい
ますので、家庭内がクラスC(192.168.0.0/16)なら当然廃棄されてしまい、通過
しません。
借りに、家庭内がクラスAでこのフィルタを通過しても、2番目で引っかかって
しまいます。つまりmiwaさんのこのフィルタは家庭内からは一切外へ出られない
フィルタになっているということです。1と2を消せば、3はクラスC以外は廃棄
という設定ですので、うまく動いて当然です。
そういう視点で、おやじのフィルタを見てもらえば素直に書いてあると思いますが。
おやじは、ipchainは使っていませんが、このフィルタはTE4121Cのフィルタその
ものです。
上3つは、PPPからプライベートアドレスをソースとするパケットが流入したら
ディストネーションによらず、廃棄する。下3つは、PPPへプライベートアドレス
をディストネーションとするパケットを送信しようとしたら、ソースによらず廃棄
するとしたものです。
ちなみにこのIPアドレス偽装フィルタは、必ず先頭に記述することです。通常、
このほかにポートフィルタでサーバポート等を開けると思いますが、これより後に
記述すると、アドレス偽装されていても、許容されているポートだったらそのフ
ィルタにマッチした時点で通過してしまうからです。
No.6055 投稿時間:2002年10月27日(Sun) 14:01 投稿者名:miwa URL:
> Netfilterは、というよりルータのフィルタもそうですが、優先度の高い順番
> (ipchainの場合は先頭行から)に処理されますので、通らなくなって当然です。
> 1. /sbin/iptables -A INPUT -s ! 10.0.0.0/8 -i eth0 -j DROP
> 2. /sbin/iptables -A INPUT -s ! 172.16.0.0/12 -i eth0 -j DROP
> 3. /sbin/iptables -A INPUT -s ! 192.168.0.0/16 -i eth0 -j DROP
> 1番のフィルタの意味をよく考えてみれば、判ると思いますが、これは、
> hth0から、つまり家庭内から、10.0.0.0/8以外のソースアドレスのパケット
> 流入したら廃棄するという設定ですから、家庭内がクラスA(10.0.0.0/8)なら、
> このフィルタには引っかかりません。しかし、それ以外は全て廃棄されてしまい
> ますので、家庭内がクラスC(192.168.0.0/16)なら当然廃棄されてしまい、通過
> しません。
唖然。。。!
そうですね。全く勘違いしてました。
> ちなみにこのIPアドレス偽装フィルタは、必ず先頭に記述することです。通常、
> このほかにポートフィルタでサーバポート等を開けると思いますが、これより後に
> 記述すると、アドレス偽装されていても、許容されているポートだったらそのフ
> ィルタにマッチした時点で通過してしまうからです。
そうですね。そのようにしたいと思います。
どうもありがとうこざいました。