【鉄壁】iptablesの使い方 3【ファイアウォール】 at LINUX
【鉄壁】iptablesの使い方 3【ファイアウォール】 - 暇つぶし2ch175: ◆/UXtw/S..2
06/06/20 23:45:17 Nu+KckrO
>>174
owner モジュール(-m owner)ってのは、パケットの生成元に関するモジュール
なので、--cmd-owner はあくまでも「パケットの生成元コマンド名」を指し
示してます。コマンドのファイル属性としての所有者とは関係ありません。
そっちは --uid-owner とかです。

しかし、このモジュールの naming センスは悪いね。
普通は --owner-cmd とか --owner-uid とするでしょうに。

176: ◆/UXtw/S..2
06/06/20 23:57:13 Nu+KckrO
>>174
サーバーでの OUTPUT 制限は、crack された場合に、
その兆候の発見と被害拡散防止に役立つと思うよ。

たとえば www と DNS しかサービスしてないなら、(かつログでは
ドメイン名解決なしなら) OUTPUT の --state NEW な接続は
DNS のゾーン転送だけ開けておけば十分でしょ。

メールでログレポートを送ることがあるなら、追加で submission/smtp
だけ開ければ十分。この場合、当然中継サーバは決まってるだろうから、
その IP の組合せの場合だけ許可。

で、OUTPUT の --state NEW で drop したパケットがあったら
ログ取りするようにしておけば、何かおかしかったらすぐに
(swatch とかと組み合わせて)発見できるかもよ。


177:login:Penguin
06/06/26 11:08:28 HckK78WW
@ITでiptablesを勉強してたのですが、↓のテンプレで
URLリンク(www.atmarkit.co.jp)
最後に-j LOGでログを取り、直後にDROPしているのですが、
これはポリシーでINPUT -P DROPとしているから必ずしも必要ではないと思うのですが、どうでしょうか?
実際LOG直後のDROPを消してもちゃんとDROPしてくれました。

ただ、manでLOGの説明を見ると、non-terminatingだからLOGした後DROPしろって書いてあるんですよね・・・
ポリシーをACCEPTにするときもあるかもしれんから、LOG直後にDROPする癖をつけとけってことでしょうか?

178: ◆/UXtw/S..2
06/07/01 02:19:08 /p3qWt1T
>>177
基本的には、単にスタイルの問題だと思うが。
この手のは、大抵はチェイン名は LOGDROP とかにするもんだけどな。
それだったら違和感ないべ?

ポリシーがどうとかではなく、「その場所まで来たパケットは
LOG して DROP」という対処をしたいのであっって、その
DROP が*たまたま*ポリシーと一緒というだけだ。

> ポリシーをACCEPTにするときもあるかもしれん
まーそういうこった。

179:177
06/07/01 18:35:18 AZfWH4aW
>>178
なるほど。ポリシーというのはあくまで補助的なものとして考えるってことすかね…?
まぁ結局個人のスタイルの問題だからあんま気にスンナ、好きにしろってことで解釈しときます

レスありがとうございました

180:login:Penguin
06/07/18 12:42:13 K7r+QlfI
質問です。
現状はFWとhttp鯖が別なので、FW兼ルータ上で
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.15:80
iptables -A FORWARD -d 192.168.1.15 -p tcp --dport 80 -j ACCEPT
みたいな構文を用いてポートフォワーディングを実現しています。

今度はFW兼ルータ兼http鯖にしようと思っているのですが、
同一マシン上でポートフォワーディングはどうやって実現すればいいんでしょう。

181:login:penguin
06/07/18 21:48:44 XD06MQZ2
>>180

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080

182:180
06/07/18 23:32:39 K7r+QlfI
>>181
ありがとうございます

183:login:Penguin
06/07/19 02:57:02 GNL8GeGf
ポート転送なんて普通は怖くてやれねえよ。
外から、80番とか8080番にアクセスするだけで、安全なLANであるはずのPCにアクセス許してしまってるのだが。
転送先のPCを踏み台にされるだけだと思うよ。

どこかの銀行のファイヤウォールにtelnetしてみたら内部のコボルが動いてるようなオフコンのコンソール取れたら不味いのと同じレベル。
インターネットから操作できると便利だからって、sshとかリモートデスクトップとかVNCとか転送させて踏み台鯖をインターネットに公開するのだろ?

184:login:Penguin
06/07/19 03:26:06 I8L4GJH2
それはポート転送とは関係ないと思うんだが。

185:login:Penguin
06/07/22 08:10:05 vOg9hTG0
まぁ一人で勝手に怖がってろってことで。

186:login:Penguin
06/08/09 00:25:02 /Rt412pY
海外(特に韓国)からのスパム発信源などうざいアクセスが集中しているので
韓国からのアクセスを完全排除しようと思っています。
んで、

187:login:Penguin
06/08/09 00:28:14 /Rt412pY
間違えて送信してしまいました。
続きです

URLリンク(www.nminoru.jp)
上記のサイトを参考にKRからのアクセスを片っ端から
iptables -A FORWARD -s 121.1.64.0/24 -j DROP
iptables -A FORWARD -s 121.1.65.0/24 -j DROP
iptables -A FORWARD -s 121.1.66.0/24 -j DROP
iptables -A FORWARD -s 121.1.67.0/24 -j DROP
iptables -A FORWARD -s 121.1.68.0/24 -j DROP
というように列挙しているのですがあまりに膨大な為にやってられない状態です。
iptablesの記述で
121.1.64.0-121.1.127.255というような記述が出来るようにする方法とかはないのでしょうか?

188:login:penguin
06/08/09 00:43:45 GubKQ59M
>>187 誘導
スレリンク(sec板)l50

189:login:Penguin
06/08/09 01:03:23 sVyCeYrR
>>187
krfilterでググれ

190:login:Penguin
06/09/05 17:17:33 t9hbOLaH
すべてのポートを閉じてからサーバのために必要なポートだけを開けるという設定をしているのですが、
PHPに外部へ接続させたい場合にはどういう風に設定すればいいんでしょうか?

発信元が80番のポートであるINPUTを受け付けるようにすればいいんではないかと思いやってみましたが無理でした

191:名無しさん@お腹いっぱい
06/09/05 17:32:52 2k4vW+I9
>>190
その接続がどういうプロトコルを使うのかわからんが、
OUTPUTチェインに宛先のアドレスとポートを指定してACCEPTし、
INPUTチェインは上部のアドレス・ポートからのSYN,FIN,RSTと
-m conntrack --ctstate ESTABLISHEDをそれぞれACCEPTするとか。

192:login:Penguin
06/09/06 00:44:43 WS8CK9zn
あと他のルールで早々に破棄られてないか確認するヨロシ。
LOGチェインに送ってログが出るかとか。

193:login:Penguin
06/09/06 01:29:08 CaeTN9RR
最近は80番でいろいろ出来るけどね。
他が開いてなくても余り意味は無い。

194:login:Penguin
06/09/06 01:49:01 WS8CK9zn
ssh だけは開けとかないと不安になる。
他は必要になった時に開ければいいけど。

195:login:Penguin
06/09/06 23:21:26 JFP6/0SU
sshを攻撃して突破する手も有るけど?

196:login:Penguin
06/09/07 01:04:32 GVoVVL9A
そりゃあるだろうけど。
SSH だけの問題じゃないでしょ?

197:login:Penguin
06/09/16 20:41:11 GeC7QY/k
ちいとスレ違いだけど、
sshd_configいじれる立場なら、Listenするportを22から変えるだけでも
いくらか楽になるよ。
ポリシー上、変えることができない人もいるだろうケド・・・・

198:login:Penguin
06/09/28 14:27:48 YtUO+iJC
iptables設定してLinuxルータにしたんですけど、
chkconfig iptables on
/etc/rc.d/init.d/iptables save
とやって暫くルータとして使用後、再起動をしたのですが、
再起動時にログイン画面が出る前に表示されるサービス?開始結果がOK, FAILED
と出る画面でiptables設定中と出て固まってしまいます。マウスのみ反応し、
キーボードは反応なし、リモートも不可という状況です。
これは一体何が原因でしょうか?ただ固まった状況下においてもルータとして
動作しているようです。起動前なので、dmesgも実行できない......
OS:CentOS 4.4 x68-64(FINAL) 2.6.9-42.0.2.ELsmp
eth0 : Intel Pro/1000PT Single GbE
eth1 : BroadCom BCM5721 GbE
よろしくお願いします。

199:名無しさん@お腹いっぱい
06/09/28 17:31:46 iVrfJTnb
>>198
saveした内容をさらせ。

200:login:Penguin
06/09/28 22:09:26 dxyTlqGs
>>198
もし今操作ができないならシングルユーザモードで起動して syslog 見てみな。

201:login:Penguin
06/09/29 23:38:37 23pmoCba
ポート変えたぐらいは大差ない。
今はスキャンポートぐらいはするから。

202:login:Penguin
06/09/30 10:49:46 Gqsg49V/
基本的なことで、わからないことがあるので、質問させてください。

@itの最後に、LOGとって、DROPするテンプレを参考に
shスクリプトを書きました。


wwwを見られるように、(というか、apt-getで必要なので)

# www
iptables -A INPUT -p tcp -s $any --sport 80 -d $myhost -j ACCEPT
iptables -A OUTPUT -p tcp -s $myhost -d $any --dport 80 -j ACCEPT

という風に書いたのですが、この設定では、apache等のhttpdを立てていると、
外からも接続できてしまうのでしょうか?


203:login:Penguin
06/09/30 10:57:05 7Lt3lUO2
>テンプレを参考に
ググれば一発なサイトとは言え、参考にしたURLも貼った方が良い。

>この設定では
断片だけで判断できるのはエスパーだけ。

>外からも接続できてしまうのでしょうか?
httpd を localhost だけで運用したいってこと?
それとも LAN 内だけで運用したいってこと?
LAN 内に限定するなら $any を適当なものに変える。
たとえば 192.168.0.0/24 とか。

