1 名前:1 mailto:sage [03/01/07 18:44] IPFilterと、PFやIPNAT関連のスレッドです。 関連URLは>>2 あたりにあるかもよん
2 名前:1 mailto:sage [03/01/07 18:45] ○公式 ttp://coombs.anu.edu.au/~avalon/ipfil.html ○HowTo、リンクなど www.obfuscation.org/ipf/
3 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/07 18:48] 何だよ「かもよん」って
4 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/07 18:51] 無意味な巨大AAよりかはいくらかマシか…
5 名前: mailto:sage [03/01/07 18:52] SunScreenの話もここでよいのかい?
6 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/07 22:44] まぁ Windows specified な話しか無い セキュリティ板 にこんなスレ立てても無駄だよねぇ
7 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/07 22:46] しかし、立てた当初くらいはネタ振って盛り上げたらどうだ。>>1
8 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/07 22:48] specific?
9 名前: mailto:sage [03/01/08 00:41] ウインドウサイズに限定した話ってなんだ? オーバーフローさせてなんかウマイことやんの?
10 名前:名無しさん@お腹いっぱい。 [03/01/08 02:44] ちょっと貼っとくか。 www.wakhok.ac.jp/~kanayama/summer/02/site/node110.html
11 名前:名無しさん@お腹いっぱい。 [03/01/08 11:30] 有名? ttp://www.tac.tsukuba.ac.jp/~hiromi/ipf4.html
12 名前:keep flags mailto:sage [03/01/08 20:48] エラーの発生原因がわからず一日中ルールの書換えとテストを繰り返していた事がありました。
13 名前:名無しさん@お腹いっぱい。 [03/01/08 21:21] FreeBSDのipfwと比べるとどっちが通ですか?
14 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/08 21:31] natやるならipfilterの方が性能良い。 但し、俺んちではipfilterはストリーミング切れる。
15 名前:名無しさん@お腹いっぱい。 [03/01/08 23:02] やっぱ、Linuxのnetfilterの方が良いよね。 でもFreeBSDでipfilterだと、Cから直接叩けるのは魅力だよね。
16 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 00:19] >>15 どこがどう良いとか解説してくれないか?
17 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 00:48] keep frags
18 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 00:52] >>13 IPFWより細かく制御できる と>>11 に書いてあった。
19 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 00:58] >>14 pppoe(フレッツ)に繋ぐNATBoxにIPF+IPNAT(NetBSD1.6)を使っているんだけれど、うちもストリーミングが切れる時がある。 でもYBBだった時はこういう事は起こらなかったしIPNATでmmsclampを書いても駄目だったので、別に原因があるのかも???
20 名前:これなかなかいいっすね [03/01/09 16:42] return-icmp-as-dest(port-unr)
21 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 21:50] >>20 これってHost Unreachableを帰すって事?
22 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/09 23:29] >>13 通はアンナンバードだからnat不要、そして帯域制限しるからipfw。
23 名前:名無しさん@お腹いっぱい。 [03/01/09 23:45] >>16 Linux/Netfilterだと簡単に出来ることの例 (1)月曜から金曜の8時から18時に到着したパケットだけを許可 # iptables -A INPUT -m time --timestart 8:00 \ --timestop 18:00 \ --days Mon,Tue,Wed,Thu,Fri -j ACCEPT (2)あるIPアドレスからの同時並行で確立するHTTPコネクション数を 4つに限定 # iptables -A INPUT -p tcp --syn --dport http \ -m iplimit --iplimit-above 4 -j REJECT (3)様々な条件(ほんの少しの例) --uid-owner userid パケットを生成したプロセスの実行ユーザ id (数値)にマッチ --uid-owner groupid パケットを生成したプロセスの実行グループ id (数値) にマッチ --pid-owner processid パケットを生成したプロセスのプロセス id にマッチ --sid-owner sessionid パケットを生成したプロセスのセッショングループにマッチ --limit n 単位時間あたりに許される平均マッチ回数の最大値を指定。 --limit-burst n limit が作動し始める手前の最大バースト値(許容できる突発 的な増大係数で、平均レートの倍数)を指定
24 名前:名無しさん@お腹いっぱい。 [03/01/10 10:04] >>23 それくらい、BSDユーザはアプリで組むものさ。
25 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/10 10:11] >>24 > それくらい、BSDユーザはアプリで組むものさ。 必 死 だ な
26 名前:名無しさん@Emacs mailto:sage [03/01/10 11:10] >>24 1 は cron でやったほうがいいと思うけど,その他はちょっと難しげ. netnice ではやれそうな気がする.使ったことないけれど. www.asahikawa.wide.ad.jp/netnice/
27 名前:名無しさん@カラアゲうまうま mailto:sage [03/01/10 11:29] uid/gidによる制御はipfwでもできる。ipfilterはできなかったと思うけど。
28 名前:名無しさん@お腹いっぱい。 [03/01/10 12:16] PPPoEでNATにしてる人たちはMMSブラックホール問題はどう対処しているの? やっぱり全マシンのMTU調整?
29 名前:名無しさん@お腹いっぱい。 [03/01/10 12:26] pfで十分
30 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/10 15:27] >>28 ipnat.confにmmsclampを書く。それでも完璧じゃないけど… 最後の手段で経路上にあるルータの管理者にRFC2923読んで下さい。 とか言ってルータのicmpの設定を変えてもらうしか方法はないんじゃないかと…
31 名前:30 mailto:sage [03/01/10 15:35] まちがいますた mmsclamp > mssclamp
32 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/10 19:48] ipfstat -t もえ
33 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/10 22:45] >>23 サンクス 1)はできないな。 2)は実際にやったこと無いけど、ipfw2で出来る気がする。
34 名前:3-5分おき mailto:sage [03/01/11 01:24] >>21 それは block return-icmp-as-dest(host-unr) だなや
35 名前:3-5分おき mailto:sage [03/01/11 01:46] blockは余計だったなや
36 名前:名無しさん@お腹いっぱい。 [03/01/11 11:32] Cから直接叩こうと思っています。 FreeBSD 4.7-RELEASEにて、「man 4 ipf」をすると、 #include <netinet/ip_compat.h> #include <netinet/ip_fil.h> などと出て来るのに、これらヘッダファイルがシステム に入っていません。 別途インストールの必要ありだと思うのですが、 どのパッケージになるのでしょう。
37 名前:名無しさん@お腹いっぱい。 [03/01/11 11:35] >>36 標準で入ってなきゃマズいって… cvsupで4.7-RELEASE-p3に上げてmake installworldするよろし
38 名前:名無しさん@お腹いっぱい。 [03/01/11 11:43] >>37 早速のアドバイスありがとうございます。 IPfilter取って来て、パスを無理矢理通したのですが、 何か違うと思い投稿したところでした。 cvsupってはじめてやります。楽しみ〜。
39 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/11 16:27] >>23 (1)って、カーネル内で曜日を計算してやってるの?それはやりすぎな気がするよ。(2), (3) はおもろいね。でも ipfilter って ifdef 多すぎていじる気になれない :-(
40 名前:名無しさん@お腹いっぱい。 [03/01/11 17:01] 昼からずっとcvsupつながらないのですが、 私のマシンがNATの裏にあるのがいけない?? cvsup2 でも同じでした。 Connecting to cvsup4.jp.freebsd.org Connected to cvsup4.jp.freebsd.org Server software version: SNAP_16_1f Negotiating file attribute support Exchanging collection information Establishing passive-mode data connection Cannot connect to data port: Connection refused Will retry at 18:16:05
41 名前:名無しさん@お腹いっぱい。 [03/01/11 17:04] >>39 Linux/Netfilterには、パケット内のデータマッチ なんてものもあります。でもIDSの代わりには使えません。 パケット毎にチェックするから、フラグメントして たらすり抜けちゃう。 好き勝手に開発するのがLinuxのスタイルだから、 何でも出て来ちゃうんだけどね。
42 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/11 17:07] NAT 2段かましてるけど、ついさっき、cvsup2 で更新できたよん。 port 5999 (だっけ?)は空いてる?
43 名前:名無しさん@お腹いっぱい。 [03/01/11 17:13] >>42 中から外のポートは全部空けていますが、 外から中は、帰りのパケットだけです(ステートフルFW)。 もしかしてFTPみたいにややこしい話になるのですか? とりあえずtcpdumpしてみてみます。
44 名前:43 [03/01/11 20:00] >>42 いま cvsup2で更新中です :))) さっきなんで出来なかったかわかりません。
45 名前:名無しさん@お腹いっぱい。 [03/01/12 07:48] ずっと疑問に思ってるんだが、 ipfilterのルールって、なんでlast matchなの??(quickルールがあるけど) アルゴリズム的にも、パケット毎に全部のルールを 検査しなくちゃいけなくて遅いとおもうんだけど。 # 分かりやすい分かりにくいはともかくとして。
46 名前:14 mailto:sage [03/01/12 11:53] home.earthlink.net/~jaymzh666/ipf/IPFfreebsd.html#17 みて net.inet.tcp.recvspace: 57344 -> 32768 にしてみた。ガンダム(試行回数一回)切れなかった。
47 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/12 22:26] >>46 サンクス。 ちなみにmssはいくつにしてる? 1414? 1412?
48 名前:名無しさん@お腹いっぱい。 [03/01/13 11:01] 最近とてもうざく感じるようになってきた韓国や中国から届く大量のパケットを遮断したいんですが、こんな感じでOKですか? xx0 <= wan側nic block in quick on xx0 proto tcp from aaa.aaa.aaa.aaa/aa to any flags S/S block in quick on xx0 proto tcp from bbb.bbb.bbb.bbb/bb to any flags S/S <略> block in on xx0 proto udp from any to any pass in on xx0 proto udp from any to any port=*** #(udpポートは必要なとこだけ記述)
49 名前:14 mailto:sage [03/01/13 11:59] スマソ、再度試したらやっぱ切れた。
50 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/13 14:43] >>48 ログがウザイなら log level local1.debug とかすれば いいんじゃないかな。ログなしはそれはそれで恐いような。 incoming HTTP 等を蹴りたいんなら flags S/S は要らない のではないかしら。
51 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/13 15:39] >>50 特定のポートはログも取るようなルールにしているのですが、それが特に目的そのものに関係する事では無いのでサンプルには書きませんでした。 又そもそもうざいと感じるのはログに対してではなくて、変なワームが発するパケットの送信元が9割型この2つからなので、それが原因で感じる心理的な疲労感不安感です。 >incoming HTTP 等を蹴りたいんなら flags S/S は要らない >のではないかしら。 でもflagつけないとACKまで拒否してしまうので向こうのホームページが見れなかったりするんです。 ただflag S/Sじゃなくてflag Sでもいいかもしれませんが。
52 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/14 02:45] >>51 もしかしてステートフルインスペクション機能を使ってないとか? pass out quick proto tcp from any to any flags S/SA keep state keep frags
53 名前:山崎渉 mailto:(^^)sage [03/01/15 12:53] (^^)
54 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/15 23:36] >>52 そういう手があったか。 60秒ルールというのがちょっと不安な感じもします(変更可能?)が試してみます… 試してみたところ、どうも既存のルールにつけたしでやる分には不都合が あるみたいで新しくルールを作り直さなくてはいけなさそうです。
55 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/16 21:51] FreeBSD 4-STABLEで、 ipnatとports/net/linuxigdでUPnPしようとしているのですが、 upnpdが落ちてしまったり、WinXPが落ちてしまったりで、 不要なリダイレクトのルールが残ってしまうことがあります。 お手軽でうまい方法があればいいのですが、 何か対策をされている方はいらっしゃいませんか?
56 名前:名無しさん@お腹いっぱい。 [03/01/19 22:09] S/SAってS/ASって書いちゃ駄目なんですか?
57 名前:age mailto:age [03/01/26 17:57] age
58 名前:名無しさん@お腹いっぱい。 [03/01/29 06:33] 1 #! /sbin/ipf -Fa -Z -f 1 #pass in quick all 1 #pass out quick all 1 block in log quick from any to any with ipopts 1 block in log quick from any to any with short 1 # 1 # rules on lo0 1 # 1 pass in quick on lo0 all 1 pass out quick on lo0 all 1 # 1 # rules for icmp packets 1 # 1 block in on fxp0 proto icmp all 1 block out on fxp0 proto icmp all 1 pass in on fxp0 proto icmp all 1 pass out on fxp0 proto icmp all 1 # 1 # rules for tcp packets 1 # 1 block in log on fxp0 proto tcp all 1 block out log on fxp0 proto tcp all 1 pass in quick on fxp0 proto tcp all flags A/A 1 #lpr 1 pass in quick on fxp0 proto tcp from any to any port = 515 flags S/SA
59 名前:名無しさん@お腹いっぱい。 [03/01/29 06:33] 1 #afpd 1 pass in quick on fxp0 proto tcp from any to any port = 548 flags S/SA 1 #windows network 1 pass in quick on fxp0 proto tcp from any to any port 136 >< 140 flags S/SA 1 pass in quick on fxp0 proto tcp from any port 136 >< 140 to any flags S/SA 1 # 1 # rules for udp packets 1 # 1 block in log on fxp0 proto udp all 1 block out log on fxp0 proto udp all 1 #DNS 1 pass in quick on fxp0 proto udp from any port = 53 to any 1 pass out quick on fxp0 proto udp from any to any port = 53 1 #ntp 1 pass in quick on fxp0 proto udp from any port = 123 to any 1 pass out quick on fxp0 proto udp from any to any port = 123 1 #windows network 1 pass in quick on fxp0 proto udp from any to any port 136 >< 140 1 pass in quick on fxp0 proto udp from any port 136 >< 140 to any 1 pass out quick on fxp0 proto udp from any to any port 136 >< 140 1 pass out quick on fxp0 proto udp from any port 136 >< 140 to any
60 名前:名無しさん@お腹いっぱい。 [03/01/29 06:36] たたき台 ざっと書いてみた 誰か間違いを修正してくれるとこのスレ的にネタ提供もできるし 漏れのpcも硬くなって一石二丁 とりあえず自分突っ込みで137-139を開いているのは根本的な誤り
61 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
62 名前:60 mailto:sage [03/01/29 06:39] >1 block in on fxp0 proto icmp all >1 block out on fxp0 proto icmp all >1 pass in on fxp0 proto icmp all >1 pass out on fxp0 proto icmp all > ? 行頭の1は無視
63 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
64 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/29 22:03] > block in on fxp0 proto icmp all > block out on fxp0 proto icmp all > pass in on fxp0 proto icmp all > pass out on fxp0 proto icmp all blockが無意味
65 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/29 23:25] FreeBSD をルータ(ipnat)にして LAN で Winny やろうとしてるんですが うまくいきません。ご指南お願いします… ネット側(fxp0)は PPPoE(フレッツ) 、LAN側(fxp1 192.168.0.1)に Win マシン(192.168.0.2)をつないでます。 ipf.rules は pass in quick proto tcp from any to 192.168.0.2 port = 7743 pass in quick proto tcp from any to 192.168.0.2 port = 7744 pass in quick all pass out quick all ipnat は map pppoe0 192.168.0.1/24 -> 0/32 proxy port ftp ftp/tcp map pppoe0 192.168.0.1/24 -> 0/32 portmap tcp/udp 40000:60000 map pppoe0 192.168.0.1/24 -> 0/32 ですが、これでもポート警告が出ちゃう……(;´Д`)
66 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/29 23:52] nyユーザはフィルターなんぞするな。インターネット直結フルオープンで逝け。
67 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/30 05:33] なにを思ったか自家LANのgatewayをSolaris8(x86)にしてみた。 とうぜんNATにしたわけだが、NATができるソフトウェアが"SunScreen"と"ipf"しかない。 一見手軽そうにみえたipfを入れてみたがかなりてこずった。 LAN ->外 にftpがとおらない。 ftp-proxyとかいろいろ試してみたが、 主力であるDebianクライアントからapt-getで外につなぐと なんとSolarisNAT箱がハングアップする。 ipfのバージョンを安定してそうな古いのに落として、 ipf.confは"なにもしなくていいですよ"というのにした。 その上でwwwとftpのみLAN内の鯖マシンにforwardする、という設定を ipnat.confに書いてようやく安定した。 外へのftpはpassiveでしかできないけど、 どうしても必要な場合は sshでルータまでトンネルを掘るということで妥協した。
68 名前:67 mailto:sage [03/01/30 05:43] # Solaris(x86)ルータの設定 # ipfstat -i pass in quick on rf0 from any to any pass in quick on ni0 from any to any pass in quick on lo0 from any to any # ipnat -l map ni0 192.168.0.0/24 -> 0.0.0.0/32 portmap tcp/udp 40000:60000 map ni0 192.168.0.0/24 -> 0.0.0.0/32 rdr ni0 0.0.0.0/0 port 80 -> 192.168.0.253 port 80 tcp //LAN内web鯖用 rdr ni0 0.0.0.0/0 port 20 -> 192.168.0.253 port 20 tcp //以下LAN内ftp鯖用 rdr ni0 0.0.0.0/0 port 21 -> 192.168.0.253 port 21 tcp rdr ni0 0.0.0.0/0 port 30011 -> 192.168.0.253 port 30011 tcp rdr ni0 0.0.0.0/0 port 30012 -> 192.168.0.253 port 30012 tcp rdr ni0 0.0.0.0/0 port 30013 -> 192.168.0.253 port 30013 tcp //LAN内ftp鯖用passive ports (30011-30080) ... rdr ni0 0.0.0.0/0 port 30080 -> 192.168.0.253 port 30080 tcp # ndd /dev/tcp tcp_smallest_anon_port tcp_largest_anon_port 32768 65535 # Debianの設定 $ cat /etc/apt/apt.conf ftp { Passive "true"; };
69 名前:67 mailto:sage [03/01/30 05:46] # ipfのバージョン $ pkginfo -l ipf PKGINST: ipf NAME: IP Filter CATEGORY: system ARCH: i386(32-bit) VERSION: 3.3.22 VENDOR: Darren Reed DESC: This package contains tools for building a firewall INSTDATE: Jan 29 2003 13:07 EMAIL: darrenr@pobox.com STATUS: completely installed FILES: 75 installed pathnames 11 shared pathnames 1 linked files 21 directories 10 executables 1214 blocks used (approx) 外からLAN内ftp鯖にちゃんとつながるのか、ちょっと不安。 どなたかよかったらテストよろしこ ftp://lev.ii2.cc/
70 名前:名無しさん@お腹いっぱい。 [03/01/31 20:20] >>67 初心者なんですけど、教えていただけますか? Solaris8(x86)でipfilterをコンパイルするとエラーがでます。 3.4.31です。 バージョンはいくつのものを使ってますか?
71 名前:名無しさん@お腹いっぱい。 mailto:sage [03/01/31 22:22] はぁ。 configure出現以前フリーソフトはコンパイルエラーが出て当然だったんだが。
72 名前:67 mailto:sage [03/01/31 22:29] >>70 わたしもトーシロですが、 3.4.31/3.3.22共にSFWgcc # pkginfo -l SFWgcc | grep VERSION VERSION: 2.95.3,REV=2001.11.28.08.39 を使ってコンパイルしました。 SFWncurのncursesのヘッダがSolaris標準のcursesのヘッダとconflictしているようだったので コンパイルするときだけ pkgrm SFWncur してみたところうまくいきました。 で、このあいだの続報ですが NICを蟹+蟹純正ドライバ(rtls)に交換/調整したところ、ルールを設定してもハングアップしなくなりました。 どうやら原因はipfではなく、NIC(+非純正ドライバ)のほうだったようです。 Solarisが死ぬ直前に出していたメッセージ↓ [ID 503123 kern.warning] WARNING: rf0: transmit timeout,cr: d<RE,TE,BUFE>, isr: 0, msr: 8<SPEED_10> [ID 252603 kern.notice] rf0: tx-list: head:-19 tail:-15
73 名前:67 mailto:sage [03/01/31 22:32] 現在以下のようなルールで快調に動いています。 pass in quick on lo0 from any to any pass in quick on rtls0 from any to any block in log on rtls1 from any to any block in log quick on rtls1 from 127.0.0.0/8 to any block in log quick on rtls1 from 192.168.0.0/24 to any block in log quick on rtls1 from any to any with opt lsrr block in log quick on rtls1 from any to any with opt ssrr block in log quick on rtls1 proto tcp from any to any with short pass in quick on rtls1 proto tcp from any to any port = 20 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port = 21 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port = 22 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port = 25 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port = 80 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port = 113 flags S/SA keep state pass in quick on rtls1 proto tcp from any to any port 30010 >< 30081 flags S/SA keep state pass in quick proto icmp from any to any icmp-type echorep pass in quick proto icmp from any to any icmp-type unreach pass in quick proto icmp from any to any icmp-type squench pass in quick proto icmp from any to any icmp-type echo pass in quick proto icmp from any to any icmp-type timex またipnat.confのてっぺんに↓を追加するとLAN内部から普通のモードでftpできるようになりました。 map rtls1 192.168.0.0/24 -> 0/32 proxy port ftp ftp/tcp コピペばっかでごめんなさいでした。退散。
74 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/01 02:36] keep state するんなら大抵 port 番号を見てると思うけど、 その場合は keep frags も足した方がいいと思うよ。
75 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/01 22:59] >>74 ご指導ありがとうございます。 今回ipfの日本語ドキュメントをネットでいろいろ捜したのですが、 tarballにも含まれている"IPF.KANJI"以外には 断片的な設定例が発見できただけでした。 きっちり解説してあるものとなると、やはり coombs.anu.edu.au/~avalon/examples.html www.unixcircle.com/ipf/ipf-howto.html あたりの英語を読まないといけないようですが、 そもそも"IPパケット"の構造がわかっていないと理解は難しいようで、 私にはよくわかりませんでした。 [flags] は RFC793とかに書いてある"tcpヘッダ"のURG ACK PSH RST SYN FIN などを頭文字で名指しで指定できる(らしい?) [S] だけ指定すると S/AUPRFS を指定したことになる(らしい?) [S/SA] とはいわゆる"established"を指す(らしい?)が"UPRFS"は見ない(らしい?) [keep state] は入ってきたパケットの[最初の部分]が[怪しくない]ものと判定されれば、"state table"に登録して 以降はチェックしない(らしい?) [keep frags] は断片化したパケットが入って来ると、残りの部分を予測して、その部分は通す(らしい?) ...ようするに"えらく難しい"ということは理解できた気がします。
76 名前:67 mailto:sage [03/02/01 23:12] 以上を考慮してルールは以下のようになりました。 pass in quick on rtls0 from any to any pass out quick on rtls0 from any to any pass out quick on rtls1 proto icmp from any to any keep state pass out quick on rtls1 proto udp from any to any keep state pass out quick on rtls1 proto tcp from any to any flags S keep state keep frags block in log on rtls1 from any to any block in log quick on rtls1 from 127.0.0.0/8 to any block in log quick on rtls1 from 192.168.0.0/24 to any block in log quick on rtls1 from any to any with opt lsrr block in log quick on rtls1 from any to any with opt ssrr block in log quick on rtls1 proto tcp from any to any with short pass in quick on rtls1 proto tcp from any to any port = 20 flags S keep state keep frags pass in quick on rtls1 proto tcp from any to any port = 21 flags S keep state keep frags pass in quick on rtls1 proto tcp from any to any port = 22 flags S keep state keep frags pass in quick on rtls1 proto tcp from any to any port = 25 flags S keep state keep frags pass in quick on rtls1 proto tcp from any to any port = 80 flags S keep state keep fragsいてます。 pass in quick on rtls1 proto tcp from any to any port = 113 flags S keep state keep frags pass in quick on rtls1 proto tcp from any to any port 30010 >< 30081 flags S keep state keep frags pass in quick proto icmp from any to any icmp-type echorep pass in quick proto icmp from any to any icmp-type unreach pass in quick proto icmp from any to any icmp-type squench pass in quick proto icmp from any to any icmp-type echo pass in quick proto icmp from any to any icmp-type timex pass in quick on lo0 from any to any pass out quick on lo0 from any to any ...一見快調に動いてるようですが、 あからさまに蛸な部分がありましたらまたご指導お願いします。ではこのへんで 退散。
77 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/01 23:29] 最後にblockルールでログ取る。
78 名前:70 mailto:sage [03/02/01 23:34] >>67 まだエラーが出ます。 ・SFWgccのVERSION: 2.95.3,にあげました。(REV=2001.11.28.08.39ではない) ・pkgrm SFWncur をしました。 ソースに手を入れる必要ありますかね? ちなみにSFWncurのソースだというのはどこを見れば分かるんでしょうか?
79 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/02 13:06] >>76 head, group 使ってみ block in log on rtls1 from any to any head 100 block in log quick from 127.0.0.0/8 to any group 100 .... block in log proto tcp from any to any head 110 group 100 pass in quick proto tcp from any to any port = 22 flags S keep state keep frags group 110 .... とかな >>75 みたいにまとめてるのを見ると、成長がみられて微笑ましくて、(・∀・)イイ!!
80 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/03 13:26] S/SAってS/ASと書いてはだめなのですか? Syn-> <-AckSyn Ack-> というように勉強していたのでSAと書くとどうも違和感が.... 実際試して見たところ特に問題は無く動作しているようなのですが、もしかしたら ルールにマッチしていると思ったつもりで実はマッチしていないのかもしれません。
81 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/03 13:34] 224件 www.google.com/search?q=acksyn 4590件 www.google.com/search?q=synack
82 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/03 14:07] >>80 順番は全く問題ない。 === common.c === char flagset[] = "FSRPAUEC"; u_char flags[] = { TH_FIN, TH_SYN, TH_RST, TH_PUSH, TH_ACK, TH_URG, TH_ECN, TH_CWR }; 〜〜 u_char tcp_flags(flgs, mask, linenum) 〜〜 if (!(t = index(flagset, *s))) { fprintf(stderr, "%d: unknown flag (%c)\n", linenum, *s); return 0; } *fp |= flags[t - flagset];
83 名前:名無しさん@お腹いっぱい。 mailto:sagesage [03/02/05 00:38] 最近の雑誌にはACK+SYNと書いてあった
84 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/14 13:19] 保守
85 名前:名無しさん@お腹いっぱい。 [03/02/17 03:58] OpenBSDから見事に外されたIPFカワイソウ
86 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/17 12:15] >>85 だってipfのライセンスてイヤーンなんだもん
87 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/17 18:39] OpenBSD の pf って ipf 互換?
88 名前:pfは使った事はないけど mailto:sage [03/02/19 11:46] config fileの記法が似ているって聞いたけど、本当?
89 名前:名無しさん@お腹いっぱい。 mailto:sage [03/02/19 12:17] 似てる。pass in quick on tun0 proto tcp from any to any port ssh こんなふうに、ipf のルールがそのまま pf でも書けることもある。 でも pf には ipf の head、group は無いし、動作も微妙に違うので上位互換というわけではない。 (groupキーワードはパケットを出したソケットのownerの条件として使われる)
90 名前:88 mailto:sage [03/02/19 13:28] >89 サンクスコ
91 名前:名無しさん@お腹いっぱい。 [03/03/25 00:04] IPにフィルタをかけるとそれはパケットになってしまうのです。
92 名前:名無しさん@お腹いっぱい。 [03/03/25 02:37] >>87 OpenBSD使ってるんだったら、pfで良いじゃん。ipfなんて関係ないだろ。
93 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/25 03:10] OpenBSD 用の ipf も、ipfilter.org の方で、まだ保守されてるん じゃなかったっけ? いやまあ、普通に使うんなら pf 使う方が 楽だとは思うけどさ。 あと、pf の NAT って、今では ipf の NAT 機能全て備えているん だっけ? なんか、できない機能がいろいろあったような覚えが あるんだけど。
94 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/25 03:17] >>93 あれはTheo君がipfにぶちきれて作ったもんだからねぇ 多少は機能が落ちるのかも
95 名前:名無しさん@お腹いっぱい。 [03/03/25 03:29] >あと、pf の NAT って、今では ipf の NAT 機能全て備えているん >だっけ? なんか、できない機能がいろいろあったような覚えが >あるんだけど。 IPv6があるじゃないか。
96 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/25 03:31] pfはipfより見易くて綺麗と思う。 つかipfてソース見りゃわかるが結構ぐちゃぐちゃな気が。
97 名前:名無しさん@お腹いっぱい。 [03/03/25 15:06] >>65 遅レスだけど... 詳しくないけどP2PのWinnyでは、正確にポートマッピング してやらないと正常動作しないのではないかと思う。 だから、ipnatにrdrで転送ポートをローカルのIPアドレス側に 流してやる。 例えば、 rdr xxx.xxx.xxx.xxx/32 port yyyyy -> rdr 192.168.0.1 port zzzzz tcp とか。 やってみたら?ってもうやってるか...
98 名前:名無しさん@お腹いっぱい。 [03/03/25 15:07] >>97 間違え >rdr xxx.xxx.xxx.xxx/32 port yyyyy -> rdr 192.168.0.1 port zzzzz tcp rdr xxx.xxx.xxx.xxx/32 port yyyyy -> 192.168.0.1 port zzzzz tcp
99 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/26 03:17] rdr を書く位置って 特に気にする必要はあるんですか? map の直後でいいんですよね…
100 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/27 19:03] >>99 普通はmapの後だと思うけど、見栄えだけの問題かな。 位置はnatの場合特に問題なし。
101 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/29 19:36] ポート接続を他ホストに丸投げってできませんか? 一つ一つ rdr 書かないと無理?
102 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/30 12:37] >>101 言っている意味がわからないのだが...
103 名前:名無しさん@Emacs mailto:sage [03/03/30 12:44] >>101 rdr if x.x.x.x/32 port 0-65535 -> y.y.y.y port 0 tcp/udp みたいなこと? いや、これで動くかは知らんが…。
104 名前:101 mailto:sage [03/03/30 23:25] rdr fx0 0.0.0.0/0 port 1025 -> 192.168.0.2 port 1025 tcp rdr fx0 0.0.0.0/0 port 1026 -> 192.168.0.2 port 1026 tcp rdr fx0 0.0.0.0/0 port 1027 -> 192.168.0.2 port 1027 tcp (中略) rdr fx0 0.0.0.0/0 port 20000 -> 192.168.0.2 port 20000 tcp をポート1つに1行ではなく、略して書けないのかということです。
105 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/31 03:52] 俺は詳しくないですが、ipf-howto(ググってみれ)を見たけど、 そういう書き方は載ってませんでした。 丸投げはセキュリティ上よくないような。最小限にした方がいいと 思う。つーか、IPFilter入れている意味なくない?
106 名前:名無しさん@お腹いっぱい。 mailto:sage 3日遅い [03/04/04 07:35] www.ietf.org/rfc/rfc3514.txt にある Security Flag が立っているパケットを落とすにはどうしたらよいですか?
107 名前:名無しさん@お腹いっぱい。 mailto:sage [03/04/04 09:45] >>106 www.freebsd.org/cgi/cvsweb.cgi/src/sys/netinet/ip_output.c?rev=1.181&content-type=text/x-cvsweb-markup
108 名前:名無しさん@お腹いっぱい。 mailto:sage [03/04/09 14:10] >>101 オンラインゲームでホストを立てようとした時、どうしてもrdr記述する必要があったので同じように一行一行記述しますた。 ゲームのマニュアルには「2300-2400を空ける」とか書いてあってipnat.confに2300-2400まで、ポートづつ一行一行100行も追加記述.... 見栄え悪いし簡略化出来ないっすかねぇ.... オンラインゲームでホスト役する人はipf+ipnat使うなって事かな....
109 名前:名無しさん@カラアゲうまうま mailto:sage [03/04/09 16:26] そーゆーのは手で直接書くのではなく、 スクリプトで自動生成してやるとよろしいかと。 ipfilter は使ったことないけど、こんな感じでいいのかな? % cat hoge.m4 divert(-1) define(`forloop', `pushdef(`$1', `$2')_forloop(`$1', `$2', `$3', `$4')popdef(`$1')') define(`_forloop', `$4`'ifelse($1, `$3', , `define(`$1', incr($1))_forloop(`$1', `$2', `$3', `$4')')') divert`'dnl forloop(`i', 2300, 2400, `rdr fx0 0.0.0.0/0 port i -> 192.168.0.2 port i tcp ')dnl % m4 hoge.m4 rdr fx0 0.0.0.0/0 port 2300 -> 192.168.0.2 port 2300 tcp rdr fx0 0.0.0.0/0 port 2301 -> 192.168.0.2 port 2301 tcp rdr fx0 0.0.0.0/0 port 2302 -> 192.168.0.2 port 2302 tcp ... forloop マクロについては GNU m4 の info に載ってるです。
110 名前:名無しさん@Emacs mailto:sage [03/04/09 21:29] そういうのは rdr fx0 0.0.0.0/0 port 2300-2400 -> 192.168.0.2 port 2300 tcp ってするんだってさ
111 名前:名無しさん@お腹いっぱい。 mailto:sage [03/04/11 11:32] >>110 おかしくないか?
112 名前:名無しさん@お腹いっぱい。 mailto:sage [03/04/11 14:13] >>110 100個分のポートが全てport:2300に...
113 名前:110 mailto:sage [03/04/11 21:30] まぁ、これでも見てや。 FreeBSD 4.7-STABLE #0: Sat Feb 8 08:14:20 JST 2003 /usr/src/sys/contrib/ip_nat.c int ip_natin(ip, fin) ip_t *ip; fr_info_t *fin; { ...[[snip snip snip]]..... for (np = rdr_rules[hv]; np; np = np->in_rnext) { ...[[snip snip snip]]..... if ((!np->in_pmin || (np->in_flags & IPN_FILTER) || ((ntohs(np->in_pmax) >= ntohs(dport)) && (ntohs(dport) >= ntohs(np->in_pmin))))) if ((nat = nat_new(fin, ip, np, NULL, nflags, NAT_INBOUND))) { np->in_hits++; break; }
114 名前:110 mailto:sage [03/04/11 21:33] ファイル名typo /usr/src/sys/contrib/ipfilter/netinet/ip_nat.c
115 名前:山崎渉 mailto:(^^) [03/04/17 12:09] (^^)
116 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
117 名前:名無しさん@お腹いっぱい。 [03/05/07 08:57] age
118 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/07 13:11] 低脳な俺はipfwでいいや。
119 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/07 23:48] そんなこと言わずにがんばるだよもん
120 名前:名無しさん@お腹いっぱい。 [03/05/09 04:22] がむばるなりよ
121 名前:名無しさん@お腹いっぱい。 [03/05/17 21:19] お味噌汁のお揚げはお好きですか?
122 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/18 00:00] block in quick from >>121 to 2ch.net
123 名前:名無しさん@お腹いっぱい。 [03/05/18 09:32] >>121 はい、大好きです(ウフッ
124 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/20 13:57] 激しく勘違いしていることはあきらかなんですが、established が S/SA(or S/AS) と表現されるのが どうもしっくりきません。 Syn-> <-AckSyn Ack-> なので、established だったら AckSyn か Ack がついてるってことで、 AS/Aと表現する気がしてなりません。 だれか私の誤解を解いてください。
125 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/20 21:57] >>124 >>80-83
126 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/20 23:07] >>125 いえ、SynだけかAckSynがついてるのがestablishedだというんなら80-83で納得いくんですが、 Synだけなのはestablished(確立済み)じゃないんじゃないのかな、と。 私は完全に勘違いしてるんでしょうか?
127 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/21 07:52] flags yyy/xxx で、xxx でマスクしたものを yyy と比べるんだから、 AS/A は絶対にマッチしないのでは。 外からのSynをblockすればいいだけの話なんだから、 block in quick proto tcp from any to any flags S/SA pass in quick proto tcp from any to any や pass in quick proto tcp from any to any flags A/A block in quick proto tcp from any to any と書けるだけの話。
128 名前:126 mailto:sage [03/05/21 21:06] >>127 解説ありがとうございます。やはり大きな勘違いをしていました。 以前検索したとき、ipf.confにかかれている S や A は Syn や Ack を表していて、 「複数書きたいときは / でつなぐ」って書かれてるページを読んで鵜呑みにしてしまっていました。 / の後ろにかかれているのはマスクだったんですね。 とても分かりやすい説明、本当にありがとうございました。
129 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
130 名前:名無しさん@お腹いっぱい。 [03/05/22 06:57] >>128 もうちょっと基礎から詳しく説明してくれよ。
131 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
132 名前:名無しさん@お腹いっぱい。 mailto:sage [03/05/22 18:43] >>10 のリンク先の、「MailとWeb」をよく読んでごらんなさい。
133 名前:名無しさん@お腹いっぱい。 [03/05/22 23:10] NATルータを仕上げたつもりなんですが、なんだかうまく動いていません。 webアクセスでしかチェックしていないのですが、 2chやその他一部のページは普通にアクセスできるのに、www.yahoo.co.jpなどにうまくアクセスできないのです。 logを見てみると sppp0 @100:18 b img.yahoo.co.jp[211.14.14.240],80 -> 192.168.10.29,2315 PR tcp len 20 40 -R IN と出力されており、ページにある他のサーバの画像などがうまく持ってこれていないようです。 ipf.confには pass in quick proto tcp from any to any flags A/A group 100 とかいて、確立済みな通信は通しているつもりなのですが、これが効いてくれません。 ルータになっているPCではこの症状が少しマシなので、NAT周りが原因だと思うんですが、 ルータPCではまったく症状が出ないというわけでもないのです。 ipnat.confは map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 proxy port ftp ftp/tcp map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 portmap tcp/udp 10000:65000 map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 としています。xxx.xxx.xxx.xxxはルータPCの外側のインタフェースのIPアドレスです。 とても基本的なことかもしれないんですが、教えていただけないでしょうか。
134 名前:110 [03/05/22 23:31] >>133 map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 proxy port ftp ftp/tcp mssclamp 1414 map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 portmap tcp/udp 10000:65000 mssclamp 1414 map sppp0 192.168.10.0/24 -> xxx.xxx.xxx.xxx/32 mssclamp 1414 でどうよ?
135 名前:133 [03/05/22 23:42] >>134 ありがとうございます、バッチリでした。 ルータPCのMTU-20-20ってことですね。 そんなこと全然思いつかなくて3時間くらい悩み抜いていました。
136 名前:名無しさん@お腹いっぱい。 [03/05/25 04:13] ipfw2ってどうよ?
137 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
138 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
139 名前:名無しさん@お腹いっぱい。 [03/06/29 10:01] netfilter で nat の OUTPU と filter の OUTPU の差がよくわからないのですが, 誰か教えてくれませんでしょうか? google で調べたところ, nat-OUTPUT ローカル生成のネットワークパケットが 送信される前にそれを変更します filter-OUTPUT ローカル生成のネットワークパケットに適用します らしいのですがこの両者の差がよくわからないです. iptables で状態を見ると nat-OUTPUT の方が通過量が多いため,両者は違うものだと考えられるのですが...
140 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/29 15:34] >>139 Netfilter(iptables)は板違い。ここは ip_fil3.4.32.tar.gz とかで配布されてる IP Filterのスレのはず。 Linuxのiptablesは慣れてないので、IP FilterがLinuxにも対応して欲しいとは思うが・・ たしか、kernel 2.0.x までは対応してたが、そのあと放置されたと思う・・
141 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/29 15:53] iptablesの話題はLinux板の方が回答を貰いやすいと思われ
142 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/29 16:14] >>140 ,141 これより前,Linux 板に netfilter に関係するスレが見当たらなかったので, Linux 板のくだ質スレに同じことを書き込んだのですが誰も答えてくれる人はいなかったんです. Linux 板をもう少し探索して適当なスレを探してみます.
143 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/29 16:25] こんな明らかなスレがあるのに目に入らなかったのだろうか… pc.2ch.net/test/read.cgi/linux/1000817457/
144 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/29 18:36] >>143 ありがとうございます. スレ一覧で Firebird にて検索(netfilter,iptablesで)したはずなのですが... 何で見つからなかったんだろう...鬱だ...いや注意力不足か...
145 名前:名無しさん@お腹いっぱい。 mailto:sage [03/07/06 01:51] >>144 この板の住人の大半はnetfilterは使ってないだろう、多分。 だから質問してもスレ建てても答えが貰えない可能性が大。 スレタイで検索するなら i-mode 版を w3m と併用するといい。
146 名前:あぼーん mailto:あぼーん [あぼーん] あぼーん
147 名前:名無しさん@お腹いっぱい。 mailto:sage [03/08/14 12:21] 保守
148 名前:名無しさん@お腹いっぱい。 mailto:sage [03/08/24 07:51] (・∀・)ノ
149 名前:名無しさん@お腹いっぱい。 mailto:sage [03/09/04 19:23] ヽ(・∀・)人(・∀・)ノ
150 名前:名無しさん@お腹いっぱい。 [03/09/05 16:55] jbbs.shitaraba.com/school/14/
151 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/12 11:51] 保守
152 名前:名無しさん@お腹いっぱい。 [03/12/07 15:49] おしえてください ipf で、アドレスのとこに0.0.0.0みたいな表記してるのって どういう意味なんでしょうか? 0.0.0.0/0 と 0.0.0.0/32 で意味は変わりすか? あと、単に 0 って書くと何を差すのでしょう??
153 名前:名無しさん@お腹いっぱい。 mailto:sage [03/12/07 16:47] >>152 0.0.0.0/0 は 0.0.0.0の0bit分を比較するので、どんなアドレスにもmatchする。 従って 0.0.0.0/0 も 1.2.3.4/0 も同じ意味。 0.0.0.0/32 は 0.0.0.0の32bit分を比較するので、0.0.0.0にしかmatchしない。 0はアドレスとしては0.0.0.0と同義。これはinet_aton()あたりの仕様だが、 ライブラリによってはparseできない(しない)ものも。SEE ALSO inet_aton(3) あと、0.0.0.0 は書く場所によっては特殊な意味を持つ場合もある。 ipnat.confではinterfaceについてるアドレスに置換されたり。詳しくは各manを読め。
154 名前:152 mailto:sage [03/12/08 00:06] ありがとうございます。 とくに、「...bit分を比較するので」ってとこ、 もやもやがすっきりしました。
155 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/11 01:04] ipf+ipnatを使ってルータにしてる人に聞きたいんだけど、 ipfのルールってやっぱり全通ししてるの?
156 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/11 01:25] >>155 いいえ
157 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/11 03:05] >>156 d
158 名前:名無しさん@お腹いっぱい。 mailto:sage [04/04/27 10:34] 保守
159 名前:名無しさん@お腹いっぱい。 mailto:sage [04/05/22 15:31] ng0に動的なグローバルIPアドレスが割り当てられてるんですがipfilterでこのIPアドレスを 指定するにはどのように記述したらいいんでしょうか? ipnatのmapのように0/32みたいに書けますか?
160 名前:名無しさん@お腹いっぱい。 mailto:sage [04/07/04 20:41] >>159 これじゃだめなの? block in quick on ng0 proto tcp from any to any port = 123456 みたいな。
161 名前:名無しさん@お腹いっぱい。 mailto:age [04/08/19 22:06] 保守
162 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/03 08:12] Set 1 now inactive の1という数字ってどういう意味?
163 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/03 12:13] >>162 ルールセット1を無効にして、ルールセット0を有効にしたということ。 ipfにはルールセット0とルールセット1の2つがあって、どちらを有効にするかを 一瞬で切り変えられる。 たとえば一度ルールをご破算してaddしなおしたい時なんかに、 inactiveな方にルールを設定し、activeとinactiveをswapすれば、 ファイアウォール的には一瞬たりともフィルタ無しの状態は発生しない。
164 名前:教えてくんすみません mailto:age [04/09/10 15:01:13] ログファイルを編集してアクセス権を変更せずに上書き保存をしたら、 ろぐを記述しなくなってしまいました… 環境はNetBSD1.6.1と最初から入っているipfです。 rc.confには ipmon_flags="-D /kubota/kakurei/kanbai/filter.logfile" のように記述して、ログファイル/kubota/kakurei/kanbai/filter.logfileのアクセス権は777にしてあります。 ipf.confにログが記録されるルールにマッチするような状況にして実験をしても ログが記録されません。ついさっきまで正常にログに記録されていたのにいきなりのことでさぱーり 原因がわかりません。どうかお助けくださいませ。
165 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/10 15:17:08] ipmon をリスタートすれば直る。 ipmon に限らず、UNIX のファイルオープンの仕組みを知ってれば 当然なんだが… 実際には、君がファイルを編集して保存することで削除された、 古いファイルの方にずっとログが記録され続けていた筈。 (UNIX の場合、削除されたファイルも名前が存在しないだけで、 オープンしているプロセスが存在する限り、ファイルの実体が 存在し続ける) 君の使っているエディタの場合、上書き保存というのは、実際には 上書きではなく、新しいファイルを保存して改名という手順で動い ていたようだね。 そもそも、ログを編集するという発想が何か変だ。ログの意味が なくなるから、そういうことはやめた方がいい。
166 名前:名無しさん@お腹いっぱい。 mailto:age [04/09/10 15:46:59] >>165 サンクスです。リスタートをしたら解決しました。不勉強で申し訳ないです。 ログファイルを数ヶ月ほったらかしにしていたせいでログが巨大化し ディスクスペースを圧迫していたので一度バックアップをとってから新しく ログファイルを作ろうとしたら、バックアップさえ取れない程ログファイルが巨大化 していたので、バックアップは諦めてログファイルの中から重要そうなものだけ 抽出して後は削除、という感じで編集したのです。勿論恒常的にやっては いないので今回だけは自分の怠慢が招いたことで特別でした。 以上助かりました。有難う御座います。
167 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/10 16:04:14] ログは普通自動で rotate しとくもんよ。 俺も NetBSD だが、ipf のログは syslog 経由で出して、 newsyslog を使って rotate してる。 こんな感じ。 /etc/rc.conf ipmon=YES ipmon_flags="-s" /etc/syslog.conf local0.info /var/log/ipflog /etc/newsyslog.conf /var/log/ipflog 640 7 30 * Z 全てのログを残したいなら、定期的にバックアップ をとるようにすること。
168 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/24 03:59:50] 漏れちょっと前にBSD始めたんだけど WEBには初心者に優しいIPFの説明してるページないぽ・・ 実働sampleみたいなの置いてくれるとありがたいんだけど・・・ ここに実働sampleあったよ兄者!
169 名前:名無しさん@お腹いっぱい。 mailto: [04/10/04 12:26:31] NATだとmmsを越えられないですか? すれ違いかも。すまそ
170 名前:166 mailto:sage [04/10/12 19:39:18] >>167 亀レスで申し訳ありません。 こういった指南は私のような人間にとっては大変ありがたいです。 早速試してみます。本当に有難うございました。
171 名前:名無しさん@お腹いっぱい。 mailto:sage [04/11/13 17:01:40] >>169 mms:もrtsp:も、とくに何も考えずにNAT(ipnat)を通ってアクセスできていますが、何か?
172 名前:名無しさん@お腹いっぱい。 mailto:sage [04/12/15 20:09:53] NetBSD 1.6.2から2.0にしたらなにやらipfilter周りの挙動が訳わからなく。。 ルールにflags S/SAとか設定してると通らないし,, reloadするとioctl(add/insert rule): No such processとか怒られるし。 でもちゃんとフィルタはされてたり。 なにか書式とか変わってたりするんでしょうか・・・(つД`)
173 名前:名無しさん@お腹いっぱい。 [04/12/19 16:31:02] >>172 FreeBSDだから関係なさそうだけど5.2→5.3にしてからipfの挙動がわけわからん。 通ったり通らなかったり。 ルールは特に変更してないんだけどねえ。 この際pfにしようかな
174 名前:1.6.2 mailto:sage [04/12/19 18:13:09] pfは簡易版だからちょと抵抗あるな… ifp側に問題があるのかねぇ。
175 名前:名無しさん@お腹いっぱい。 [04/12/29 21:41:29] pfスレが無いのでここで質問 FreeBSD 6-current(12月始めくらい)でpf利用、接続はmpdでdc0上でPPPoE(ng1)を使用。 マルチキャスト宛てのSRCアドレス==自アドレスとなる不思議なパケットに悩んでる。 tcpdump -nei ng1 dst host 239.255.255.250 20:24:58.016297 AF 2 318: IP xxx.xxx.xxx.xxx.55382 > 239.255.255.250.1900: UDP, length: 290 (20個、同様のログ) と、ng1に入ってきたように見える。 pfでマルチキャストにマッチするルール作っておいて、tcpdump -ner /var/log/pflogでも 20:54:28.012920 rule 15/0(match): pass in on ng1: IP xxx.xxx.xxx.xxx.52327 > 239.255.255.250.1900: UDP, length: 290 (18個、同様のログ)←2個少ない。 ところが、 tcpdump -ni dc0では 20:24:28.759625 PPPoE [ses 0xc11a] IP zzz.zzz.zzz.zzz.80 > xxx.xxx.xxx.xxx.53185: . ack 1542 win 5840 20:24:28.938608 PPPoE [ses 0xc11a] IP xxx.xxx.xxx.xxx.53185 > zzz.zzz.zzz.zzz.80: . ack 16188 win 55293 20:30:01.219286 PPPoE [ses 0xc11a] LCP, Echo-Request (0x09), id 75, Magic-Num 0x00d1b68f, length 8 20:30:01.223649 PPPoE [ses 0xc11a] LCP, Echo-Reply (0x0a), id 75, Magic-Num 0xf8178dc6, length 8 なので、インターネット側から来たものではない。 続く...
176 名前:名無しさん@お腹いっぱい。 [04/12/29 21:43:15] ルールは # pfctl -sr scrub in on ng1 all fragment reassemble block return in quick on ng1 from <bann_ip> to any block return in quick on ng1 proto tcp from any to any port = loc-srv block return in quick on ng1 proto tcp from any to any port = netbios-ns block return in quick on ng1 proto tcp from any to any port = netbios-ssn block return in quick on ng1 proto tcp from any to any port = microsoft-ds block return in quick on ng1 proto udp from any to any port = loc-srv block return in quick on ng1 proto udp from any to any port = netbios-ns block return in quick on ng1 proto udp from any to any port = netbios-ssn block return in quick on ng1 proto udp from any to any port = microsoft-ds pass in quick on lo0 all pass in quick on dc1 all pass in all pass out all block return in log on ng1 all pass in log on ng1 inet proto udp from (ng1) to 224.0.0.0/4 pass in on ng1 proto tcp from <office_ip> to (ng1) port = ssh keep state pass out on ng1 proto tcp all keep state pass out on ng1 proto udp all keep state pass out on ng1 proto icmp all keep state block return out on ng1 inet proto udp from any to 224.0.0.0/4 port = 1900 pass in on ng1 inet proto tcp from any to (ng1) user = 62 keep state # pfctl -sn nat on ng1 inet from 192.168.0.0/24 to any -> (ng1) round-robin rdr on dc1 inet proto tcp from any to ! 192.168.0.0/24 port = ftp -> 127.0.0.1 port 8021 と、特に怪しくないはずだけど。pfってまだ駄目?
177 名前:名無しさん@お腹いっぱい。 [04/12/29 21:45:36] ちなみに内部ネット(dc1)から、入ってくる239.255.255.250.1900のならば心当たりありまくり。
178 名前:名無しさん@お腹いっぱい。 [05/01/12 20:04:25] pfでestablishedってどうやって設定するのでしょうか?
179 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/13 04:38:07] keep state
180 名前:名無しさん@お腹いっぱい。 [05/01/21 23:15:46 ] pfのログ(/var/log/pflog)を毎日ローテーションしたいのですが、方法ありますか? ファイルがtcpdump形式だからなのかログをmvしても新しく作成してくれません。 pf -d;pf -eしてもダメです。
181 名前:名無しさん@お腹いっぱい。 mailto:sage [05/01/22 13:18:09 ] >>180 man pflogd
182 名前:名無しさん@お腹いっぱい。 [05/03/04 10:41:54 ] インターネットルーターとして利用してますが。 例えば、インターネット側セッションが2つ以上でも IPFは使えますか?
183 名前:名無しさん@お腹いっぱい。 mailto:sage [05/03/04 11:24:57 ] >>182 pass in on <インターフェイス名> all head 100 ルールごにょごにょ group 100 見たいな感じでインターフェイスごとに設定すれば無問題。 IN は100 OUTは200 次のIFのINは300 OUTは400みたいに。
184 名前:名無しさん@お腹いっぱい。 [05/03/04 11:50:20 ] >>183 ども、できるんですね(当り前みたいでしたね・・・orz ありがとです。
185 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/05/28(土) 11:26:29 ] 例えばhttpを見に行きたい場合、 pass in quick proto tcp all flags A/A group 100 pass out quick proto tcp all flags A/A group 150 pass out quick proto tcp from any to any port = 80 flags S/SA group 100 みたいな感じで許可するのと、 pass out quick proto tcp from any to any port = 80 flags S keep state group 100 みたいな感じではどっちが良いでしょうか。
186 名前:名無しさん@お腹いっぱい。 [2005/05/28(土) 11:26:58 ] age
187 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/06/16(木) 03:40:49 ] pfとmpdについて質問です。 pfが先に起動してその後、mpdが起動する場合、 mpdを起動後、再度pfをReloadしていたのですが、 pfのManualを見ると、()でインターフェイス名を囲めばReloadしなくてもいいようなのですが インターフェイスを()で囲むとSyntax Errorが出てReloadできません。 どのように囲めばよいのでしょうか? pf.confは、 www.openbsd.org/faq/pf/ja/example1.html の最後に記述しているサンプルとext_if="ng0"の箇所が異なるだけです。 全てのフィルタルールのext_ifに()を付けたり、マクロの部分で()を付けるとエラーになりました。 (ext_if)="ng0" or pass in on ($ext_if) inet proto tcp from any to ($ext_if) \ port $tcp_services flags S/SA keep state ↑前の$ext_ifに()を付けるとエラーになります。 OS FreeBSD 5.4R www.openbsd.org/cgi-bin/man.cgi?query=pf.conf&sektion=5&arch=&apropos=0&manpath=OpenBSD+3.4 Host name resolution and interface to address translation are done at ruleset load-time. When the address of an interface (or host name) changes (under DHCP or PPP, for instance), the ruleset must be reloaded for the change to be reflected in the kernel. Surrounding the interface name in parentheses changes this behaviour. When the interface name is surrounded by parentheses, the rule is automatically updated whenever the interface changes its address. The ruleset does not need to be reloaded. This is especially useful with nat.
188 名前:名無しさん@お腹いっぱい。 [2005/06/16(木) 03:41:27 ] age
189 名前:名無しさん@お腹いっぱい。 [2005/08/09(火) 12:25:34 ] 持ち逃げ、捏造、連Q、IMにて暴言、違法ファイル所持、 ユーザ名: MGC ユーザ名: ingomaster サーバ: Inc IPアドレス 219.104.169.90 ホスト名 ktsk130090.catv.ppp.infoweb.ne.jp IPアドレス 割当国 ※ 日本 (JP) 都道府県 東京都 市外局番 03 接続回線 CATV Domain Information: [ドメイン情報] a. [ドメイン名] INFOWEB.NE.JP b. [ねっとわーくさーびすめい] c. [ネットワークサービス名] InfoWeb d. [Network Service Name] InfoWeb k. [組織種別] ネットワークサービス l. [Organization Type] Network Service m. [登録担当者] KH071JP n. [技術連絡担当者] KN6902JP p. [ネームサーバ] ns.web.ad.jp p. [ネームサーバ] ns2.web.ad.jp p. [ネームサーバ] ns3.web.ad.jp [状態] Connected (2006/01/31) [登録年月日] 1997/01/22 [接続年月日] 1997/01/31 [最終更新] 2005/02/01 01:05:35 (JST)
190 名前:マジレス希望 mailto:sage [2005/08/25(木) 22:00:56 ] 古〜い Solaris7 マシンに最近担当させられて困ってます。 セキュリティ対策が何もしてなかったので IPfilter を導入したんですが、 起動して数日でパニックを起こしてシステム停止してしまいます。 Solaris7 とは相性悪いんでしょうか? 何から調べたらいいかも分かりません。 どなたかご教授ください。 参考になりそうな URL や ML だけでも結構です。 よろしくお願いします。
191 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/25(木) 23:56:48 ] 本家ML嫁 当たり外れがあるものよ
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/26(金) 04:12:18 ] >>191 もいいけど片っ端から試していくてのはどう?
193 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/26(金) 16:30:01 ] >>190 アタリ/ハズレはある ipf+solでpanicはよくある話 Solaris7現役だったころのipf(3.4.ヒトケタ)入れてみ
194 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/08/26(金) 20:29:41 ] keepstate使うと死にまくる目に遭った
195 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/08(木) 02:12:58 ] >>190 マジレスに対してコメント梨か
196 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/09/09(金) 15:43:00 ] OSの大まかなバージョンとパニック停止だけで回答しろと言われてもね。。
197 名前:名無しさん@お腹いっぱい。 [2005/10/31(月) 13:12:02 ] 内から外へのFTP PASV接続を通すには block out on if0 all pass out on if0 tcp any to any flags S keep state keep frags みたいにするしかない?
198 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/05(土) 00:23:08 ] 保守
199 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/29(木) 16:00:17 ] 新党
200 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/10(金) 04:05:28 ] 公明
201 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/06(月) 22:34:16 ] たまに保守
202 名前:名無しさん@お腹いっぱい。 [2006/06/28(水) 19:01:04 ] block out from xxx.xxx.xxx.xxx/32 to any group 150 としているのですが、このIPからの拒否を特定のポートだけに適応する事は出来ますか?
203 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/28(水) 19:07:54 ] 「適用」な。
204 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/28(水) 19:10:38 ] 自己解決しましたすいません
205 名前:名無しさん@お腹いっぱい。 [2007/01/08(月) 00:16:29 ] PF(Packet Filter)でTCP SYN flood攻撃防御のため pass in on $ext_if proto tcp from any to $ext_if port $tcp_sv flags S/SA keep state を、 pass in on $ext_if proto tcp from any to $ext_if port $tcp_sv flags S/SA synproxy state と書いたら弾かれてしまうんですが # TCP SYN プロキシ synproxy state は、その動作原理から keep state および modulate state の機能も含んでいます。 ではないの?
206 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/08(月) 01:39:34 ] もそもそS/SAKeepStateとはなんぞや?
207 名前:名無しさん@お腹いっぱい。 [2007/01/08(月) 10:34:35 ] >>206 SYN、ACK フラグのうちの SYN フラグだけがセットされたすべての送出 TCP パケットのための状態の生成を許可 TCP のフラグとその意味 * S : SYN - 同期 (Synchronize): セッション開始要求を示す * A : ACK - 肯定応答 (Acknowledgement)
208 名前:名無しさん@お腹いっぱい。 [2007/01/08(月) 13:22:05 ] /SAの説明が抜けてると思った。 SYNまたはSYN,ACKを送出した場合、状態管理を行う。
209 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/08(月) 14:40:35 ] ちげーよ。 S/SAは「フラグとSAの論理籍をとった結果がSのケース」と読む。 SYNとACKが両方セットされたケースは含まない。>>207 の説明で正しい。
210 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/31(土) 05:10:25 ] ipfwで ipfw add deny log udp from any to any setup をやってるとこあまりみないんだけどなんで?
211 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/08(日) 21:07:03 ] udpとsetupの組み合わせはありえないからでしょ。
212 名前:名無しさん@お腹いっぱい。 [2008/12/08(月) 17:45:28 ] なんだか懐かしいage