1 名前:login:Penguin [2006/01/07(土) 09:23:53 ID:lNsnmDoV] iptablesを使って素敵なファイアウォールとか、 快速ルータを作ったりするために、 情報を出し合うスレ 前スレ おい、iptablesの使い方を(ry その2 pc8.2ch.net/test/read.cgi/linux/1079277604/l50
299 名前:login:Penguin mailto:sage [2007/03/18(日) 10:14:25 ID:lkW62HcB] moblockの賢い使い方教えちょうだい。 例えばbittorrentだけに使う場合どうやるの?
300 名前:login:Penguin mailto:sage [2007/03/18(日) 10:22:28 ID:tZFwhAqA] www.simonzone.com/software/guarddog/ 超おすすめ
301 名前:298 mailto:sage [2007/03/21(水) 02:50:12 ID:ZrXMqD8R] 失礼します。 誠に勝手ながら、くだ質に移動させていただきたいと思います。 このレスを見て、答えてくださる方がいらっしゃれば、 くだ質にいらしてください。 よろしくお願いいたします。
302 名前:login:Penguin mailto:sage [2007/03/21(水) 11:58:02 ID:CJ4NEFZh] >>298 > LAN <-> WAN は許可……?他と何が違うのでしょうか? FORWARDだろ。サーバ兼ルータ的な使い方なんじゃね。 俺んちもそうだけど。 > iptables -A OUTPUT -o lo -j ACCEPT > も必要ではないでしょうか。 OUTPUT許可のところに--state NEWが含まれているから要らない。 俺も>>288 ,289で見落としてたw。
303 名前:298 [2007/03/21(水) 17:48:47 ID:O8gADGKy] >>302 ありがとうございます。 ".....ACCEPT" は、何を許可しているのでしょうか? FORWARD とのことですが、ルータの機能を ACCEPT と呼んでいるのでしょうか? > OUTPUT許可のところに--state NEWが含まれているから要らない。 なるほど。この OUTPUT は、eth0 でも lo でも有効なのですね。
304 名前:298 mailto:sage [2007/03/21(水) 18:02:05 ID:O8gADGKy] すみません、sage 忘れました。 もう一度読んでいて気がついたのですが、 実は ACCEPT ではなくて、FORWARD の事だということなのでしょうか? なるほど、それだったら納得がいきます。
305 名前:login:Penguin mailto:sage [2007/03/21(水) 19:35:41 ID:CJ4NEFZh] え〜と、コメントでしょ? あんまり難しく考えない方が。 > ".....ACCEPT" は、何を許可しているのでしょうか? そのコメントに続く設定郡。 例えばこのままだとLAN内からOB25P時の587ポートに接続できないから、 それを許可(ACCEPT)したかったら、ここへ追加しましょう見たいな。 iptables -A lan_wan -d メール鯖のIP -p tcp --dport 587 -j ACCEPT ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が 多いと思うけどなぁ。
306 名前:298 mailto:sage [2007/03/22(木) 05:11:55 ID:xJMgMLIF] >>305 たびたびありがとうございます。 確かにその通りですね。 でも、それだとなぜ Server <-> WAN や Server <-> LAN には ".....ACCEPT" が 書いていないのでしょう? ですが、 > え〜と、コメントでしょ? あんまり難しく考えない方が。 その通りですので、とりあえず解決とさせていただきます。 とりあえず、知識のある方が見ても特別の意味はないということが分かっただけで、 十分です。 どうもありがとうございました。 > ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が > 多いと思うけどなぁ。 そうですね。ただ、基本は DROP というのが 良いお手本になるのではないかと思います。
307 名前:login:Penguin mailto:sage [2007/03/30(金) 22:56:25 ID:8JVFIncu] > ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が > 多いと思うけどなぁ。 用途によりけりだろ。
308 名前:login:Penguin mailto:sage [2007/03/31(土) 08:27:25 ID:EltKK77L] fedorasrv.com/iptables.shtml を参考にして、 中国と韓国からの接続を拒否しております。 COUNTRYLIST='CN KR' wget -q ftp.apnic.net/stats/apnic/delegated-apnic-latest for country in $COUNTRYLIST do for ip in `cat delegated-apnic-latest | grep "apnic|$country|ipv4|"` do FILTER_ADDR=`echo $ip |cut -d "|" -f 4` TEMP_CIDR=`echo $ip |cut -d "|" -f 5` FILTER_CIDR=32 while [ $TEMP_CIDR -ne 1 ]; do TEMP_CIDR=$((TEMP_CIDR/2)) FILTER_CIDR=$((FILTER_CIDR-1)) done iptables -I INPUT -s $FILTER_ADDR/$FILTER_CIDR -j LOG_DENYHOST done done rm -f delegated-apnic-latest 知り合いが使用しているメールサーバに割り当てられている IP アドレスが 韓国のもののようで、知り合いにメールが送れず、困ってしまいました。 一時的に iptables を外して送信したのですが、今後の為に、 例外的に xxx.xxx.xxx.xxx という IP アドレスのみに関しては許可するようにするには、 上記をどのように変更すれば良いでしょうか?
309 名前:login:Penguin mailto:sage [2007/03/31(土) 08:44:23 ID:Ma3dh8rk] >>308 それはforで回すところで|grep -v xxx.xxx.xxx.xxxするだけ済むのじゃないのか。
310 名前:308 mailto:sage [2007/03/31(土) 09:11:45 ID:EltKK77L] >>309 取得先のリストにはネットワークアドレスとホスト数が書いてあるようで、 教えて頂いたやり方で1つのIPアドレスを除外する事は出来ませんでした。 ……って、これってシェルスクリプトの話になってしまうのでしょうか?
311 名前:login:Penguin mailto:sage [2007/03/31(土) 22:14:16 ID:0taKUXtt] ipcalc使えば解決しそうだが。
312 名前:login:Penguin mailto:sage [2007/04/03(火) 10:15:25 ID:z+dw3vDu] グラフィカルユーザインタフェース上でiptablesを設定できるツールって 何かありますか? できるだけ細かい設定にも対応していればいいんですが。
313 名前:login:penguin mailto:sage [2007/04/03(火) 17:23:47 ID:GE6Pjssu] つ [ ttp://www.atmarkit.co.jp/flinux/rensai/linuxtips/755firestarter.html ]
314 名前:login:penguin mailto:sage [2007/04/03(火) 17:48:47 ID:GE6Pjssu] もひとつ [ ttp://www.asahi-net.or.jp/~AA4T-NNGK/ipttut/output/guis.html ]
315 名前:login:Penguin mailto:sage [2007/04/06(金) 01:54:49 ID:oz8TbWBc] emacs
316 名前:login:Penguin mailto:sage [2007/04/13(金) 20:09:53 ID:thUuY1hz] 実に馬鹿な間違いをしたものだ。 Debian sidを使っていて、2.6.20のソースが落ちてきた。さあコンパイルしてインストールだ…と 思ったら、iptablesが起動時に有効にならない。 どうやら新しいカーネルでESTABLISHED,RELATEDを許可するルールが有効になってなかったようだ。 make oldconfigで設定を引き継いだのだが、Netfilter connection tracking support(CONFIG_NF_CONNTRACK_ENABLED)がセットされていなかったのだな。 道理でうまくいかないわけだ。 今、再コンパイル中だ。 おまえらもカーネル構築時には気を付けろよ、って俺みたいな馬鹿はいないかw
317 名前:316 mailto:sage [2007/04/14(土) 15:28:31 ID:XI7dgw1x] 蛇足かと思ったが補足。 追加だけど Networking options -> Network packet filtering framework (Netfilter) -> Core Netfilter Configuration の "conntrack" connection tracking match support(CONFIG_NETFILTER_XT_MATCH_CONNTRACK) "state" match support(CONFIG_NETFILTER_XT_MATCH_STATE) Network packet filtering framework (Netfilter) -> IP: Netfilter Configuration の IPv4 connection tracking support(CONFIG_NF_CONNTRACK_IPV4) も忘れずに入れておいたほうがいいな。 IPv6もやっているのなら、 IPv6: Netfilter Configuration (EXPERIMENTAL)の CONFIG_NF_CONNTRACK_IPV6 CONFIG_IP6_NF_IPTABLES あたりもいるかな。まあ人それぞれだが。
318 名前:login:Penguin [2007/04/22(日) 21:35:54 ID:LpAHASwm] >>293 > $ sudo /sbin/iptables -A INPUT -i all -m state --state ESTABLISHED,RELATED -j ACCEPT -i all つけると動かなかった はずすと動いた
319 名前:login:Penguin [2007/04/27(金) 15:20:12 ID:+daqfGsX] SynFlood 対策に 1/s で 80/tcp に対する limit-burst を設定したいのですが、 最適値はどのように測定すればいいのでしょうか? また、参考までに皆様の設定値を教えてください。
320 名前:login:Penguin [2007/04/27(金) 15:29:57 ID:mAH4GVwJ] >>319 SYNレートには最適値などない。ページのヒットレートやサーバの処理性能次第。
321 名前:login:Penguin [2007/04/27(金) 21:06:39 ID:xjr/suIm] もちろん、全てのサーバに対する最適値を質問しているのではありません。 自分のサイトに対するアクセス数などの要因が絡んでいる事は理解しています。 その上で、最適値の目安をつける方法をしりたいというお話です。
322 名前:login:Penguin [2007/04/28(土) 00:35:34 ID:nkc2+CFz] 下記の設定を追加してみたのですが、動作確認をする方法はありますか? $IPTABLES -N syn-flood $IPTABLES -A syn-flood -m limit --limit 1/s --limit-burst 8 -j RETURN $IPTABLES -A syn-flood -j LOG --log-prefix "Warning! syn flood:" $IPTABLES -A syn-flood -j DROP
323 名前:login:Penguin mailto:sage [2007/04/29(日) 20:41:31 ID:TA2dVdQ7] あります
324 名前:login:Penguin mailto:sage [2007/05/20(日) 21:36:26 ID:91gxU4C0] >>316-317 を参考にして、2.4系から2.6.20にあげたんだけど、起動時 に(起動後手動でやっても)一部のルールで、 iptables: Too many levels of symbolic links って出るんですけど、このsymbolic linkって、ファイルシステムのそれ じゃないんでしょうか。 あと、 iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp+ -j MASQUERADE とかやってるんですけど、内側から一部のサイト(www.noaa.govとか@IT)がみられな かったり、内側のPS3からPlaystation Networkに繋がらなくなってしまいました。 どのへんをチェックすればいいんでしょう。
325 名前:login:Penguin mailto:sage [2007/05/21(月) 06:08:43 ID:kVyes7gq] >>324 >内側から一部のサイト(www.noaa.govとか@IT)がみられな www.linux.or.jp/JF/JFdocs/Adv-Routing-HOWTO/lartc.cookbook.mtu-mss.html
326 名前:login:Penguin mailto:sage [2007/05/21(月) 07:49:58 ID:Zk1DSv/I] >>325 おお、ありがとうございます!ばっちり解決しました。
327 名前:login:Penguin mailto:sage [2007/05/27(日) 15:39:23 ID:OG+sq2nw] iptablesでapacheのlimitipconnみたいなことはできますか? できるならぜひ教えてもらいたいのですが
328 名前:login:Penguin mailto:sage [2007/05/28(月) 23:11:18 ID:sHIi1tok] iptablesの設定でいろんなサイトを見ていたのですが ppp0とかppp+とか出てきてわかりませんでした。 ppp0とかppp+って何ですか?
329 名前:login:Penguin mailto:sage [2007/05/29(火) 00:01:07 ID:nHY4srpO] >>327 connlimit で出来る、かも知れない。 (サポートしてないかもしれない。)
330 名前:login:Penguin mailto:sage [2007/05/29(火) 00:19:58 ID:z8TDg4YQ] >>328 それこそググれよ。
331 名前:328 mailto:sage [2007/05/29(火) 03:10:29 ID:/srE7Qjl] すみません。 書かなくてもみなさんわかると思ったので書きませんでしたが ググってわからなかったので質問しました。
332 名前:login:Penguin mailto:sage [2007/05/29(火) 06:02:59 ID:nHY4srpO] ppp0 とか ppp1 ってのは PPP 接続インターフェースの名前で、 ifconfig した時に、eth0 や lo と一緒に出てくる。(設定してれば。) PPP 接続ってのは PPPoE するのに必要で、 ADSLモデム直結でLinuxをルータにしようとすると WAN側が ppp インターフェース(ppp0とかppp1とか)になる。 ppp+ はアクティブなPPPインターフェースのどれか。
333 名前:login:Penguin [2007/06/04(月) 16:54:55 ID:/R0JhaQ8] LinuxPCをNATとして下記のような構成にしたいと考えております。 192.168.0.1 | +---+192.168.0.254(eth0) |NAT| +---+192.168.1.1(eth1) | | 192.168.1.2 | | +----+ | +------+192.168.1.254 |ROUTER| +------+dynamicIP | Internet 下記2つにて可能でしょうか? (1)eth1のGWを192.168.1.254にする (2)iptables -t nat -A POSTROUTING -s 192.168.0.1 -o eth1 -j SNAT --to 192.168.1.1 また、不足等あればどのような設定が必要でしょうか? どうかアドバイスをお願い致しますm(_ _)m
334 名前:login:Penguin mailto:sage [2007/06/04(月) 19:34:14 ID:i9lW+1Uc] >>333 (1) "eth1の" ではなくて "NATルータの" な。 デフォルトゲートウエイはマシン単位で設定するものであって、 ネットワークカード単位で設定するものではない。 (2) "--to" ではなくて "--to-source" だな。
335 名前:login:Penguin mailto:sage [2007/06/06(水) 12:19:16 ID:YI/fHvZq] >>333 なんで2重にNATするの? せっかくルータがあるのに。
336 名前:333 mailto:sage [2007/06/06(水) 15:09:10 ID:YJltEUYM] >>334 ,335 レスありがとうございます。 社内NWで、NWを切り分ける必要があるからです。 ・・・試そうとしたらクロスケーブルがないorz
337 名前:login:penguin mailto:sage [2007/06/06(水) 15:57:04 ID:VIR6ggRn] VLAN 対応のハブにしたら?
338 名前:login:Penguin mailto:sage [2007/06/06(水) 17:38:32 ID:YI/fHvZq] >>336 高機能ルータにしてVLANにしたほうが楽ですよ。 >>333 FORWARDもACCEPTしないといけないんじゃないかな。
339 名前:login:Penguin mailto:sage [2007/06/10(日) 03:43:27 ID:WfZdqta0] 質問です。 krfilter のようなアジア地域に限った話ではなくて、 もっとほかの国々のIPアドレスもフィルタリングする方法ってないですか? 逆に日本だけOKとかでもいいんですが・・・
340 名前:333 mailto:sage [2007/06/10(日) 04:19:16 ID:bkLFd8zx] レスありがとうございました。 いろいろあってNAT計画はお流れになりました(笑 >>339 うちは ftp.apnic.net/stats/apnic/delegated-apnic-latest を使っていますよ
341 名前:login:Penguin mailto:sage [2007/06/10(日) 19:55:39 ID:kdglMI9l] >>339 私はここのデータを使わせてもらってます。 nami.jp/ipv4bycc/ >>340 APNICだけでは、足りないJPのアドレスがないですか?
342 名前:login:Penguin mailto:sage [2007/06/10(日) 20:45:14 ID:VSk4UJi3] 少しだけどARIN管轄のJPアドレスがあるね。 43.0.0.0/255.0.0.0 64.56.160.0/255.255.224.0 133.0.0.0/255.0.0.0 199.103.103.0/255.255.255.0 204.79.157.0/255.255.254.0 204.79.218.0/255.255.255.0 204.231.230.0/255.255.255.0 204.231.251.0/255.255.254.0 206.3.0.0/255.255.224.0 206.143.128.0/255.255.128.0 216.255.224.0/255.255.240.0 (2007/06/08現在)
343 名前:339 mailto:sage [2007/06/10(日) 21:47:57 ID:WfZdqta0] >>341 レスありがとうございます。 まさにこんなのを探してました。 今からawkの使い方を調べますw
344 名前:login:Penguin [2007/06/12(火) 13:27:50 ID:bNzfVXjZ] すみません。教えて下さい。 現在、22ポートをどのIPからでもアクセスできるようになっているのですが、 これを特定のIPアドレスだけからアクセスするようにさせたいのですが、 下の記述に、更に-Aで追加することはできないのでしょうか?(うまくできません。) もしそうなら、どのように記述すればよいでしょうか? IPTABLES="/sbin/iptables" $IPTABLES -F $IPTABLES -t nat -F $IPTABLES -P INPUT ACCEPT $IPTABLES -P FORWARD DROP $IPTABLES -P OUTPUT ACCEPT $IPTABLES -A INPUT -p tcp --dport 22 -j ACCEPT
345 名前:login:Penguin [2007/06/12(火) 13:52:31 ID:bNzfVXjZ] OSはCentOSを使っています。 ものすごく初歩的なことなのですが教えて下さい。 iptableを書き換えて、-Lで確認すると、希望通りに変更されています。 その後、/etc/rc.d/init.d/iptable restart します。 しかし、書き換えた内容が反映されていないのですが、何か足りないものが あるでしょうか?
346 名前:login:Penguin mailto:sage [2007/06/12(火) 14:07:51 ID:u4WFCFNn] >>345 restartする前に、 /etc/rc.d/init.d/iptable save で保存せにゃ駄目なんじゃない? これで/etc/sysconfig/iptablesあたりに現行のが保存されるはず‥ 俺はiptablesの設定はrc.localに書いちゃう人なので良くわからない(苦笑
347 名前:login:Penguin mailto:sage [2007/06/12(火) 15:18:08 ID:Vd+dHR6r] >$IPTABLES -P INPUT ACCEPT >$IPTABLES -P FORWARD DROP >$IPTABLES -P OUTPUT ACCEPT 書き間違えなのか知らんけど $IPTABLES -P INPUT DROP してな iptablesは上からよんでいく そして、上にある方を、優先してポリシーを適用するという大前提がある
348 名前:login:Penguin [2007/06/12(火) 15:59:34 ID:bNzfVXjZ] >>346 そのとおりでした。ありがとうございます。 >>347 素で間違えてました。ご指摘ありがとうございます。
349 名前:login:Penguin [2007/07/04(水) 05:49:42 ID:AjHyf33g] 保守age
350 名前:login:Penguin [2007/07/04(水) 11:09:43 ID:UK9QnhoX] Redhat 系では /etc/sysconfig/iptables に設定が置いてあって、 起動時にそれが rc 以下のスクリプトで反映されることに なってますが、そもそも /etc/sysconfig/iptables って system-config-securitylevel が作成するものですよね? もっと細かい設定をしたいときにはこのファイルを vi なんかで いじるというのが Redhat 流儀なのでしょうか?それとも 手動での設定項目は別に用意するべきなのでしょうか? いままで Debian 系をメインで使っていたので、 まだ Redhat 系の流儀がわかっておりません。 できるだけ郷に入っては郷に従えで行きたいと思っています。
351 名前:login:Penguin mailto:sage [2007/07/04(水) 11:19:00 ID:1/Qyerts] >>350 /etc/init.d/iptables save かな。
352 名前:350 [2007/07/05(木) 07:20:59 ID:VsSiocxY] 結局、system-config-securitylevel を使わない前提で /etc/sysconfig/iptables をエディタで書き換えてます。 ときどき /etc/init.d/iptables save で別ファイルに保存して。
353 名前:login:Penguin mailto:sage [2007/07/08(日) 10:24:06 ID:zYOCWUig] Chain OUTPUT (policy DROP) target prot opt source destination ACCEPT 0 -- anywhere anywhere state NEW,RELATED,ESTABLISHED と OUTPUT の policy を ACCEPT にするのとでは違いがありますか? OUTPUT も、ポート毎に1つ1つ許可するほうがいいのでしょうか? いまいち OUTPUT を deny するメリットがわかりません。 アドバイスをお願いします。
354 名前:login:Penguin mailto:sage [2007/07/08(日) 12:12:05 ID:YCfVpWHt] たとえば掲示板か何かを公開した時に 掲示板スクリプトにセキュリティホールが存在して (本来あってはならないことだが、しばしば起こりうる) 気づかぬうちにボットネットに参加してしまうかも知れない。 そういう時に RELATED と ESTABLISHED だけ許可しておいて 他は policy で DROP しておけば、犯罪ネットに貢献しないで済む。
355 名前:login:Penguin mailto:sage [2007/07/10(火) 15:28:15 ID:U82mxVZP] 通信を許可するポートを動的に変更する方法はありますか? 動的というか、IPアドレスではなくてホスト名で許可したいのですが。 例えば、自分のノートPCの出口のグローバルIPをダイナミックDNSとして ホスト名が常に変更されるようになっている時、そのダイナミックDNSの ホスト名から得られたIPアドレスは通信できるようにiptableを設定 したいのですが、そのような事はできますか?
356 名前:login:Penguin mailto:sage [2007/07/10(火) 18:00:51 ID:zGJfejuy] macアドレス使うとか
357 名前:login:Penguin mailto:sage [2007/07/10(火) 20:30:31 ID:XPuS8ReG] iptables -t nat -A PREROUTING -d (グローバルIP) -p all -i ppp+ -j DNAT --to 192.168.0.2 みたいなのて、 プロバイダ割り当てIPがかわるたびに やらなくちゃいけないでつか?
358 名前:login:Penguin [2007/07/11(水) 11:03:28 ID:D3zZXJq+] >>357 うん。たとえFQDNで指定しても iptables コマンドを 実行した瞬間に名前解決されるわけだからね。 適当な Dynamic DNS に登録しておいて、 cron で定期的に iptables 設定しなおすとか。
359 名前:login:Penguin [2007/07/11(水) 11:06:23 ID:nph/g5pi] 全てのlog.は出てます。
360 名前:amel mailto:!(ΦyΦ+){秘密です。} [2007/07/11(水) 11:07:41 ID:nph/g5pi] aaa
361 名前:login:Penguin [2007/07/11(水) 11:14:47 ID:dikq2zGa] ほげ?
362 名前:login:Penguin mailto:sage [2007/07/11(水) 18:13:44 ID:7rPXioeP] >>357 構成と何がやりたいのかによりけりだけど、 eth0 とか ppp0 とかのインターフェース指定じゃ無理なケース?
363 名前:login:Penguin mailto:sage [2007/07/19(木) 10:13:27 ID:82b1F1Ds] >>341 そのページの説明を参考にiptablesを設定すると何千行にもなるんだけど、そんなもの? 今のところ普通に動いてるから、いいのかな?
364 名前:login:Penguin mailto:sage [2007/07/19(木) 10:58:27 ID:PmENbhRL] うちの場合こんな感じだ。 $ sudo iptables-save | wc --lines 1856 手で個別に入れたルールが70くらい。 残りは特定アジアのIPアドレスを対象に自動生成した -A INPUT -s xxx.xxx.xxx.xxx/xxx.xxx.xxx.xxx -j BAD-INPUT こんなやつばかり。
365 名前:login:Penguin mailto:sage [2007/07/19(木) 11:20:33 ID:82b1F1Ds] >>364 レスthx、安心した。 wgetとcronで勝手に更新するようにしてみたんだけど、行数の多さに不安になってたのよ。
366 名前:login:Penguin mailto:sage [2007/07/19(木) 21:57:13 ID:uF7HBJve] firestarterで受信全閉め、送信全閉めand一部開けにしてる俺は ダメな奴でしょうか? やっぱ、色々やらんとダメなんですか?
367 名前:login:Penguin mailto:sage [2007/07/19(木) 23:44:47 ID:C5Hsn39j] コマンド叩いてるけど俺も同じような感じだよ! 開けてるのはhttp,https,ftpだけだったり
368 名前:login:Penguin mailto:sage [2007/07/24(火) 17:15:59 ID:ShS11Qps] firestarterの日本語訳って少し変
369 名前:login:penguin mailto:sage [2007/07/24(火) 20:22:39 ID:XmHSl5AF] >366-367 素朴な疑問です。例えば、http(80),https(443),ftp(21)以外は、送受とも全閉め…の場合、 そのセッションで許可された際に1024以上の任意のポートが使用されたセッションもブロック されるんでしょうか?
370 名前:login:Penguin mailto:sage [2007/07/25(水) 08:42:24 ID:BPmm4tyb] >>369 > そのセッションで許可された際に1024以上の任意のポートが使用されたセッションもブロック 意味不明。 単にポートだけでOUTPUT側をフィルタした場合、当たり前だが1024以上も対象になる。 なのでiptablesのconntrackモジュールを併用してあげるといい。
371 名前:login:Penguin mailto:sage [2007/07/25(水) 10:19:28 ID:c/4qaAtX] iptablesでアプリケーション単位で防ぐ事って出来ますか? Firefox → TCP/IP 送信 80番 ok Thunderbird → TCP/IP 送信 25,110番 ok gFTP → TCP/IP 送信 20-21番 ok みたいな。
372 名前:login:penguin mailto:sage [2007/07/25(水) 13:55:46 ID:nEhKGnnq] アプリケーション使うPC上でなら可能。つーかそれをFWと言うのでは? 経路上のポートからはアプリケーション判定は無理。
373 名前:login:Penguin mailto:sage [2007/07/25(水) 14:13:02 ID:0k5ibQId] > アプリケーション使うPC上でなら可能。 おー。そうでしたか! 参考までに一例教えていただけませんか? 「ACCEPT tcp -- 192.168.1.1 anywhere tcp dpt:www」 これだと他のソフトでも全部80番を通してしまいますので、 「Firefox のみ TCP 80番 送信をok」にしたいです。
374 名前:login:penguin mailto:sage [2007/07/25(水) 18:13:16 ID:nEhKGnnq] >373 スマソ。専用のFWを使ってね…と言う意味でした。iptables では無理。
375 名前:login:Penguin mailto:sage [2007/07/25(水) 19:58:26 ID:/D3x9F85] SELinux とかでパケットに印を付けて その印を見て iptables や iproute で制御する事は可能らしい やった事ないので確かなことは言えないが
376 名前:373 mailto:sage [2007/07/25(水) 21:27:20 ID:OFMlwdEN] >>374 すまん、こっちも勘違いでした >>375 なるほど、SELinuxですか ちと調べてみます。ありがとん
377 名前:login:Penguin mailto:sage [2007/07/26(木) 07:48:38 ID:JylDrctM] --*id-owner系のオプションでなんとかならない?
378 名前:login:Penguin mailto:sage [2007/07/26(木) 09:49:19 ID:YatnvMaY] >>377 シンプルなやり方としてはそれもアリだね。 ただコマンド名でしかマッチしないので、 同じ名前で全く別のプログラムがあったりすると区別できなくなってしまう。 (これはWindowsのアプリケーションファイアウォールでも同じことが言えるが)
379 名前:たけぼん [2007/07/29(日) 05:56:27 ID:5YjE0kTR] 基本的な質問ですみません。 eth2がWAN側につながってます。 スプーフィングおよびソースルーティング対策として iptables -A INPUT(FORWARD) -i ppp0 -s 192.168.1.0/24 -j DROP iptables -A INPUT(FORWARD) -s 192.168.1.0/24 -i eth2 -j DROP iptables -A INPUT(FORWARD) -i ppp+ -s 192.168.1.0/24 -j DROP の3種類の書式が見つかりました。この3つは同じ結果になるのでしょうか? またどの書き方がベストというのはありますか? どなたか教えて下さい。
380 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 10:53:02 ID:BPAu8N6C] >>379 "ppp+" は "ppp" で始まるいずれかのデバイス ("ppp0", "ppp1" etc.) に適合する ことになるので、複数のppp接続が混在するような環境で便利だろう。 あと、コマンドの順序には意味がない。 従って、1行目と2行目はデバイス名が異なる ("ppp0", "eth2") だけで同じ意味。 また、ソースルーティング対策を行なうのであれば echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route で十分(ふつうのカーネルなら最初から0だが)だろう。 あと、IPアドレス偽装のうちプライベートアドレスまたはループバックアドレスを 発信元にしたパケットを破棄したいのなら、 iptables -A INPUT(FORWARD) -s 10.0.0.0/8 -d 0/0 -i ppp0 -j DROP iptables -A INPUT(FORWARD) -s 172.16.0.0/12 -d 0/0 -i ppp0 -j DROP iptables -A INPUT(FORWARD) -s 192.168.0.0/16 -d 0/0 -i ppp0 -j DROP iptables -A INPUT(FORWARD) -s 127.0.0.0/8 -d 0/0 -i ppp0 -j DROP とすればいい。
381 名前:たけぼん [2007/07/30(月) 13:42:25 ID:82MghHmK] 名無しさん、ありがとうございました。
382 名前:たけぼん [2007/07/30(月) 13:49:51 ID:82MghHmK] -dの後の0/0て何ですか?初めて見ました。
383 名前:login:Penguin mailto:sage [2007/07/30(月) 13:54:13 ID:wIebROn1] >>382 0.0.0.0/0 と同じ意味。要はIPv4アドレス全て。
384 名前:たけぼん [2007/07/30(月) 15:46:34 ID:82MghHmK] ありがとうございます。
385 名前:login:Penguin [2007/08/01(水) 13:45:52 ID:xTh2AlOO] l|l l|l ;y= ;y= ハ_ハ ニ、ニダァ? 三 ┗<丶`∀´>┛ (^<;`д´>^) 三 ┛┓ ) /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ (_ノ_ノ
386 名前:login:Penguin mailto:sage [2007/08/03(金) 19:33:17 ID:NtWU9CUf] stateマッチのINVALIDって、実際には何がINVALIDになるんかな。 ttp://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/explicitmatches.html#STATEMATCH ttp://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/userlandstates.html に大まかには書いてあるけど、詳細がわからん。 例えばTCPで、新規じゃないけどESTABLISHEDではなくINVALIDになるのは どういうときか、とか。もしかしてチェックサム不正だけ?
387 名前:login:Penguin mailto:sage [2007/08/03(金) 20:51:40 ID:wc/AKMVD] >>386 よくあるのがセッション乗っ取り目的の偽装TCPパケットだな。 SYNを送受信してないのにいきなりACKフラグだけ立ったTCPパケットが来たりすると INVALIDになる。
388 名前:386 mailto:sage [2007/08/03(金) 21:12:34 ID:NtWU9CUf] >>387 それってNEWにはならないん? てことは、TCP系スキャンを検出したいときは、 INVALIDを捨てるよりも先にスキャン検出をするべきってことか。 ↓こんな感じで: :INPUT DROP -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p tcp -m tcp --tcp-flags ! SYN,ACK,FIN,RST SYN -j tcp-scan -A INPUT -m state --state INVALID -j invalid ←tcp-scanよりも後ろに置く -A INPUT ... ... :tcp-scan - -A tcp-scan -p tcp -m tcp --tcp-flags SYN,ACK,FIN,RST ACK -j tcp-ack-scan ... -A tcp-scan -j DROP :tcp-ack-scan - ←ログ残して廃棄。invalidなども同様 -A tcp-ack-scan -m limit ... -j LOG ... -A tcp-ack-scan -j DROP
389 名前:login:Penguin mailto:sage [2007/08/03(金) 22:02:17 ID:wc/AKMVD] >>388 TCPヘッダの現在の状態を見て明らかに無効なパケットであれば NEWではなくてINVALIDだよ。
390 名前:login:Penguin [2007/08/31(金) 01:30:48 ID:/QsvseIU] >>389 どこからか明らかかってのはありますが、結構 INVALID じゃなくて NEW になる こともあるとか。なので、どこぞの HOWTO だか FAQ には、TCP の場合はちゃんと フラグも調べるようにと書いてあったような。 うろ覚えですまん。
391 名前:はまってます [2007/09/02(日) 18:24:13 ID:MBbpYlqy] ある環境のhttpsでEncrypted Allertが発生するという、 ややこしい問題にはまってます。お助け頂けないでしょうか? このレスには概要を書き、次レスにはiptables設定を載せようと思ってます。 最近プロバイダを変更し、dhcpのみの環境からpppoe+dhcpに変わりました。 その変更によって問題が生じるようになりました。 [環境] ルーターが2台あります。 ルーターAはLinuxでインターネットに接していて、 WANインターフェースはpppoe+dhcpです。 LANインターフェースは192.168.1.0/24の中の1固定アドレスです。 192.168.1.1/24ネットワークにIPマスカレードしてます。 ルーターBはプラネックスの安ルーターで WANインターフェースは192.168.1.0/24の中の1固定アドレスです。 LANインターフェースは192.168.0.0/24の中の1固定アドレスです。 192.168.1.0/24ネットワークににIPマスカレードしてます。 このネットワークは二重のIPマスカレードを介してインターネットに 属してます。 [障害内容] 殆ど何も問題はないのですが、唯一、一部のhttpsで問題が発生します。 Wireshark(旧Etherreal)で見ると、シーケンスの途中でEncrypted Alert が発生していることがわかるだけで、それ以上の詳細はわかりません。 yahooのhttpsでは問題ありませんが、goo、Gyaoではタイムアウトになります。 ルーターAがpppoeになる前は問題ありませんでした。 また、現在でもルーターAを市販のpppoeルーターに取り換えると、 ルーターBのネットワークでもgoo,Gyaoとも問題ありません。 ルーターAがLinuxな理由はVPNの為です。
392 名前:はまってます [2007/09/02(日) 18:31:00 ID:MBbpYlqy] ルーターAのiptabls設定です。 #!/bin/sh IPTABLES=/sbin/iptables ${IPTABLES} -P INPUT DROP ${IPTABLES} -P OUTPUT ACCEPT ${IPTABLES} -P FORWARD DROP ${IPTABLES} -F FORWARD ${IPTABLES} -F INPUT ${IPTABLES} -F OUTPUT # Allow packets in local ${IPTABLES} -A INPUT -i lo -j ACCEPT ${IPTABLES} -A INPUT -s 127.0.0.0/8 -i '!' lo -j DROP # Pass SSH, etc ${IPTABLES} -A INPUT -p tcp -i ppp0 -m multiport --dports 22 -j ACCEPT # Make own rule set chain ${IPTABLES} -F commonrule ${IPTABLES} -X commonrule ${IPTABLES} -N commonrule # Bypass to commonrule ${IPTABLES} -A INPUT -j commonrule ${IPTABLES} -A FORWARD -j commonrule # Allow packets within LAN ${IPTABLES} -A commonrule -i br0 -j ACCEPT # Established packets ${IPTABLES} -A commonrule -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT ${IPTABLES} -A commonrule -p udp -m state --state ESTABLISHED,RELATED -j ACCEPT # Allow ICMP ${IPTABLES} -A commonrule -p icmp -j ACCEPT # Do masqurading ${IPTABLES} -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
393 名前:login:Penguin mailto:sage [2007/09/02(日) 18:43:25 ID:xFZ3sRLE] >>391 エラーメッセージは略さず書け。 あとpppoeってことは例によってMTU問題(特にpath MTU discovery)ではないのか? 試してみれ。 # iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
394 名前:login:Penguin mailto:sage [2007/09/02(日) 18:52:17 ID:noS94zlb] >>391 iptables -A FORWARD -p tcp--tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
395 名前:login:Penguin mailto:sage [2007/09/02(日) 18:54:09 ID:noS94zlb] げ、393氏かぶったすまそ。よくみるともれの間違ってるな・・・。 # iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 多分これでいけると思うけど。
396 名前:はまってます [2007/09/02(日) 21:44:39 ID:MBbpYlqy] >>393-395 早レスありがとうございます。 でもチェーンフラッシュの直後に追加して試してみましたがやっぱり駄目でした。 私の環境の場合、ルータAのネットワーク内からのアクセスは大丈夫で ルータBのネットワークからだと駄目なので、書く場所とか書き方に少し 工夫が必要なのでしょうか?教えてクンですみません。
397 名前:login:Penguin mailto:sage [2007/09/02(日) 22:08:00 ID:xFZ3sRLE] >>396 今のルールセットじゃ無理だろう。 FORWARDチェインの冒頭に入れてみれ。
398 名前:login:Penguin [2007/09/02(日) 23:55:12 ID:4sOAdWya] >>397 今試せない状況なので追加質問だけさせて下さい。 繰り返しの説明になりますが、 >>392 の設定でもルータAのネットワークからのアクセスは大丈夫なんです。 さらにもう一回マスカレードしているルータBのネットワークからのアクセス時 だけ駄目なんです。この場合も-o ppp0へのパケットの調整が有効でしょうか?
399 名前:login:Penguin mailto:sage [2007/09/03(月) 08:23:53 ID:kMimNQBM] >>398 まずはやってみれ。