204:login:Penguin
06/09/30 12:16:49 bqt4C6AR
wwwって書いてあるとビッパー臭を感じる(w

205:login:Penguin
06/09/30 16:20:05 xzx350/+
>>202
このほうが良くない?
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o ${EXT_IF} -p tcp --dport 80 -j ACCEPT

206:198
06/09/30 18:54:36 SJQcNzTp
>>199, 200
遅レスすいません。Bootが出ない為、インタラクティブで iptablesだけ起動しないように
しました。
設定スクリプトは長いので、以下のサイトにうpしました。
URLリンク(uploader.xebra.org)
アップロードしてからおもったのですが、iptablesはNICの設定?の前に立ち上がると思うのですが、
スクリプトの中でIPアドレスを取得するようにしています。もしかしてこれが原因でしょうか?

207:login:Penguin
06/10/01 10:02:05 h/Pj1RMH
順番ぐらい変えれば良いじゃね?

208:198
06/10/01 13:46:27 8WxGBkrc
>>207
変えましたが、やはり同じ問題が発生しました。
なんででしょうか??

209:login:Penguin
06/10/01 22:38:09 jHl3VUVF
先に network があがったら iptables が有効になるまで無防備だな。
まぁ一瞬だけどね。。

>>208
OS 起動時に iptables をあげないようにして、スクリプトを 1 行ずつ流してみたら。

210:login:Penguin
06/10/02 04:48:50 BGBgOj7i
DHCPとかモバイルIPみたいなのはネットワークが先に設定されないと制御できないと思うが?
ARPや近隣探査のパケットまで落としてたらネットワーク使えないよ。

211:login:Penguin
06/10/23 21:45:51 gyC5siIO
arno-iptables-firewallをdebian-sidで使ってみた。
すげー量のルールが適用された。
でも、cpufreqとDHCPの通信が遮断された。。orz

212:login:Penguin
06/10/24 08:54:19 wJqpCvRv
注意
なんか「佐賀」だけじゃ監視員の検索にかからないらしいぞ?今知ったんだが

● 佐賀県庁
● 佐賀県
● 佐賀県民

の3つだそうです。
グーグルなどとは異なり、
「 佐賀 」 だけでは抽出されない検索エンジンで、
運用監視をしているそうです。

だそうだ。「佐賀」だけじゃ引っかからないからあんまり意味ない。
この情報をコピペで佐賀スレに広めるんだ!

213:login:Penguin
06/10/26 14:36:04 sOgBJvBd
今週のネギま!スレはここですか?

214:login:Penguin
06/10/29 22:39:55 XYsxCBQN
iptablesで *.jp ドメイン以外からのアクセスを弾く(日本国内のホストからの接続
のみを許可する)設定とか可能でしょうか?
それともDNSは使えず、IPアドレスで範囲指定をするしかないのでしょうか?

215:login:Penguin
06/10/29 23:36:22 XYsxCBQN
ちょっと調べた感じだと中国や韓国は逆引きできないホストが多いそうな・・・。
って事は*.jpだけ許可って結構難しい?

216:login:Penguin
06/10/30 00:24:20 1Zhl801v
>>215
逆引きできなきゃ弾くってことでいいんじゃね?
iptablesでどうやるかは知らん。
なんのサービス提供してるかしらないけどhttpならapacheとか
アプリのほうのアクセス制御使うほうが楽かも

217:login:Penguin
06/10/30 02:18:23 dFBs4Hg4
皆!ココで公開されているシェルスクリプトで中韓のIPを弾かないか?
URLリンク(www.hakusan.tsg.ne.jp)
これは素晴らしい~

218:login:Penguin
06/11/01 14:03:02 enrVujTW
何を今更・・・・・・

219:login:Penguin
06/11/22 00:58:42 eI7xzIJ2
現在このような感じなんですけどなぜか
ftpでログインできないです、ご教授願います。

[root@www sysconfig]# cat iptables
# Generated by iptables-save v1.2.11 on Mon Nov 20 19:59:49 2006
*nat
:PREROUTING ACCEPT [1107:114350]
:POSTROUTING ACCEPT [13:904]
:OUTPUT ACCEPT [13:904]
COMMIT
# Completed on Mon Nov 20 19:59:49 2006
# Generated by iptables-save v1.2.11 on Mon Nov 20 19:59:49 2006
*filter
:INPUT ACCEPT [3303:410124]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [1832:161299]
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 110 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.100.47 -p tcp -m tcp --dport 23 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
COMMIT
# Completed on Mon Nov 20 19:59:49 2006

220:login:Penguin
06/11/22 00:59:32 eI7xzIJ2
root@www sysconfig]# iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:ftp-data
ACCEPT tcp -- anywhere anywhere tcp dpt:ftp
ACCEPT tcp -- anywhere anywhere tcp dpt:smtp
ACCEPT tcp -- anywhere anywhere tcp dpt:pop3
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- 192.168.100.47 anywhere tcp dpt:telnet
ACCEPT icmp -- anywhere anywhere

Chain FORWARD (policy DROP)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

221:login:Penguin
06/11/22 01:11:16 lMlcCDt6
>>220
見た感じiptablesの意味がないきがする。全部許可してるみたい。
ftpサーバーにつながらないのは他がいけないかもね。


222:login:Penguin
06/11/22 07:09:12 eI7xzIJ2
>>220
全部許可とはどういう意味でしょうか?
Chain INPUT (policy DROP)をACCEPTに変えれば
FTPでログインできるようになるのですが…


223:login:Penguin
06/11/22 07:49:44 2E/dJzRk
>>222
情報は小出しにしない方がいいよ。
だいたいどこからどこの FTP が失敗するかとかも書いてないよね。
passive モードかどうかも書かれてないし。。


224:login:Penguin
06/11/22 09:46:00 JlZtKC7V
ご教授、と書くやつにろくなのはいない

225:あぼーん
あぼーん
あぼーん

226:login:Penguin
06/11/23 02:17:48 yF8/xVBH
>>220
ip_conntrack_ftpをロードしてないとか‥

227: ◆/UXtw/S..2
06/11/28 03:21:02 iTNteDyR
>>226
ip_conntrack_ftp は PORT/PASV した後の別コネクションを
追うためのモジュールだから、「ログインできない」の
理由にはならないかな。

ただ、元質問者の情報が足りないので、本当に
ログインできないのかどうかワカランけど。


228:login:Penguin
06/12/17 00:28:58 +8llf8GD
A、B2つのPCと、ルータがあって

ルータ --- A --- Bのようにまっすぐ繋がっています。
Aはルータ側192.168.1.15、B側192.168.2.15のIPアドレスを持っていて、
Bは192.168.2.20、ルータは192.168.1.1です。
BからAを経由してルータからインタネットに繋げたいのですが、
Aにはどういうルールを設定すればよいのでしょうか?

229:login:Penguin
06/12/18 01:01:34 E9uiJVVc
過去ログ嫁

230:login:penguin
06/12/19 20:11:53 RM0gN/rD
>228

PC-A(2ポート?)を bridge すればいいだけじゃない?

231:228
06/12/21 23:13:36 daumOCsa
/etc/sysctl.conf

net.ipv4.ip_forward = 1
ってしてなかった。。。
iptables関係ありませんでした、ごめん。

232:login:Penguin
06/12/25 17:48:30 yHuI/aLV
Bフレッツで固定IPなんだが
FC6でルーター兼サバの作り方解説きぼんぬ。
内側にはwindowsマシンもぶら下げたい。
FC6は最初からカーネルモード?やったことないのでさっぱりわからねー
市販のルータ買い換える気にならんので何とかしたいです。

233:login:Penguin
06/12/25 18:53:49 BIoj6yWC
>>232
買えよ愚図

234:login:Penguin
06/12/25 22:05:56 IWVPhpmA
>>232
Bフレッツで、固定IPなんだが、
debianなんでFC6はわかんないや、ごめんね(^_^)


235:login:Penguin
06/12/25 23:08:08 NYqh1ein
>>232
このスレ見れば出来ると思うんだけどなぁ。

236:login:Penguin
06/12/26 02:44:40 tLfzj6Wq
そんなんでよく鯖なんて建てるなぁ。

237:login:Penguin
06/12/26 18:12:42 7cDhkV1k
可哀想だから、誰か懇切丁寧に手順を説明したwiki作ってやれよw

238:login:Penguin
06/12/26 21:33:29 4d3i1qzH
>>237
232が作ればわかりやすくなるんじゃね?

239:login:Penguin
06/12/27 11:17:42 4sN+iybd
ターボリナックスからCENTOSに乗り換えました。
インストール時にファイアーウォールを使いますか?ってのがあったので?でしたがYESでインストール
フィルタリングの設定しようとiptablesを開いてみるとRH-firewallとかいうチェーンが入ってます。なんですかああ~?RH-firewallって!!わけわかりません。
ぐぐってもルールのサンプルばっかりでRH-firewallがなんなのかの説明してあるところがありません。
ということで質問です。RH-firewallってなんですの~???

240:login:Penguin
06/12/27 13:06:21 8h2TH/Vr
だからチェーンなんだよ。
気に入らなけりゃ捨てちまえ。

つーか、そんなんでオロオロしてちゃ、フィルタリングルールをちゃんと書けんの?
GUIなツールか何か入っているだろうからそれつかっといたほうがよくね。
って、GUIなツールが本当に入っているかどうか知らんがな。使ったことないし。

241:239
06/12/27 14:53:25 4sN+iybd
オールデニーしてねえからきにくわねえっす。捨てちゃった
つうかoutputもまったく定義されてないしフォアードしねえし
なにあれ。ファイアーウール?何であんなの実装してるんでしょうか・・
RH-firewallの解説してくれませんかえろい人。

242:login:Penguin
06/12/27 16:32:18 jeKAmukV
>>238
その発想なかったわw

243:名無しさん@お腹いっぱい
06/12/27 16:32:57 iCubPp22
> デニー
( ゚д゚)

244: ◆Zsh/ladOX.
06/12/27 18:59:45 hQuXK6vG
そこは突っ込むところかなぁw

245:login:Penguin
06/12/27 23:52:14 4sN+iybd
こんばんは
ところで質問です
パケットカウンターとバイトカウンターてなんですか?
何かを数えてるんですよね?パケットを数えてる?バイトとは?
なんなんすか?カウンターをゼロにするって・・・・
ここら辺の説明がJMには載ってないのでわかりません。
えろいひと教えてください

246:245
06/12/27 23:59:23 4sN+iybd
3のリンク先全部読んだんですがわかりません・・・
カウンタとは高度に政治化された案件で隠蔽されてるのですか???
もう気になって今晩寝れません。おねがいです助けてください。

247:login:Penguin
06/12/28 00:21:41 yJdAqP4j
>>245
パケットカウンターはパケットを数えてる
バイトカウンターはバイトを数えてる
おk?

248:245
06/12/28 00:47:50 vkrVh8Ot
>>247
えっとトラフィック監視をしてるってことですか?


249:245
06/12/28 00:48:43 vkrVh8Ot
間違えました。トラフィックを監視できるってことですか?

250:login:Penguin
06/12/28 00:54:00 +6RmuEzY
まぁ、応用すればそうですね。
iptales -L INPUT -v -n
としてみれば分かるよ。どれだけのパケットが流れているか
把握できるから、多いもののルールを上に持っていくとか
チューニングするときに丁度いい。


251:245
06/12/28 00:57:10 vkrVh8Ot
>>250
なるほど!ご丁寧にありがとう御座います♪

252:login:Penguin
06/12/29 19:27:35 sjiNj0Oo
SuSE付属のiptablesってRPCプログラムをプログラム名指定で通過させる機能があるんだけど、
これってRedHatとかの普通のiptablesでも可能なんですか?

253:login:Penguin
06/12/29 19:36:19 ONooIj0A
/etc/services
に乗ってるサービスなら大丈夫なんじゃね

254:login:Penguin
06/12/30 23:18:32 t4k9FQsc
guarddog使ってみたら、すげー(゚д゚)ウマー

255:login:Penguin
07/01/02 22:55:25 X3er3Ors
kernel-2.6.20から使いかた変わるんか?


256:login:Penguin
07/01/03 17:45:22 Ar92fTL4
>>254 スクリーンショット見たけど、むしろ分かりづらいだけw


257:login:Penguin
07/01/03 18:06:17 6EfboUbH
個人的にはfireholってのが使いやすい

258:login:Penguin
07/01/03 22:43:57 p0RGrbIB
FireWall-1 みたいな UI だと使いやすいんだけどなぁ。

259:login:Penguin
07/01/04 10:31:55 W47xVQyf
>>258
see "Vuurmuur"

260:login:Penguin
07/01/18 10:26:41 FRkYalQE
なぁなぁ、samba用の設定調べてたんだが、UDPプロトコルに
--state NEW 使ってるの幾つか見かけたが、非常に恥かしくないか?
それとも、iptables的に何か特別な動きがあるのか?
教えてエロイ人

261:login:Penguin
07/01/18 13:40:57 X3/i4IUu
URLリンク(www.sns.ias.edu)


262:login:Penguin
07/01/18 18:37:55 FRkYalQE
>>261
おおぅ。
iptables的に意味はあるが、鯖用途でINPUTチェインに使ったら意味が無くなる。
ので、微妙に恥かしいかもってな感じかなぁ。

ありがとエロイ人~

263:login:Penguin
07/01/25 14:26:54 UF/PPiOA
iptables で >>219 の方も以下のように書いてあるのですが、
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT

これは、
-A INPUT -p tcp --dport 20 -j ACCEPT
でもいいのでしょうか? "-m tcp" は何のための指定なのでしょうか?

宜しくお願いします。

264:login:Penguin
07/01/25 20:14:25 FXOEd5WU
>>263
tcpというモジュールを読むという意味。
-p tcpがあればTCPプロトコルに限定されることになって暗黙の了解でモジュールが
読み出されるが、念のための指定。

"-m conntrack" のようにしてコネクション層の接続状態を追跡させたりすることも
できる。

265:login:Penguin
07/01/26 00:26:12 GQLud1rd
>>264
有難うございます。念のためということですね。分かりました。

266:login:Penguin
07/01/30 01:22:59 0d0T0oSm
krfilterとその他のパケットフィルタって皆さんどのようにやってます?

iptables -A INPUT -p icmp --icmp-type 0 -s 0.0.0.0 -d 192.168.0.0 -j DROP
iptables -A INPUT -p icmp --icmp-type 0 -s 192.168.0.1 -d 192.168.0.0 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.0.0 -d 0.0.0.0 -j DROP
iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.0.0 -d 192.168.0.1 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 11 -s 192.168.0.0 -d 0.0.0.0 -j DROP
iptables -A OUTPUT -p icmp --icmp-type 11 -s 192.168.0.0 -d 192.168.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.0.0/24 -i eth0 -j DROP
iptables -A INPUT -d 0.0.0.0/8 -i eth0 -j DROP
iptables -A INPUT -d 255.255.255.255/32 -i eth0 -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL SYN,FIN -s 0.0.0.0 -d 192.168.0.0/24 -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN -s 0.0.0.0 -d 192.168.0.0/24 -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PUSH -s 0.0.0.0 -d 192.168.0.0/24 -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

なにやっていいんだが分からなくなってきた('A`)
iptables -A INPUT -p tcp -m state --state NEW -j KRFILTER

267:login:Penguin
07/01/30 20:10:43 0mcT02Q5
>>266
> krfilterとその他のパケットフィルタって皆さんどのようにやってます?
これが何のことを言ってるのか分からない。
両方やりたきゃ両方やればいいだけでは?
喪前は一体何がしたいんだ?

268:login:Penguin
07/01/31 01:05:48 x6VD4M75
>>267
これじゃね?
URLリンク(www.hakusan.tsg.ne.jp)
結局のところ、特定国割り当てのネットワークアドレス集みたいなもんだなぁ。
やりたければやれば、って感じ。

俺だったら、よほどのことがない限りもう少し上の層で対処するけど。

269:login:Penguin
07/01/31 02:21:45 F4N9LTj9
debian使いなんだけど
iptablesって自動起動してくれないのか?

270:login:Penguin
07/01/31 20:40:31 mRXuzCe2
>>269
iptablesはdaemonじゃないぞ?
再起動したら設定は全部消える
だからスクリプトとかを使って起動時に毎回設定を読みこませないといけない

271:login:Penguin
07/01/31 23:58:36 F4N9LTj9
>>270
サンクス。
とりあえず、/etc/network/interfaces
に定義をリストアさせることにしたよ。

URLリンク(www.thinkit.co.jp)

272:login:Penguin
07/02/01 00:24:15 OPqVxekZ
はて、俺もDebianで、
/etc/init.d/iptablesが、
/var/log/iptables以下を見にいくんで、
activeとinactiveって名前のファイルを作ったような記憶が…。

まぁ、動いているならなんでもいいよね。

273:271
07/02/01 00:42:43 WZpWM+zp
>>272
最初、自分もactiveとinactiveを作って自動起動に期待してたんだけどスルーされたのよ。



原因?(,,゚Д゚)ワカンネ

274:login:Penguin
07/02/01 02:17:40 PGK/1yAn
>>272 Woody
>>273 Sarge

なんじゃね?


275:267
07/02/01 20:18:45 3k/3jep9
>>268
krfilterは普通に有名なので、別に説明なしで書いても通じるかと。
オレは「krfilter」と「その他のパケットフィルタ」ってのはなんなんだ?と聞いただけです。

使ってるのがiptablesだろうとipchainsだろうと、FreeBSDのIPFilterだろうと、
韓国のIP蹴ったら他のフィルタかけられないという制限はないんですよ。

なので、何をしようとして何に悩んでるのかが、サッパリ分かりませんって話ね。

276:login:Penguin
07/02/01 21:40:36 pos80lC5
>>266に書いてあるのを見る限り、krfilterと他のフィルタリングの両立はやろうとしてるんじゃない?

ただ、フィルタの設計を見るだけでは「その他」の部分で何をやりたいのかがよく見えないけど。
何があってどうしたいのかを明らかにしないとアドバイスの仕様もないというか‥

277:login:Penguin
07/02/03 09:11:07 Fa2DRFua
>>276
振り出しに戻るw

>>266:krfilterとその他のパケットフィルタを同時にやりたい
>>267:同時も糞も分けて考える理由がない。何か別のことを言ってんのか?
>>268:krfilterとは。。。
>>275:言ってることがズレズレ
>>276:両立したいのでは?

元々iptablesのフィルタに両立も糞もない。
別のことを聞きたいのなら、何をしたいのか説明してくれ。

278:login:Penguin
07/02/03 10:13:18 wtw54you
たぶん
> iptables -A INPUT -p tcp -m state --state NEW -j KRFILTER
をどこに突っ込むかってことだろう。

ちなみに俺は簡単に書くと
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -j KRFILTER
iptables -A INPUT サーバ各種のポート -j ACCEPT
...
ってしてる。この場合、--state NEW はなくてもいいだろうけどな。


279:login:Penguin
07/02/03 21:54:44 Mbd9W+hX
debian sidでguarddogを使って、iptablesを設定したのですが、
コンソールにdropが出てきてしまいます。
出てこないようにするには、何をチェックしたらいいでしょうか。

280:login:Penguin
07/02/03 22:34:17 oTECPBfb
BitTorrentを使う場合のiptableの設定どうしてます?

281:login:Penguin
07/02/03 23:13:19 v39deslj
ESTABLISHED,RELATEDをACCEPTするか、
6881:6889をACCEPTすればいいと思うんだが。

282:login:Penguin
07/02/13 23:22:23 9OlP74GS
ブルートフォース対策してルータの22番ポートを開放したんだけど

22番をアクセスしてくるのはkrfilterで引っかかるwwwwwwww

283:login:Penguin
07/03/02 22:28:34 JTDxz/pM
すみません、iptablesを使用したらFTP PASVが通らないようになりました。
任意に通すようにするにはどうすればいいんでしょうか?



284:283
07/03/02 22:32:14 JTDxz/pM
自己解決・・・・スレ汚しすみませんでした。

285:login:Penguin
07/03/04 02:23:21 rtydovR9
ワークステーションに iptables を導入しましたが、不特定多数のホストへのSSH の接続がうまくできません。
外向きの TCPは全て許可して、内向の sshポートに関してはdropしています。
どこかのホストに ssh で接続しようとすると、接続できず以下のログがのこります。

DROP: SRC=相手ホストIP DST=自ホストIP LEN=64
TOS=0x00 PREC=0x00 TTL=54 ID=57754 DF
PROTO=TCP SPT=22 DPT=34531 WINDOW=49248 RES=0x00 ACK SYN URGP=0

これは帰りのパケットでしょうか?iptablesというのは帰りのパケットも
考えて書かないとダメなんでしょうか?
ipfilterなら、帰りもうまく処理してくれるんだけどなぁ。

286:285
07/03/04 02:35:47 rtydovR9
解決しました。
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
でした。このへんは、ipfilterと同じでした。m(_ _)m

287:login:Penguin
07/03/05 03:31:35 opQvOFx4
# iptables -P INPUT DROP
# iptables -P FORWARD DROP
# iptables -P OUTPUT DROP
# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
# iptables -A INPUT -i lo -j ACCEPT
# mkdir /etc/iptables
# touch /etc/iptables/rules.conf
# iptables-save > /etc/iptables/rules.conf
# echo "pre-up iptables-restore < /etc/iptables/rules.conf" >> /etc/network/interfaces

デスクトップユーザーとしてクライアント用途でLinuxを使うのであれば、
これでファイアウォールの設定はたぶんO.K.のはず。
ただしBittorrentなどのP2Pアプリを使う場合には対応できないかも。

288:login:Penguin
07/03/05 07:37:47 X82Cl+Nu
>>287
それって出れる?

289:login:Penguin
07/03/05 07:39:12 X82Cl+Nu
ゴメソ。NEW見逃してた。

290:login:Penguin
07/03/08 01:00:59 jbsn06pA
iptables 1.3.7をダウンロードしてきてコンパイルしたんだけど
recentモジュールが無い生成されていないからipt_recentが出来ない・゚・(つД`)・゚・

recentモジュールをlibに生成するにはどうすればいいの?

教えてエロい人。

ちなみにdebian sarge kernelは2.6.20

291:login:Penguin
07/03/08 08:35:56 j9wpKKjR
>>290 くだ質スレで質問なさったほうがレスポンスがよいと思われ

292:login:Penguin
07/03/08 10:29:56 jbsn06pA
>>291
ありがとう。そうします。

293:login:Penguin
07/03/15 18:26:56 +e6f4Vst
ウノウラボ Unoh Labs: 専用サーバを構築するときにまず行う4つの設定
URLリンク(labs.unoh.net)

・外部からの接続は、基本的にすべて拒否するが、ローカルネットワーク内からの接続は許可する
・ポート転送は許可しない
・ローカルホストからの接続は、すべて許可する

の例が載っているけど、
この設定って合ってるの?

294:login:Penguin
07/03/15 18:52:04 jQc5V+dg
>>287
># iptables -A INPUT -i lo -j ACCEPT

これなに? 意味あるの?

295:login:Penguin
07/03/15 23:19:44 qc6IOWMh
ゲートウエイサーバ(12.34.56.78と表現します)から
IN=eth1 OUT= MAC=(略) SRC=12.34.56.78 DST=224.0.0.1 LEN=28 TOS=0x00 PREC=0x00 TTL=1 ID=43446 PROTO=2
というパケットがたくさん来ているのですが、
これはブロックしてても良いのでしょうか?


296:login:Penguin
07/03/16 00:23:25 9kWMpe6D
>>294
loopbackにくるパケットは許可するってことだろ

297:login:Penguin
07/03/16 00:51:06 mW15p1Xn
BruteForceとしてport22とport21を監視しているのだが、結構いい感じだ。

krフィルターとipt_recent最強。

298:login:Penguin
07/03/17 18:45:42 Yt91YwSk
すみません。質問お願いします。

URLリンク(cyberam.dip.jp)
の後半にあるスクリプトを参考に iptables の勉強をしています。

このスクリプトですが、
Server <-> LAN: 全て許可
Server <-> WAN: ポートを指定して許可、それ以外は拒否
LAN -> WAN: ポートを指定して許可、それ以外は拒否
WAN -> LAN: Ping のみ許可、それ以外は拒否
となっているように思うのですが、LAN -> WAN と WAN -> LAN の
コメント行にある ".....ACCEPT" の意味がよくわかりません。

LAN <-> WAN は許可……?他と何が違うのでしょうか?
お分かりの方がいらっしゃいましたら教えていただけませんでしょうか?
よろしくお願いいたします。

>>287
iptables -A OUTPUT -o lo -j ACCEPT
も必要ではないでしょうか。

299:login:Penguin
07/03/18 10:14:25 lkW62HcB
moblockの賢い使い方教えちょうだい。
例えばbittorrentだけに使う場合どうやるの?

300:login:Penguin
07/03/18 10:22:28 tZFwhAqA
URLリンク(www.simonzone.com)

超おすすめ

301:298
07/03/21 02:50:12 ZrXMqD8R
失礼します。
誠に勝手ながら、くだ質に移動させていただきたいと思います。
このレスを見て、答えてくださる方がいらっしゃれば、
くだ質にいらしてください。
よろしくお願いいたします。

302:login:Penguin
07/03/21 11:58:02 CJ4NEFZh
>>298
> LAN <-> WAN は許可……?他と何が違うのでしょうか?

FORWARDだろ。サーバ兼ルータ的な使い方なんじゃね。
俺んちもそうだけど。

> iptables -A OUTPUT -o lo -j ACCEPT
> も必要ではないでしょうか。

OUTPUT許可のところに--state NEWが含まれているから要らない。
俺も>>288,289で見落としてたw。

303:298
07/03/21 17:48:47 O8gADGKy
>>302
ありがとうございます。
".....ACCEPT" は、何を許可しているのでしょうか?
FORWARD とのことですが、ルータの機能を ACCEPT と呼んでいるのでしょうか?

> OUTPUT許可のところに--state NEWが含まれているから要らない。
なるほど。この OUTPUT は、eth0 でも lo でも有効なのですね。

304:298
07/03/21 18:02:05 O8gADGKy
すみません、sage 忘れました。
もう一度読んでいて気がついたのですが、
実は ACCEPT ではなくて、FORWARD の事だということなのでしょうか?
なるほど、それだったら納得がいきます。

305:login:Penguin
07/03/21 19:35:41 CJ4NEFZh
え~と、コメントでしょ? あんまり難しく考えない方が。

> ".....ACCEPT" は、何を許可しているのでしょうか?

そのコメントに続く設定郡。
例えばこのままだとLAN内からOB25P時の587ポートに接続できないから、
それを許可(ACCEPT)したかったら、ここへ追加しましょう見たいな。
iptables -A lan_wan -d メール鯖のIP -p tcp --dport 587 -j ACCEPT

ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が
多いと思うけどなぁ。

306:298
07/03/22 05:11:55 xJMgMLIF
>>305
たびたびありがとうございます。

確かにその通りですね。
でも、それだとなぜ Server <-> WAN や Server <-> LAN には ".....ACCEPT" が
書いていないのでしょう?

ですが、
> え~と、コメントでしょ? あんまり難しく考えない方が。
その通りですので、とりあえず解決とさせていただきます。
とりあえず、知識のある方が見ても特別の意味はないということが分かっただけで、
十分です。
どうもありがとうございました。

> ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が
> 多いと思うけどなぁ。
そうですね。ただ、基本は DROP というのが
良いお手本になるのではないかと思います。

307:login:Penguin
07/03/30 22:56:25 8JVFIncu
> ただ、FORWARDはsmb等を明示的にDROPして他は許可にしている人が
> 多いと思うけどなぁ。
用途によりけりだろ。

308:login:Penguin
07/03/31 08:27:25 EltKK77L
URLリンク(fedorasrv.com) を参考にして、
中国と韓国からの接続を拒否しております。

COUNTRYLIST='CN KR'
wget -q URLリンク(ftp.apnic.net)
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
07/03/31 08:44:23 Ma3dh8rk
>>308
それはforで回すところで|grep -v xxx.xxx.xxx.xxxするだけ済むのじゃないのか。

310:308
07/03/31 09:11:45 EltKK77L
>>309
取得先のリストにはネットワークアドレスとホスト数が書いてあるようで、
教えて頂いたやり方で1つのIPアドレスを除外する事は出来ませんでした。
……って、これってシェルスクリプトの話になってしまうのでしょうか?

311:login:Penguin
07/03/31 22:14:16 0taKUXtt
ipcalc使えば解決しそうだが。

312:login:Penguin
07/04/03 10:15:25 z+dw3vDu
グラフィカルユーザインタフェース上でiptablesを設定できるツールって
何かありますか? できるだけ細かい設定にも対応していればいいんですが。

313:login:penguin
07/04/03 17:23:47 GE6Pjssu
つ [ URLリンク(www.atmarkit.co.jp) ]

314:login:penguin
07/04/03 17:48:47 GE6Pjssu
もひとつ [ URLリンク(www.asahi-net.or.jp) ]

315:login:Penguin
07/04/06 01:54:49 oz8TbWBc
emacs

316:login:Penguin
07/04/13 20:09:53 thUuY1hz
実に馬鹿な間違いをしたものだ。
Debian sidを使っていて、2.6.20のソースが落ちてきた。さあコンパイルしてインストールだ…と
思ったら、iptablesが起動時に有効にならない。
どうやら新しいカーネルでESTABLISHED,RELATEDを許可するルールが有効になってなかったようだ。
make oldconfigで設定を引き継いだのだが、Netfilter connection tracking support(CONFIG_NF_CONNTRACK_ENABLED)がセットされていなかったのだな。
道理でうまくいかないわけだ。

今、再コンパイル中だ。
おまえらもカーネル構築時には気を付けろよ、って俺みたいな馬鹿はいないかw

317:316
07/04/14 15:28:31 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
07/04/22 21:35:54 LpAHASwm
>>293
> $ sudo /sbin/iptables -A INPUT -i all -m state --state ESTABLISHED,RELATED -j ACCEPT
-i all つけると動かなかった
はずすと動いた

319:login:Penguin
07/04/27 15:20:12 +daqfGsX
SynFlood 対策に 1/s で 80/tcp に対する limit-burst を設定したいのですが、
最適値はどのように測定すればいいのでしょうか?

また、参考までに皆様の設定値を教えてください。

320:login:Penguin
07/04/27 15:29:57 mAH4GVwJ
>>319
SYNレートには最適値などない。ページのヒットレートやサーバの処理性能次第。


321:login:Penguin
07/04/27 21:06:39 xjr/suIm
もちろん、全てのサーバに対する最適値を質問しているのではありません。
自分のサイトに対するアクセス数などの要因が絡んでいる事は理解しています。

その上で、最適値の目安をつける方法をしりたいというお話です。

322:login:Penguin
07/04/28 00:35:34 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
07/04/29 20:41:31 TA2dVdQ7
あります

324:login:Penguin
07/05/20 21:36:26 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
07/05/21 06:08:43 kVyes7gq
>>324

>内側から一部のサイト(www.noaa.govとか@IT)がみられな

URLリンク(www.linux.or.jp)


326:login:Penguin
07/05/21 07:49:58 Zk1DSv/I
>>325
おお、ありがとうございます!ばっちり解決しました。

327:login:Penguin
07/05/27 15:39:23 OG+sq2nw
iptablesでapacheのlimitipconnみたいなことはできますか?
できるならぜひ教えてもらいたいのですが

328:login:Penguin
07/05/28 23:11:18 sHIi1tok
iptablesの設定でいろんなサイトを見ていたのですが
ppp0とかppp+とか出てきてわかりませんでした。
ppp0とかppp+って何ですか?

329:login:Penguin
07/05/29 00:01:07 nHY4srpO
>>327
connlimit で出来る、かも知れない。
(サポートしてないかもしれない。)

330:login:Penguin
07/05/29 00:19:58 z8TDg4YQ
>>328
それこそググれよ。

331:328
07/05/29 03:10:29 /srE7Qjl
すみません。
書かなくてもみなさんわかると思ったので書きませんでしたが
ググってわからなかったので質問しました。


332:login:Penguin
07/05/29 06:02:59 nHY4srpO
ppp0 とか ppp1 ってのは PPP 接続インターフェースの名前で、
ifconfig した時に、eth0 や lo と一緒に出てくる。(設定してれば。)

PPP 接続ってのは PPPoE するのに必要で、
ADSLモデム直結でLinuxをルータにしようとすると
WAN側が ppp インターフェース(ppp0とかppp1とか)になる。

ppp+ はアクティブなPPPインターフェースのどれか。

333:login:Penguin
07/06/04 16:54:55 /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
07/06/04 19:34:14 i9lW+1Uc
>>333
(1) "eth1の" ではなくて "NATルータの" な。
  デフォルトゲートウエイはマシン単位で設定するものであって、
  ネットワークカード単位で設定するものではない。

(2) "--to" ではなくて "--to-source" だな。

335:login:Penguin
07/06/06 12:19:16 YI/fHvZq
>>333
なんで2重にNATするの?
せっかくルータがあるのに。

336:333
07/06/06 15:09:10 YJltEUYM
>>334,335
レスありがとうございます。
社内NWで、NWを切り分ける必要があるからです。

・・・試そうとしたらクロスケーブルがないorz

337:login:penguin
07/06/06 15:57:04 VIR6ggRn
VLAN 対応のハブにしたら?

338:login:Penguin
07/06/06 17:38:32 YI/fHvZq
>>336
高機能ルータにしてVLANにしたほうが楽ですよ。

>>333
FORWARDもACCEPTしないといけないんじゃないかな。


339:login:Penguin
07/06/10 03:43:27 WfZdqta0
質問です。
krfilter のようなアジア地域に限った話ではなくて、
もっとほかの国々のIPアドレスもフィルタリングする方法ってないですか?
逆に日本だけOKとかでもいいんですが・・・

340:333
07/06/10 04:19:16 bkLFd8zx
レスありがとうございました。
いろいろあってNAT計画はお流れになりました(笑

>>339
うちは URLリンク(ftp.apnic.net) を使っていますよ

341:login:Penguin
07/06/10 19:55:39 kdglMI9l
>>339
私はここのデータを使わせてもらってます。
URLリンク(nami.jp)

>>340
APNICだけでは、足りないJPのアドレスがないですか?

342:login:Penguin
07/06/10 20:45:14 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
07/06/10 21:47:57 WfZdqta0
>>341
レスありがとうございます。

まさにこんなのを探してました。
今からawkの使い方を調べますw

344:login:Penguin
07/06/12 13:27:50 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
07/06/12 13:52:31 bNzfVXjZ
OSはCentOSを使っています。
ものすごく初歩的なことなのですが教えて下さい。
iptableを書き換えて、-Lで確認すると、希望通りに変更されています。
その後、/etc/rc.d/init.d/iptable restart します。
しかし、書き換えた内容が反映されていないのですが、何か足りないものが
あるでしょうか?

346:login:Penguin
07/06/12 14:07:51 u4WFCFNn
>>345
restartする前に、
/etc/rc.d/init.d/iptable save
で保存せにゃ駄目なんじゃない?
これで/etc/sysconfig/iptablesあたりに現行のが保存されるはず‥

俺はiptablesの設定はrc.localに書いちゃう人なので良くわからない(苦笑

347:login:Penguin
07/06/12 15:18:08 Vd+dHR6r
>$IPTABLES -P INPUT ACCEPT
>$IPTABLES -P FORWARD DROP
>$IPTABLES -P OUTPUT ACCEPT

書き間違えなのか知らんけど
$IPTABLES -P INPUT DROP
してな

iptablesは上からよんでいく
そして、上にある方を、優先してポリシーを適用するという大前提がある

348:login:Penguin
07/06/12 15:59:34 bNzfVXjZ
>>346
そのとおりでした。ありがとうございます。

>>347
素で間違えてました。ご指摘ありがとうございます。

349:login:Penguin
07/07/04 05:49:42 AjHyf33g
保守age

350:login:Penguin
07/07/04 11:09:43 UK9QnhoX
Redhat 系では /etc/sysconfig/iptables に設定が置いてあって、
起動時にそれが rc 以下のスクリプトで反映されることに
なってますが、そもそも /etc/sysconfig/iptables って
system-config-securitylevel が作成するものですよね?

もっと細かい設定をしたいときにはこのファイルを vi なんかで
いじるというのが Redhat 流儀なのでしょうか?それとも
手動での設定項目は別に用意するべきなのでしょうか?

いままで Debian 系をメインで使っていたので、
まだ Redhat 系の流儀がわかっておりません。
できるだけ郷に入っては郷に従えで行きたいと思っています。

351:login:Penguin
07/07/04 11:19:00 1/Qyerts
>>350
/etc/init.d/iptables save かな。

352:350
07/07/05 07:20:59 VsSiocxY
結局、system-config-securitylevel を使わない前提で
/etc/sysconfig/iptables をエディタで書き換えてます。
ときどき /etc/init.d/iptables save で別ファイルに保存して。

353:login:Penguin
07/07/08 10:24:06 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
07/07/08 12:12:05 YCfVpWHt
たとえば掲示板か何かを公開した時に
掲示板スクリプトにセキュリティホールが存在して
(本来あってはならないことだが、しばしば起こりうる)
気づかぬうちにボットネットに参加してしまうかも知れない。
そういう時に RELATED と ESTABLISHED だけ許可しておいて
他は policy で DROP しておけば、犯罪ネットに貢献しないで済む。

355:login:Penguin
07/07/10 15:28:15 U82mxVZP
通信を許可するポートを動的に変更する方法はありますか?
動的というか、IPアドレスではなくてホスト名で許可したいのですが。

例えば、自分のノートPCの出口のグローバルIPをダイナミックDNSとして
ホスト名が常に変更されるようになっている時、そのダイナミックDNSの
ホスト名から得られたIPアドレスは通信できるようにiptableを設定
したいのですが、そのような事はできますか?

356:login:Penguin
07/07/10 18:00:51 zGJfejuy
macアドレス使うとか

357:login:Penguin
07/07/10 20:30:31 XPuS8ReG
iptables -t nat -A PREROUTING -d (グローバルIP) -p all -i ppp+ -j DNAT --to 192.168.0.2

みたいなのて、
プロバイダ割り当てIPがかわるたびに
やらなくちゃいけないでつか?

358:login:Penguin
07/07/11 11:03:28 D3zZXJq+
>>357
うん。たとえFQDNで指定しても iptables コマンドを
実行した瞬間に名前解決されるわけだからね。
適当な Dynamic DNS に登録しておいて、
cron で定期的に iptables 設定しなおすとか。

359:login:Penguin
07/07/11 11:06:23 nph/g5pi
全てのlog.は出てます。


360:amel
07/07/11 11:07:41 nph/g5pi
aaa

361:login:Penguin
07/07/11 11:14:47 dikq2zGa
ほげ?

362:login:Penguin
07/07/11 18:13:44 7rPXioeP
>>357
構成と何がやりたいのかによりけりだけど、
eth0 とか ppp0 とかのインターフェース指定じゃ無理なケース?

363:login:Penguin
07/07/19 10:13:27 82b1F1Ds
>>341
そのページの説明を参考にiptablesを設定すると何千行にもなるんだけど、そんなもの?
今のところ普通に動いてるから、いいのかな?

364:login:Penguin
07/07/19 10:58:27 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
07/07/19 11:20:33 82b1F1Ds
>>364
レスthx、安心した。
wgetとcronで勝手に更新するようにしてみたんだけど、行数の多さに不安になってたのよ。

366:login:Penguin
07/07/19 21:57:13 uF7HBJve
firestarterで受信全閉め、送信全閉めand一部開けにしてる俺は
ダメな奴でしょうか?
やっぱ、色々やらんとダメなんですか?

367:login:Penguin
07/07/19 23:44:47 C5Hsn39j
コマンド叩いてるけど俺も同じような感じだよ!
開けてるのはhttp,https,ftpだけだったり

368:login:Penguin
07/07/24 17:15:59 ShS11Qps
firestarterの日本語訳って少し変

369:login:penguin
07/07/24 20:22:39 XmHSl5AF
>366-367
素朴な疑問です。例えば、http(80),https(443),ftp(21)以外は、送受とも全閉め…の場合、
そのセッションで許可された際に1024以上の任意のポートが使用されたセッションもブロック
されるんでしょうか?

370:login:Penguin
07/07/25 08:42:24 BPmm4tyb
>>369
> そのセッションで許可された際に1024以上の任意のポートが使用されたセッションもブロック

意味不明。

単にポートだけでOUTPUT側をフィルタした場合、当たり前だが1024以上も対象になる。
なのでiptablesのconntrackモジュールを併用してあげるといい。

371:login:Penguin
07/07/25 10:19:28 c/4qaAtX
iptablesでアプリケーション単位で防ぐ事って出来ますか?

Firefox → TCP/IP 送信 80番 ok
Thunderbird → TCP/IP 送信 25,110番 ok
gFTP → TCP/IP 送信 20-21番 ok

みたいな。

372:login:penguin
07/07/25 13:55:46 nEhKGnnq
アプリケーション使うPC上でなら可能。つーかそれをFWと言うのでは?

経路上のポートからはアプリケーション判定は無理。

373:login:Penguin
07/07/25 14:13:02 0k5ibQId
> アプリケーション使うPC上でなら可能。

おー。そうでしたか!
参考までに一例教えていただけませんか?

「ACCEPT tcp -- 192.168.1.1 anywhere tcp dpt:www」
これだと他のソフトでも全部80番を通してしまいますので、

「Firefox のみ TCP 80番 送信をok」にしたいです。

374:login:penguin
07/07/25 18:13:16 nEhKGnnq
>373 スマソ。専用のFWを使ってね…と言う意味でした。iptables では無理。

375:login:Penguin
07/07/25 19:58:26 /D3x9F85
SELinux とかでパケットに印を付けて
その印を見て iptables や iproute で制御する事は可能らしい

やった事ないので確かなことは言えないが

376:373
07/07/25 21:27:20 OFMlwdEN
>>374
すまん、こっちも勘違いでした

>>375
なるほど、SELinuxですか
ちと調べてみます。ありがとん

377:login:Penguin
07/07/26 07:48:38 JylDrctM
--*id-owner系のオプションでなんとかならない?


378:login:Penguin
07/07/26 09:49:19 YatnvMaY
>>377
シンプルなやり方としてはそれもアリだね。

ただコマンド名でしかマッチしないので、
同じ名前で全く別のプログラムがあったりすると区別できなくなってしまう。
(これはWindowsのアプリケーションファイアウォールでも同じことが言えるが)

379:たけぼん
07/07/29 05:56:27 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:名無しさん@そうだ選挙に行こう
07/07/29 10:53:02 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:たけぼん
07/07/30 13:42:25 82MghHmK
名無しさん、ありがとうございました。

382:たけぼん
07/07/30 13:49:51 82MghHmK
-dの後の0/0て何ですか?初めて見ました。

383:login:Penguin
07/07/30 13:54:13 wIebROn1
>>382
0.0.0.0/0 と同じ意味。要はIPv4アドレス全て。

384:たけぼん
07/07/30 15:46:34 82MghHmK
ありがとうございます。

385:login:Penguin
07/08/01 13:45:52 xTh2AlOO

                         l|l l|l  
     ;y=     ;y=            ハ_ハ  ニ、ニダァ?  
  三 ┗<丶`∀´>┛              (^<;`д´>^)  
  三     ┛┓                  )  /
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  (_ノ_ノ



386:login:Penguin
07/08/03 19:33:17 NtWU9CUf
stateマッチのINVALIDって、実際には何がINVALIDになるんかな。

URLリンク(www.asahi-net.or.jp)
URLリンク(www.asahi-net.or.jp)
に大まかには書いてあるけど、詳細がわからん。
例えばTCPで、新規じゃないけどESTABLISHEDではなくINVALIDになるのは
どういうときか、とか。もしかしてチェックサム不正だけ?


387:login:Penguin
07/08/03 20:51:40 wc/AKMVD
>>386
よくあるのがセッション乗っ取り目的の偽装TCPパケットだな。
SYNを送受信してないのにいきなりACKフラグだけ立ったTCPパケットが来たりすると
INVALIDになる。

388:386
07/08/03 21:12:34 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
07/08/03 22:02:17 wc/AKMVD
>>388
TCPヘッダの現在の状態を見て明らかに無効なパケットであれば
NEWではなくてINVALIDだよ。

390:login:Penguin
07/08/31 01:30:48 /QsvseIU
>>389
どこからか明らかかってのはありますが、結構 INVALID じゃなくて NEW になる
こともあるとか。なので、どこぞの HOWTO だか FAQ には、TCP の場合はちゃんと
フラグも調べるようにと書いてあったような。

うろ覚えですまん。


391:はまってます
07/09/02 18:24:13 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:はまってます
07/09/02 18:31:00 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
07/09/02 18:43:25 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
07/09/02 18:52:17 noS94zlb
>>391
iptables -A FORWARD -p tcp--tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu


395:login:Penguin
07/09/02 18:54:09 noS94zlb
げ、393氏かぶったすまそ。よくみるともれの間違ってるな・・・。

# iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

多分これでいけると思うけど。



396:はまってます
07/09/02 21:44:39 MBbpYlqy
>>393-395
早レスありがとうございます。
でもチェーンフラッシュの直後に追加して試してみましたがやっぱり駄目でした。
私の環境の場合、ルータAのネットワーク内からのアクセスは大丈夫で
ルータBのネットワークからだと駄目なので、書く場所とか書き方に少し
工夫が必要なのでしょうか?教えてクンですみません。

397:login:Penguin
07/09/02 22:08:00 xFZ3sRLE
>>396
今のルールセットじゃ無理だろう。
FORWARDチェインの冒頭に入れてみれ。

398:login:Penguin
07/09/02 23:55:12 4sOAdWya
>>397
今試せない状況なので追加質問だけさせて下さい。
繰り返しの説明になりますが、
>>392の設定でもルータAのネットワークからのアクセスは大丈夫なんです。
さらにもう一回マスカレードしているルータBのネットワークからのアクセス時
だけ駄目なんです。この場合も-o ppp0へのパケットの調整が有効でしょうか?

399:login:Penguin
07/09/03 08:23:53 kMimNQBM
>>398
まずはやってみれ。

400:はまってます
07/09/04 21:07:32 ftQujwlz
>>398
自己レスです。
--clamp-mss-to-pmtu では駄目で、 --set-mss 1452 で解決しました。

皆さんのレスが、何か私の環境を考慮してくれていないなあ
と思っていたのですが、私の>>391に大事な説明が抜けていたからだと思います。

後で>>396にちょっと書いたのですが、
TCPSSの設定をしなくてもルーターAのネットワークでは元々問題ありませんでした。
私のpppoe環境のMTUは1492ですが、ルータAのネットワーク内の各クライアント(Win,Linux)
は、それぞれpath MTU discoveryを働かせて正しく通信できていました。

問題が生じていたのはさらにもう一回IPマスカレードをかけた、ルータBのネットワーク内の
クライアントだけです。

ルーターBのネットワークのクライアントにとってルーターAは途中経路にあるルーターに
過ぎず、--clamp-mss-to-pmtu は意味がなかったのでしょう。

401:はまってます
07/09/04 21:12:26 ftQujwlz
昨日はルーターBのネットワーク内の各クライアント
(Solaris, FreeBSD, Debian, Ubuntu, RedHatEL, Windows)にMTUを設定していました。
全部問題なく設定はできたのですが、今後面倒だなあと感じ、ルータAにNICを追加し
ようかなと思っていた矢先、固定値を設定したらどうかなと試してみたらうまくいきました。

402:login:Penguin
07/09/04 21:13:31 lCleCBg/
>>400
ルータBでICMPをフィルタしていて「分割しなきゃダメだよ」というメッセージが
届けられてないのではないかと。

403:login:Penguin
07/09/04 21:32:27 nEQBaeKm
ここ最近Megauploadというオンラインストレージ会社から強引にサーバ上にあるファイルを引っこ抜かれています
実質的なプロキシーサーバのようですが何かよい対策はありませんか?

404:はまってます
07/09/04 21:33:34 ftQujwlz
>>402
そうです。ルータAのネットワーク内でping -f -lで調査すると
DFメッセージが帰ってきますが、
ルータBのネットワーク内で同じ調査した場合、パケットが
戻りません。

ルータBはプラネックスのBRL-04FWUという安ルータです。
カスタマイズが殆どできません。
以前、LAN内で使っているので「smbのパケットを落とさないように
できないか」とサポートにメールしたことありますが、返事さえ
帰ってきませんでした。

405:login:Penguin
07/09/18 00:50:22 IMwoI/q8
つなぎたいIP、ポートを特定して設定した場合、

安心していいでしょうか。
なにか破られたりする場合があるのでしょうか?

406:login:Penguin
07/09/19 09:47:23 AI19ptTj
>>405
まず一つめに注意すべきはソースアドレスは偽装可能であるということ。
TCPの場合はコネクションを張るために最低でも1往復のパケットが通るから、
偽装したパケットであれば相手にSYN+ACKが届いた段階で「知らねーよ」とRSTが
返される。それ以外の場合は片道だけで通信が成立してしまうことが多い
(上位層に依存するが)ので、偽装したパケットによって不正に通信を成立させることが
できてしまうかもしれない。

二つめは設定した発信元IPアドレスのマシンに侵入されてしまった場合が
ありうること。アドレスとポート番号だけでしかチェックしていないのであれば、
そのマシンに侵入された時点でもう一つのマシンも無防備になってしまう。

407:login:Penguin
07/09/19 22:49:00 TdpQYuo3
ありがとうございます。

偽装したパケットの場合は
syn後、偽装IPに返事が返されると思うのですが、
攻撃者はその受け取りができるのでしょうか。


408:login:Penguin
07/09/20 10:11:17 YxtApnBM
>>407
だからそれは>>406で書いてるだろ。
TCPであれば最低でも一往復の通信が正しく成立しないと動作しないから、
偽装したところでそれは意味を為さない。

409:login:Penguin
07/09/25 21:31:29 6F26j5zh
IPTABLESでwinnyの通信をさせなくしたいんですが、可能でしょうか?

410:login:Penguin
07/09/25 21:44:25 wLn1k+nl
>>409
winnyはファイアウォールをかいくぐるために乱数でTCPポートを決定するため、
「これがWinny」と断定して通信を手段することは無理。

http proxyなどの中継サーバを介して外部と通信させ、IPレベルで外部と直接通信
できないような仕組みを作るべきだろう。

411:login:penguin
07/09/26 00:20:20 q+poyakW
>409
>410氏も書いてあるとおり、LAN -> WAN は 許可したPC以外は DROP でOK?
許可したPC(XP)は、Winny が起動しないツールを入れて監視するか、制限ユーザに汁。

412:login:Penguin
07/10/16 03:42:51 mB8Oo12S
うざい国からのアクセスを全て遮断スレより誘導されてきました。

スレリンク(mysv板:469-470番)
これを使わせていただき、日本以外からの接続を弾きたいと思っています。

スレリンク(mysv板:831番)
アドバイスをいただき上記のように手直しをした後、
下記のようにiptablesを設定し海外串を差して試したところ、
上手い具合に日本以外は弾いてくれたのですが、
同時にLAN内の他PCからhttp・ftp・sshへのアクセスも出来なくなってしまいました。

どこを手直しすればよいのでしょうか?
どうかお知恵をお貸し下さい。


countryfilter.plを書き換え、
filter.shを再作成した後に書き設定を行いました。

# iptables -P FORWARD ACCEPT
# iptables -P OUTPUT ACCEPT
# iptables -A INPUT -s 127.0.0.1 -j ACCEPT
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# iptables -N CKFILTER
# source filter.sh
# iptables -A CKFILTER -j LOG --log-prefix "Rej-TCP "
# iptables -A CKFILTER -j DROP
# iptables -A INPUT -p tcp -m state --state NEW -j CKFILTER
# iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
# iptables -A INPUT -p tcp -i eth0 -s 192.168.0.0/24 --dport 22 -j ACCEPT
# iptables -A INPUT -p tcp -i eth0 -s 192.168.0.0/24 --dport 20:21 -j ACCEPT
# iptables -A INPUT -p tcp -i eth0 -s 192.168.0.0/24 --dport 50000:50029 -j ACCEPT
# iptables -P INPUT DROP

413:login:Penguin
07/10/16 08:52:57 JaL0o8rc
countryfilter.pl から生成された filter.sh の抜粋を貼ってくれ。
途中の IP アドレスをダラダラ記述した部分は不要だから。

414:login:Penguin
07/10/16 09:49:00 mB8Oo12S
レスありがとうございます。
filter.shは下記のようになっていました。


#!/bin/sh

# Country based filter from *NIC database.
# For APNIC, get from fURLリンク(ftp.apnic.net) .
# Created: Mon Oct 15 21:04:13 2007
#
# This filter detects access from contries;
# JP

# variables. change these values before run.
IPTABLES=/sbin/iptables
FILTERNAME=CKFILTER
TARGET=RETURN

# Database version 20071015
$IPTABLES -A $FILTERNAME -s 58.0.0.0/15 -j $TARGET
(以下IP羅列が1800行くらいまで続いてます)

415:login:Penguin
07/10/16 23:19:57 JaL0o8rc
これ見ただけだと問題なさそうだけど・・

先頭以外でポリシー書いてるスクリプトを
そのまま使ってるのが気になる。
初めにルールの初期化してる?(-F だったか。)

そこに問題が内容であれば、度々であれなんだが、
# iptables-save > filter-rule.txt
とでもして、filter-rule.txt をいい感じに抜粋したのを貼ってもらえると
アドバイス出来るかも知れない。

416:login:Penguin
07/10/16 23:41:14 mB8Oo12S
レスありがとうございます。

うーん・・・問題ないですかorz
あと、設定をやり直す前には必ず-Fをしており、
-Lで確認しても全て許可と表示されています。
また、filter-rule.txtは以下のとおりです。

# Generated by iptables-save v1.3.6 on Tue Oct 16 23:29:52 2007
*filter
:INPUT DROP [23:2358]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [142:9836]
:CKFILTER - [0:0]
-A INPUT -s 127.0.0.1 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m state --state NEW -j CKFILTER
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -s 192.168.0.0/255.255.255.0 -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.0.0/255.255.255.0 -i eth0 -p tcp -m tcp --dport 20:21 -j ACCEPT
-A INPUT -s 192.168.0.0/255.255.255.0 -i eth0 -p tcp -m tcp --dport 50000:50029 -j ACCEPT
-A CKFILTER -s 58.0.0.0/255.254.0.0 -j RETURN
-A CKFILTER -s 58.3.0.0/255.255.128.0 -j RETURN
(以下IP羅列が1800行くらいまで~省略)
-A CKFILTER -s 222.231.64.0/255.255.192.0 -j RETURN
-A CKFILTER -s 222.231.128.0/255.255.128.0 -j RETURN
-A CKFILTER -j LOG --log-prefix "Rej-TCP "
-A CKFILTER -j DROP
COMMIT
# Completed on Tue Oct 16 23:29:52 2007

417:login:Penguin
07/10/17 00:03:00 vmGHd6pV
わけわかんねー状態で外とつないで怖くないのか?
「うざい国」以前にあんたのPCが「うざいマシン」になるかもだよ。

ログに何と出てる? (貼らなくていいよ)
そのログ出した後どうしてる?
何も出てないなら1行ごとにログ出すようにしてみろ
それも面倒ならiptables -L -vvでどのルールにひっかかったのか
調べられる。量が膨大になるならfilter.shを除いてみろ
丸投げやめて、少しぐらい頭使おーぜ

418:login:Penguin
07/10/17 08:48:52 D7VNNAnN
どこの世界も、偉そうな奴はホント態度が偉そうだよな。何様?

419:login:Penguin
07/10/17 10:10:47 NFzvWXXg
>418
俺様

420:login:Penguin
07/10/17 10:16:45 oO9YVbD6
銀さまハァハァ

421:login:Penguin
07/10/18 13:10:58 v3qQ8OO3
>>417
「うざい」レスだなぁw

422:login:Penguin
07/10/18 16:09:39 rMgHYbZo
うざい奴をdrop  

423:login:Penguin
07/10/19 01:37:05 fKrRqDHD
カーネルを2.6.23にするとmoblockが使えなくなるぞ
NFQUEUEがおかしいぽい


424:login:Penguin
07/10/19 02:35:56 Cz6QQ79V
Xenの上でVistaを走らせてたいのですが
ファイヤーウォールの適用されるモードはどれなんでしょうか?
そのときガチガチに守れるテンプレートがあれば教えてください。
やりたいことはWEBとメールです。

425:login:Penguin
07/10/19 08:57:50 RvEMcjkh
>>424
Xenの挙動理解してこい

426:login:Penguin
07/10/19 15:59:02 RvEMcjkh
>>412
まだ見てるかな?
向こうのスレの831=836です

大ボケかましてた
このままだとプライベートIPがフィルタリングされてるね

CKFILTERチェインの作成と
filter.sh実行の直前に、プライベートIPもRETURNにしてみて

# iptables -N CKFILTER
# iptables -A CKFILTER -s 192.168.0.0/24 -j RETURN
# source filter.sh
# iptables -A CKFILTER -j LOG --log-prefix "Rej-TCP "
# iptables -A CKFILTER -j DROP

427:真剣です。
07/10/20 05:32:21 Ln9PiS8q
>>425様へ
厳しい、言い方の中に答えを見出しました。
つまり出来ないということですね?
URLリンク(itpro.nikkeibp.co.jp)
こちらを見て出来る可能性があるのではと思いました。
質問を代えます。1台のPCでFedora7のファイヤーオールを適用してVista
を動かせないでしょうか?

428:login:Penguin
07/10/20 07:22:16 ZpN5JaDu
質問の仕方から想像するに、仮想化をまったく理解していないとみた。
ファイヤーウォールと仮想化は直接には関係ない。

というか、ホストマシンがファイヤーウォールで通信制限されてたらゲストマシンも普通されるけど。
# ファイヤーウォール側でアプリケーションごとのうんたらとか、細かいことをいろいろやっていると、
# 思ったとおりにきちんと通信を遮ってくれないとか悩むかもしれないが(ちゃんと指定した通りに動いているよ!)まぁそれはそれで

VMwareとVista Enterpriseを導入してVMwareの設定をNATモードとかなんとかに設定しておけば充分では?

429:login:Penguin
07/10/20 09:38:02 titCb4KC
>>424がセキュリティ考えても良くはならない希ガス

430:login:Penguin
07/10/20 11:31:05 1bReyt4O
>>427
できる

431:login:Penguin
07/10/20 13:06:08 rqJkme3V
Fedoraをルーター代わりのブリッジにすればいいんじゃねぇ?

>ファイヤーオール
クソワロタ

432:真剣です。
07/10/20 13:34:26 Ln9PiS8q
皆さんありがとうございます。
>>430さんへ431さんの言うとうり
ドメイン0経由ブリッジというのが可能なのですか?
それともVMwareならそのままOKということでしょうか?
モードすらよくわっかていないのですが、ここがはじめの一歩なんです。
誰かもう一声ください。

433:login:Penguin
07/10/20 17:24:40 F9L9feWR
つながればいいのならNATでいいんじゃね

434:login:Penguin
07/10/21 14:28:51 ugqBpt5b
VistaのPFWは随分マシって聞いたぞ
そのまま使えばいいんじゃないの?

ホストOS側でiptablesで制限かけるのって
そもそも、仮想化としてはおかしい気がする

435:login:Penguin
07/10/21 15:04:00 fUKGOJu+
ホストマシンすなわちルータとして扱いたいつーか、考えればいいんだろうな
そこで一元管理していれば、いちいち仮想(下層?w)マシンでFWとか考えずに済む

436:login:Penguin
07/10/21 15:09:08 fUKGOJu+
ホストOSなしで仮想化してくる事も(いまに)出来るだろうけど、(今回)それは考えないって事でw

うち今鯖4つ建ててるんだけど、いちいちアクセス制限管理してるのめんどくさすぎる。
ルータが欲しいけど、これって5つめの鯖を建てなきゃならないって事だよね………orz
仮想化出来てる奴が羨ましい。

437:質問
07/10/21 15:16:21 KkCVzm+C
iptablesの勉強中なんですが、
今見ている2冊の本に、
iptables -P INPUT DROP
を設定してから、許可するルールを作成していくということが書かれているわけですが、
実際上記の設定をしたとたん、
sshでの接続はもちろん、linuxが起動しているローカルPCでもbashの起動、電卓やブラウザの起動までも
できなくなります。(結局再起動でiptablesの設定を初期化)
なにがまずいのでしょうか?

438:login:Penguin
07/10/22 18:32:33 b+3+SL2w
lo

439:login:Penguin
07/10/22 21:25:16 zx8b4vdE
そんなダメな本は晒せよ

440:login:Penguin
07/10/22 23:10:20 iO12OLhI
DROPでいきなり終了じゃんw

441:login:Penguin
07/10/22 23:26:31 qzhWJQay
俺も
> iptables -P INPUT DROP
してるが問題ないよ
その後のアクセス許可がおかしいんじゃないの

442:login:Penguin
07/10/23 00:07:33 AFNajVwL
> その後のアクセス許可
についてきちんと書いてないって話をしてるんじゃなかろうか。
(実は本にはきちんと書いてあるのに 437 が理解してないだけの可能性もある。)
そりゃポリシーは DROP にするのが普通だよ。

443:login:Penguin
07/10/23 00:45:51 6dav7CS2
最近の RHEL は INPUT のデフォルトを ACCEPT にして
最後に -j REJECT --reject-with icmp-host-prohibited しとるが、
あれってどうなんだろう?

遅いマシン使ってると、デフォルト ACCEPT のルールが投入されてから、
最後の -j REJECT が投入されるまでの間、INPUT 入り放題?
とか心配したんだが、素人の杞憂?

444:login:Penguin
07/10/23 01:19:18 7Gy/yl8a
ポリシーをACCEPTにしたら拒否するルールをずらずら並べるもんずら

445:login:Penguin
07/10/23 01:27:44 nWZglh6T
質問させてください。

iptables -A INPUT -f -j LOG --log-prefix 'IPTABLES LOG:'
このようにしてるのですがIPTABLESのログが画面に出力されてしまいます。
画面に出力しないようにしたいのですがどうしたらいいでしょうか?
よろしくお願いします。

446:login:Penguin
07/10/23 01:34:56 nWZglh6T
>>445です。ミスりましたので訂正。

iptables -A droplog -j LOG --log-level info --log-prefix "LOG : "
このようにしてるのですがIPTABLESのログが画面に出力されてしまいます。
画面に出力しないようにしたいのですがどうしたらいいでしょうか?
よろしくお願いします。

447:login:Penguin
07/10/24 00:08:48 SbBD4pB3
iptables -A INPUT -j LOG --log-prefix "iptables: "
うちの環境だとこれで/var/log/messagesにずらずらとログが吐き出されてるよー。

448:login:Penguin
07/10/24 00:36:49 jqvnxtk4
>>446
man syslog.conf

449:login:Penguin
07/10/24 07:28:33 8AtQmbnx
iptables -Lってすると一部だけどDNS引いた結果出してくれる(~~.ne.jp/21とか)
のはいいんだけど、ApacheみたいにDNS引いてるから遅いってやっぱりありますよね?
これって設定とかで引かせないようにできるんですか?
iptablesが重たいのを少しでも何とかできればと思っています。

450:login:Penguin
07/10/24 08:33:21 TTzmV6tO
>>449
-n
man 読めよ。

451:login:Penguin
07/10/24 09:17:40 /YI0Hkhg
>>449
iptables自体が重くなるって意味がわからん
iptables -L(-n無し)で設定表示したときにドメイン名逆引きするだけだぞ

452:login:Penguin
07/10/29 13:52:10 Ar8OORqT
質問させてください。

① iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
② iptables -A INPUT -s 192.168.1.0/255.255.255.0 -j ACCEPT

①と②は違ったりしますでしょうか?

453:login:penguin
07/10/29 22:32:58 KgFnwMuo
>452

(日)と(月)は違うぞ!













曜日が…

454:login:Penguin
07/10/30 23:01:19 sCmEB94u
>>453
うれしそうだねwwwww

455:login:Penguin
07/10/30 23:07:48 HosQjitr
>>453
意味がわからんかった

いまごろ 理解したよ

456:login:Penguin
07/10/31 00:35:10 e4JVZKQc
(日)と(月)に見えた人が書き込んだ場合、
(日)と(月)にはならないと思うんだ。

457:login:Penguin
07/11/01 02:42:36 5rKuYKAC
>>455
まだワカンネどういう事?

458:login:Penguin
07/11/01 07:20:32 k9000Ae8
>>457
URLリンク(help.yahoo.co.jp)

459:login:Penguin
07/11/01 09:56:00 hcVfni0f
懐かしいw

e-mail始めた頃、「MACの人も居るから○文字は使うな」とか
ネチケット叩き込まれたことがあるな

460:login:Penguin
07/11/02 15:57:48 zzEzt7oi
まだ前の回答ついてないのに恐縮ですが、質問です。
scp転送用にポート転送を設定したいんですがうまくいきません。

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 8022 -j DNAT --to-destination 転送先マシンIP:22
iptables -A FORWARD -p tcp --dport 22 -d 転送先マシンIP -j ACCEPT

としてみたのですがうまくいきません。要するにssh用の口が2つあって、一つは別のマシンに転送します。
設定後、外部から

$ ssh -p 8022 user@ルーターIP

とすると、転送先マシンにつながることを期待していたのですが、無反応です。
何が足りないんでしょうか。

461:login:Penguin
07/11/02 17:20:11 /5AvQRIJ
>>460
> iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 8022 -j DNAT --to-destination 転送先マシンIP:22
> iptables -A FORWARD -p tcp --dport 22 -d 転送先マシンIP -j ACCEPT

まったく外しているかもしれないけど、

iptables -A INPUT -p tcp --dport 8022 -j ACCEPT

じゃないの? あと、順序はいいのかな。


462:460
07/11/02 17:43:42 zzEzt7oi
>>461
ありがとうございます。
> iptables -A INPUT -p tcp --dport 8022 -j ACCEPT
入れてもダメでした。

Webサーバーが、ポートの変更はないものの、やはり内部のマシンに転送する設定になっていて、
そちらは>>460に書いたような設定でアクセスできています(INPUTのACCEPTもなし)。
ポート番号変更して飛ばす場合は何かほかに設定が必要なんでしょうかねぇ。
SSHは特別とか。ググりまくってるんですが、今のところ収穫なし。疲れた…。=□○_

463:login:Penguin
07/11/02 18:09:26 L7xx/Ax3
echo 1 > /proc/sys/net/ipv4/ip_forward

464:460
07/11/05 10:51:36 Aa00PO2k
>>463
最初に書かなかったのがいかんでしょうけど、いくらなんでもそれは…。
Webサーバーへの転送ははできてるって、すぐ上に書いてるんだけど…。

465:問題の切りわけができないやつは死ね
07/11/07 20:37:20 LiUjlGKZ
書いてある設定はあってるきがするから
書いてある設定以外の設定もみたほうがいいよ

そもそも、書いてある設定だけに原因があると判断した根拠はあるの?
ないなら、もっと情報を集めるべきだよ
パケットがどこまで来てるか確認するとか
すくなくとも「SSHは特別とか。ググりまくってるんですが」と言うならTCPコネクションは正しく張れていることを確認したわけだよね?

466:login:Penguin
07/11/11 15:13:33 T0iIgraT
んだな。
転送先のSSHの設定が間違ってるんじゃないかな。
少なくとも転送先にパケットが届いているかと、routerの方でドロップしていないか
logみて確認した方がいい。

467:login:Penguin
07/11/11 22:23:07 eYVSNPRX
deiban-etch-i386で配布されているiptables-1.3.6を使っています。
もしかして--*-ownerで指定するownerマッチって、CPUがデュアルなSMP環境では使えない?

URLリンク(iptables-tutorial.frozentux.net)
上記URLのtutorialの Owner match の項目に
"The pid, sid and command matching is broken in SMP kernels since they use different process lists for each processor. It might be fixed in the future however"
って書いていて、この文書はiptables-1.2.2を対象にしているのだけど、
実際に今のバージョンのiptablesでownerマッチを試してみると、
# iptables -A OUTPUT -m owner --cmd-owner httpd
iptables: Invalid argument

となる。。。 いつかSMP環境でもownerマッチが実装されるようになる予定、
もしくは使えるようにするパッチとかあるのかな?


468:login:Penguin
07/11/13 11:48:29 z5V70nVz
>>467
それは単に--cmd-ownerオプションを有効にした状態でコンパイルしていないものと
思われ。

iptablesをコンパイルする際にIPT_OWNER_COMMを設定してコンパイルしておく
必要がある(iptablesの既定では設定されていない)。

469:login:Penguin
07/11/13 12:06:45 sXVFNasV
>--cmd-owner name
>(Please note: This option requires kernel support that
>might not be available in official Linux kernel sources or
>Debian's packaged Linux kernel sources.
>And if support for this option is available for the
>specific Linux kernel source version, that support might
>not be enabled in the current Linux kernel binary.)

470:login:Penguin
07/11/13 12:09:29 z5V70nVz
>>467>>468
訂正。2.6.xカーネルをよくよく読んだら
> ipt_owner: pid, sid and command matching not supported anymore
だそうだ。

uidとgidのマッチングだけが残されてる模様。

471:login:Penguin
07/11/14 16:12:34 smyKDrGU
>>468-470
--cmd-ownerで指定したかった実行ファイルを、適当なグループにchgrpして
--gid-owner使うしかなさそうね。。。とりあえず、--gid-ownerが使えることは
確認できました。ありがとう。以上

472:login:Penguin
07/11/16 11:04:17 l7VK4xQc
ntpを通す設定をする時は
127.127.1.0(ローカルのクロック)も通さなくてはいけないのでしょうか?

473:login:Penguin
07/11/16 11:38:49 +r76b4S+
>>472
ローカルクロックをntpで使わない(常に他の時計を参照して時刻修正をする)
のであれば通す必要はない。

ただntp以外のものを動かすことを考慮すると、デバイスloから来たものについては
通しても問題なさそうな気がするが。

474:login:Penguin
07/11/17 08:31:59 FMqlrwB/
アウトバウンドの返りの許可をINPUTで書くのはまずいですか?

${IPTABLES} -A OUTPUT -p tcp -s ${MY_HOST} -d ${ANY} --dport 22 -j ACCEPT
${IPTABLES} -A INPUT -p tcp -s ${ANY} --sport 22 -d ${MY_HOST} -j ACCEPT

今はこんな感じに書いています。
でもこれだとソースポートを22にされるとACCEPTしてしまうということですよね
自分がsshを触ってログを見ると、
アウトバウンド:OUTPUT時には、
デスティネーションポートは22
ソースポートはテンポラリーな数字が入っています
このテンポラリーな数字を22にされたら(そんなことが出来るのか分かりませんが)
通ってしまうんじゃないか…と思うのですが、どうなのでしょうか。

475:login:Penguin
07/11/17 08:52:38 qUJKPscf
iptables動かしているホストからsshで他のリモートホストに接続を許可、
他のリモートホストからsshで接続される可能性を排除したい状況だと
思うのだけど、

${IPTABLES} -A OUTPUT -p tcp -s ${MY_HOST} -d ${ANY} --dport 22 -j ACCEPT
${IPTABLES} -A INPUT -p tcp -s ${ANY} --sport 22 -d ${MY_HOST} -m state --state ESTABLISHED,RELATED -j ACCEPT

でどうかな?2行目は、確立されたコネクションしか通さない、というルールです。
他のリモートホストの接続のソースポートが22であっても、
別のルール又はポリシーでACCEPTしない限り新しいパケットは通しません。
あくまで自分で他のリモートホストへsshしたアウトバウンドの返りのみ許可します。

476:login:Penguin
07/11/17 09:58:36 FMqlrwB/
>>475
おっしゃるとおりの環境です
確かにこれなら大丈夫ですね
分かりやすい説明ありがとうございました

477:login:Penguin
07/12/04 12:56:38 J8tqiXLe
/sbin/iptables -t nat -P PREROUTING DROP
とした後に
/sbin/iptables -A INPUT -p TCP -i eth0 --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A OUTPUT -p TCP -o eth0 --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
としてもパケットが通りません・・・orz
一旦PREROUTINGをDROPした状態で必要なポートだけ空けるにはどういう設定したらいいですか?

478:login:Penguin
07/12/05 04:41:35 m+53PlcA
そりゃnetテーブルでパケットDorpさせてるから、filterテーブルまで
パケットが届く訳がないかと。

私見だけどnetテーブルってそもそもアドレス変換する所で、フィルタ
する所では無いと思ってんだけど。

そこでDorpさせないで、
素直に
iptables -P INPUT DROP
iptables -A INPUT -p TCP -i eth0 --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
  :
他のルール

でいいんでわ?
あと
iptables -A OUTPUT -p TCP -o eth0 --sport 80 -m state --state ESTABLISHED,RELATED -j ACCEPT
はいらねーんじゃね?
INPUT側で確立したセッションについてはOUTPUT側は自動で面倒見
てくれるんだし。

479:login:Penguin
07/12/05 07:34:20 5K5f62C9
URLリンク(iptables-tutorial.frozentux.net)

480:477
07/12/05 08:58:33 bS7YQRUV
やっぱPREROUTINGでフィルタリングするべきでは無いっすか。ありです。

481:login:Penguin
07/12/06 12:24:28 MDMJf4Qy
477だけどPREROUTINGで必要なポートだけREDIRECTしてやればいけそうな感じです。
他の要因でまだ試してないですが・・

482:login:Penguin
07/12/08 01:50:58 hgE2t6/f
>>477
ちなみに何故PREROUTINGでやるのか後学の為に教えて下され。

483:154
07/12/12 23:53:15 Pf/pNXYM
今回vsftpdを利用したFTPサーバの構築に挑戦しているのですが、壁にぶつかって1週間近くも経ちます。そこでこの場を借りて質問したいと思います。

環境:ルータを軸に、WAN側:動的IP、LAN側:ハブでPCが2台(1台はFedora(サーバ)、もう1台はwindows(確認用クライアント))
設定操作:(全てFFFTPはPASVモード、anonymous接続)
1)ルータ、ファイアウォールの設定でFTPのWellKnownポートを開ける。
2)vsftpdをインストールしデフォルトのままLAN内で動作確認。
3)WAN側の動的IPを逐一確認しつつ、(2)までの設定のまま、そのグローバルIPアドレスを使って動作確認。(WAN側からのアクセス)
4)vsftpdでPASVに関する設定を行い(ここでPASVで使うポートを4000から4029に指定)
iptables及びルータでそれらのポートを開け、WAN側の動的IPを逐一確認しつつ、動作確認。
5)xinetdでvsftpdをスーパーサーバにし、WAN側アドレスにドメインを指定して動作確認。

結果:(1)開けた
(2)正常に動作(接続先のファイル一覧の取得に成功)
(3)PASVに関する設定をしていないのでもちろん失敗(FFFTPログ:接続できませんでした)
(4)なぜか失敗。動作結果は(3)と同様。



484:154
07/12/12 23:54:10 Pf/pNXYM
vsftpdの設定
デフォルトのままの設定の一番下に以下のような記述を加えました。
#以下、PASV関係の設定
pasv_enable=YES
pasv_address=211.10.47.197
pasv_addr_resolve=YES
pasv_min_port=4000
pasv_max_port=4029

iptablesの設定(一番下)
-A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 4000:4029 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

485:154
07/12/12 23:55:49 Pf/pNXYM
xinetdでvsftpdをスーパーサーバ型にするのはこの問題が解決してからする予定です。
この設定でおやじさんのFTP TESTを利用すると正常に接続できるのですが、FFFTPやnet2ftpを利用した接続ができません。どこに原因があるでしょうか。よろしくお願いします。

初めは自宅サバ板で質問していたのですが、あちらの住人のススメでiptablesに詳しいこのスレで質問させていただくことにしました。
外部からのアクセスログ
ホスト 211.128.32.219 (21) に接続しています.
接続しました.
220 (vsFTPd 2.0.5)
>USER anonymous
331 Please specify the password.
>PASS [xxxxxx]
230 Login successful.
>XPWD
257 "/"
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (211,10,47,197,15,185)
ダウンロードのためにホスト 211.10.47.197 (4025) に接続しています.
接続できません.
ファイル一覧の取得を中止しました.
ファイル一覧の取得に失敗しました.


自宅鯖板の方々からはやはりiptables、FWの設定ミス・不足が有力視されています。

486:login:Penguin
07/12/13 00:55:26 h9SR/G0E
素直にこれじゃ接続できんの?
#pasv_enable=YES
#pasv_address=211.10.47.197
#pasv_addr_resolve=YES
#pasv_min_port=4000
#pasv_max_port=4029


487:login:Penguin
07/12/13 02:31:38 4N7nbO+s
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 4000:4029 -j ACCEPT

この設定にだけじゃ単にポート開けてるだけで、アドレス変換されとらんかと。

NATテーブル側で tcp dpts:4000:4029 to:鯖のプライベートアドレス

の設定追加で行けるんじゃ?

488:487
07/12/13 02:37:06 4N7nbO+s
勘違いした。鯖とFWは同じマシンで別にルータが居るのか。と云う事は、

↑の設定をルータ上に入れんと駄目って事ね。

1)でやってるFTPのWellKnownポートを開ける。
に4000から4029が含まれて無いと仮定しての話しだけど。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch