[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 06/28 19:45 / Filesize : 335 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

おい、iptablesの使い方を具体的に詳しく教えろ!



1 名前:初心者 [01/09/18 21:50 ID:vcHWxUb2]
家庭内LANのルーターとして使いたい。
web, ftp, mailサーバーをうごかしつつ、IPマスカレードして
LANのPCをそとにつなげたい。
コネクションはADSL、IPはグローバルひとつだけ。

具体的なiptablesのコマンドを教えろ。
それと、/etc/sysconfig/iptablesって何なの?これについてもね。

急いでいるのですばやい解答を求む

147 名前:login:Penguin [02/02/10 11:46 ID:+SdcoApJ]
iptableじゃなくて、ipchainsだけど便乗質問。
telnetやircの接続を速くするためにipchainsでauthやsocksをREJECTする設定にしたのですが、DENYにするのと変わりません。
ACCEPTにすると速いんだけど、何が原因なんだろう。
もちろんauthやsocksポートには何も待機していません。ので、REJECTとどうちがうんだろう。



148 名前:login:Penguin [02/02/10 11:57 ID:9HqpzYwu]
>>147

-j REJECT --reject-with tcp-reset
-j REJECT --reject-with icmp-port-unreachable



149 名前:login:Penguin [02/02/10 12:15 ID:+SdcoApJ]
>>148
--reject-withはipchainsには無いのでした(;_;


150 名前:148 [02/02/10 12:23 ID:9HqpzYwu]
ごめん iptablesじゃなくてipchains... だったのね.

151 名前:login:Penguin [02/02/10 18:15 ID:l9WkUBSt]
iptables か ipchains で arp を無視するってできないの?
ICMP は無視できるから arp はどうかなって思って。

152 名前:login:Penguin [02/02/10 18:35 ID:aNFiZsxi]
明日の「教えてクン」を目指す、若き戦士達に以下の文章を捧げる。
日々精進し、パソコンヲタクどもの親切を蹂躙してやれ。

1.努力を放棄すること
  いやしくも「教えてクン」たるもの、努力をしてはならない。
 過去ログを読んだり、検索してはいけない。
 「英語は苦手なので、分かりません。」は、高く評価できる。
 辞書片手にマニュアルやReadMeを読むなど、決してしてはならない。
 他力本願と言われようと、自分で調べたり試行錯誤したりせず、
 他人の努力の結果を搾取するのが、正しい「教えてクン」である。
 また、「もう何が悪いのかサッパリ分かりません。」と言って
 ふてくされるのも有効である。「サッパリ」という単語が
 「やる気の無さ」を効果的に表現している。
 「原因を特定するには、何をすべきでしょうか?」と訊いてしまうと
 自己の積極性が現れてしまうので、「教えてクン」失格である。

153 名前:login:Penguin [02/02/10 18:35 ID:aNFiZsxi]
2.情報を開示しないこと
  使用OSや、機器構成などの必須の情報を知らせてはならない。
 マザーボード名やBIOSのバージョンも同様だ。
 具体的なアプリ名やバージョンも隠蔽すべきだ。
 「DVD再生ソフト」のように曖昧に表記しておけばよい。
 反対に「前から欲しいと思っていた○○」とか「安売りされていた
 ○○」 等の「どうでもいい情報」は、どんどん書いてやれ。
  トラブルの場合は、状況を正確に記述してはならない。
 「なんだかうまく動きません。」とか「エラーが出ます。」等と
 具体的なことは何も書かないことが重要である。
 また、自分の試してみた事も具体的に書いてはいけない。
 考えられる組合せのマトリックスを作成し、状況を整理するなど
 もってのほかである。最悪の場合、それだけで問題が解決してしまう
 こともあるのだ。
 「いろいろやってみたけど、動きません。」が理想的だ。


154 名前:login:Penguin [02/02/10 18:35 ID:aNFiZsxi]
3.答える人間のことを考えないこと
「教えてクン」は、孤高の戦士である。相手のことを考えるようでは
 教えてクン失格というものだ。
 以下のような行動が、望ましい。
  初心者であることを高らかに宣言し、初心者向けの丁寧で
 分かりやすい説明を強要する。専門用語の使用を禁じておくと
 さらに効果的である。簡潔な説明を禁じられたヲタクどもは、
 同じ内容を説明するのに、何倍もの労力を強いられる。
 自分は努力せず、相手には多大な努力をさせることこそが
 「教えてクン」の真骨頂である。
  マルチポストも有効である。そのBBSを信用していないことを
 明確に示せる。「どうせ、お前らじゃ分からんだろう。」という
 意志表示として高く評価できる。もちろんマルチポストの非礼を
 あらかじめ詫びてはならない。それでは、単なる「急いでいる人」
 になってしまう。それは、教えてクンではない。
  質問のタイトルは、「教えてください。」で良い。
 タイトルを読んだだけでは「何に関する質問」か全く分からない。
 そういう努力は、答える人間にさせれば良いのだ。
 とにかく、答える人間が答えやすいように気を使って質問しては
 ならない。傲慢で不遜な態度が必須である。
 「聞きたいことがあります。」など、プロの仕事であろう。

最後に、言うまでも無いことだとは思うが、答えてくれた人達に
お礼の言葉を返すなど言語道断である。
せっかく「教えてクン」を貫いてきたのに、最後にお礼を言っている
ようでは、臥竜点睛を欠いていると言わざるを得ない。
質問だけしておいて、後はシカトが基本である。
上級テクニックとして、「そんなことはもう試しました。」とか、
「そこまで初心者じゃありません。」などと言って、回答者の
神経を逆なでしておけば完璧である。

以上のことを踏まえて質問すれば、君も立派な「教えてクン」である。
ビバ!教えてクン! 教えてクンに栄光あれ!!

155 名前:151 [02/02/10 18:51 ID:l9WkUBSt]
>>152-154
俺のこと?



156 名前:棄教者 ◆witdLTi2 [02/02/10 22:31 ID:j1lOk64t]
>>152-154
では, ぼくはあなたの価値判断に照らしてだめな人間になろうと思います.

157 名前:login:Penguin [02/02/11 01:48 ID:XQAN99IG]
>>147
ipchains すてれば良いじゃん。

iptables の方が、何をやるにも簡単だよ。


158 名前:login:Penguin [02/02/17 16:37 ID:UTkS9MnU]
今月のUNIX USER買ったら、iptables 動いたー
嬉しい・・

159 名前:159? [02/03/04 16:49 ID:kx52FFMm]
はじめまして。まずは下のスクリプトを見てください。

# /bin/sh


IPTABLES="/sbin/iptables"


# Initialize
$IPTABLES -F


# Policy
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP


# Input
$IPTABLES -A INPUT -p tcp --sport 80 --dport 1024: -j ACCEPT
$IPTABLES -A INPUT -p udp --sport 53 --dport 1024: -j ACCEPT

$IPTABLES -A INPUT -p tcp --dport 80 --sport 1024: -j ACCEPT

$IPTABLES -A INPUT -p tcp --sport 110 --dport 1024: -j ACCEPT
$IPTABLES -A INPUT -p tcp --sport 25 --dport 1024: -j ACCEPT

$IPTABLES -A INPUT -p tcp --dport 6000 -j DROP
$IPTABLES -A INPUT -p tcp --dport 9010 -j DROP


# Output
$IPTABLES -A OUTPUT -p tcp --dport 80 --sport 1024: -j ACCEPT
$IPTABLES -A OUTPUT -p udp --dport 53 --sport 1024: -j ACCEPT

$IPTABLES -A OUTPUT -p tcp --sport 80 --dport 1024: -j ACCEPT

$IPTABLES -A OUTPUT -p tcp --dport 110 --sport 1024: -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --dport 25 --sport 1024: -j ACCEPT


# Forward

これだと1024以上のポートがフィルタリングされないんですよね?。
でも、クライアント用に使うにはこうしないといけないんです。
だから、2chのみなさんにクライアントに使うポート以外を
フィルタリングする方法を聞きに来ました。
よろしくおねがいします。
(Webサーバー兼用です。)


160 名前:login:Penguin mailto:sage [02/03/04 18:25 ID:tqDAEMfs]
省略されてしまうレスにマトモに答える気にはなかなかならないが、
とりあえずlocalhostに対してMASQUERADEしてみては?

161 名前:login:Penguin [02/03/04 18:42 ID:LzqnkBou]
>>159
ねえねえ、iptables 使っているなら、ステートフル
ファイアウォールが使えるよ。この機能を使えば、
1024以降を明示的に空けっぱなしにしなくても、
良いんだよ。





162 名前:161 [02/03/04 18:47 ID:LzqnkBou]
基本はこうだ

iptables -P INPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT --dport www -m state --state NEW -j ACCEPT



163 名前:161 [02/03/04 18:49 ID:LzqnkBou]

ごめん最後の行間違えました。

iptables -A INPUT -p tcp --dport www -m state --state NEW -j ACCEPT

164 名前:login:Penguin mailto:sage [02/03/04 18:50 ID:eqpRMDR5]
何気にこのスレの1は好きだw

165 名前:159 [02/03/04 20:18 ID:kx52FFMm]
>>160
すみませんでした。これからは、気をつけるようにします。

>>161-163
ありがとうございます。さっそく試してみます。



166 名前:login:Penguin [02/03/04 20:35 ID:vBnpQMfX]
最近、iptablesのlogをとるようにしました。
たまに自分あてでないのが来るんですけど、
なぜですか?

167 名前:login:Penguin [02/03/04 22:17 ID:vEEs1eqc]
>>166

どんなログ?


168 名前:159 [02/03/06 18:28 ID:Y3qblAn4]
>>160
localhostへのマスカレードってどうやってやるんですか?。

>>161-163
ありがとうございました。
おかげで問題が解決しました。

169 名前:login:Penguin mailto:sage [02/03/06 22:14 ID:5IiaRQ6B]
>>166 routed とか zebra とか うごいてない?

170 名前:166 [02/03/06 23:53 ID:OInjMMbB]
よく見ると
dhclient: bound to XXX.XXX.XXX.XXX ... と
ifup: bound to XXX.XXX.XXX.XXX...が、ありました。

そこは、以前あたえられたアドレスでした。
そこにいけといってたんでしょうか?

171 名前:166 [02/03/06 23:56 ID:OInjMMbB]
>>169
こちら側では動いてません。


172 名前:login:Penguin [02/03/10 14:06 ID:OvV6rlUg]
デスクトップ機(192.168.0.3)からサーバ機(192.168.0.4)への接続に失敗する。
sshへの接続はうまくいくのに、プロキシサーバ(8080port)への接続ができない。
iptablesを外すと、プロキシへも接続できるからおかしいのはiptabelsの設定だと
おもけど、これのどこが悪いんでしょうか?

↓サーバ機のiptables用スクリプト
#!/bin/sh
IPTABLES="/sbin/iptables"

# flush tables chians
$IPTABLES -F
$IPTABLES -X

# chain policies
$IPTABLES -P FORWARD DROP
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT

# loopback rules
$IPTABLES -A INPUT -i lo -d 127.0.0.1 -j ACCEPT
$IPTABLES -A OUTPUT -o lo -s 127.0.0.1 -j ACCEPT

# network rules
$IPTABLES -A INPUT -p tcp -s 192.168.0.3 --dport 8080 -i eth0 -j ACCEPT
# ↑こいつが通らない。
$IPTABLES -A INPUT -p udp -i eth0 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s 192.168.0.3 --dport 22 -i eth0 -j ACCEPT
# ↑こっちは通る。


173 名前: mailto: [02/03/11 03:49 ID:lNNe1lrw]
>172
port80から8080へのREDIRECTチェインがない。
squid使ってるなら、ドキュメントに思いっきり書いてあるはずだが...。

174 名前: mailto: [02/03/11 03:55 ID:lNNe1lrw]
あと、INPUTのtcp --sport 80もないか...。

175 名前:login:Penguin mailto:sage [02/03/12 14:32 ID:E+SuNJC1]
>>173-174
ありがとうございます。もう1度squid関連調べに逝って来ます。



176 名前:login:Penguin [02/04/20 19:21 ID:rohCWPRw]
便乗で悪いんですけど、firewall内に自鯖があって、NATで外から読めるようにしつつ
増すカレー度処理する時はどうすればいいんでしょ?


177 名前:login:Penguin [02/04/20 19:39 ID:oxFqc4ZZ]
>>176
まず普通にmasqueradeの設定をする。そこにDNATの設定を追加する。

178 名前:176 [02/04/21 07:40 ID:Yr+atmvA]
どうもです。
やっぱりなんか調子悪いんで、設定ファイルコピペします。
誰かご指南を。
#!/bin/sh

/sbin/modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t filter -F FORWARD
/sbin/iptables -t nat -F PREROUTING
/sbin/iptables -t nat -F POSTROUTING
/sbin/iptables -t filter -P FORWARD DROP
echo "filter reset"
/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE
echo ":masqrade"
/sbin/iptables -t filter -A FORWARD -m state --state ESTABLISHE,RELATED -j ACCEPT
echo ":accept"
/sbin/iptables -t filter -A FORWARD -i eth1 -p icmp -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p udp --dport 53 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p tcp --dport 80 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p tcp --dport 23 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p tcp --dport 110 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p tcp --dport 25 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -i eth1 -p tcp --dport 21 -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.0.2
/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j DNAT --to 192.168.0.2
/sbin/insmod ip_nat_ftp
/sbin/insmod ip_conntrack_ftp


179 名前:ド素人 mailto:sage [02/04/21 12:06 ID:/RGp8aww]
>>178
重箱の隅をつついて悪いけど、
>/sbin/iptables -t filter -A FORWARD -m state --state ESTABLISHE,RELATED -j ACCEPT
は、
誤 : ESTABLISHE
正 : ESTABLISHED

では?

180 名前:login:Penguin mailto:sage [02/04/21 15:30 ID:LZsNjgeb]
>178
www.atmarkit.co.jp/flinux/rensai/security03/security03a.html

181 名前:login:Penguin [02/04/22 03:50 ID:WsiHtJm9]
/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE
これだとこのマシンから出て行く全てのパケットをマスカレードしちまう。
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
じゃないと駄目なんじゃないか?

182 名前:login:Penguin [02/04/22 22:23 ID:UlaPXRyr]
ログの放出先ってどうやって指定するの?

iptables -A logging -j LOG --log-level warning -m limit --modprobe=/sbin/modpr
obe

sysylog.conf に
iptables.* /var/log/iptables.log

じゃぁ駄目?

183 名前:login:Penguin [02/04/22 23:22 ID:5POPEszb]
>>182 駄目。facility は kern で固定。
設定できるのは priority だけなので syslog では細かい設定は無理。
方法はある事はある。ulogd で検索してみれ。
もしくはメッセージの文字列を見て分類できる賢い syslogd を探すかだ。

184 名前:login:Penguin [02/04/25 16:53 ID:usxeJJr6]
>>183
 情報サンクス。
 駄目かぁ。しかしその前に、kernelいじらないと
 ログすら射出していないことに気づいた。


185 名前:login:Penguin [02/04/26 22:55 ID:14T5vB2N]
Xeroxネットワークスキャナから専用クライアントを用いて書類を取り出すときに、
クライアントは不定のポートからスキャナのポート1605にアクセスします。
書類を取り出そうとすると、スキャナはクライアントのポート1605に2つ目の
コネクションを作ろうとします。

iptablesのゲートウェイを通してアクセスすると、最初のコネクションは
FORWARDされますが、2つ目のコネクションはFOWARDされませんので、書類が
取り出せません。これをiptablesの設定で最初のコネクションを作ったホスト
にフォワードすることはできるでしょうか?




186 名前:login:Penguin [02/04/26 23:31 ID:UqjpWVgK]
>>185
ネットワーク環境が判らないので答えようがないぞ。
ネットワークスキャナとクライアントの間はアドレス変換(NAT)されているのかい?


187 名前:login:Penguin [02/04/26 23:36 ID:GAEFUI6w]
ステートフルにやりたいのなら自前で conntrack モジュールを書く。
それが嫌ならスキャナからクライアントのポート 1605 へのパケット
の forward を明示的に許可するルールを書くしかないじゃん。
いまいち何で悩んでるのかわからんな。

188 名前:185 [02/04/27 02:05 ID:ElV/5Jg0]
レスどうもありがとうございました。ゲートウェイの中はプライベートアドレス
でスキャナはグローバルアドレスですので、中から外への接続はNATされます。
ゲートウェイの中に複数のマシンがあって、スキャナにアクセスするのを
どれかひとつに決めれば、DNATルールでいいんですが、これだと、他のマシン
からスキャナが使えません。スキャナの1605にコネクションがあるときに、
スキャナから1605への接続要求があったときにゲートウェイ内の該当マシン
にFORWARDする、ということは不可能でしょうか?

189 名前:login:Penguin [02/04/27 14:04 ID:TybU9eRm]
結局 >>187 を読めとしか答えようが無い。

190 名前:age mailto:age [02/05/29 15:51 ID:XCO36owR]
age

191 名前:login:Penguin [02/05/31 11:37 ID:ufDGLsrG]
ガッツ溢れる>>1記念age

192 名前:login:Penguin [02/06/03 08:55 ID:z8IONuWA]
wget で下記のようなエラーメッセージが出るんだけど
...
$ wget ftp://ftp.us.debian.org/debian/README.mirrors.txt
--07:59:52-- ftp://ftp.us.debian.org/debian/README.mirrors.txt
=> `README.mirrors.txt'
ftp.us.debian.org をDNSに問いあわせています... 完了しました。
ftp.us.debian.org[192.25.206.10]:21 に接続しています... 接続しました。
anonymous としてログインしています... ログインしました!
==> SYST ... 完了しました。 ==> PWD ... 完了しました。
==> TYPE I ... 完了しました。 ==> CWD /debian ... 完了しました。
==> PORT ...
無効なポート番号です。
再試行しています。
...
192.168.2.1(DNSサーバ兼NTPサーバ)では、下記のような設定になってて
wget は 192.168.2.6 で実行しています。(192.168.3.2 はWeb サーバ)
直し方教えて。
...
$ sudo iptables-save
# Generated by iptables-save v1.2.6a on Mon Jun 3 08:46:04 2002
*filter
:INPUT DROP [224:16115]
:FORWARD DROP [10:432]
:OUTPUT DROP [339:31838]
-A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 123 -j ACCEPT
-A INPUT -s 192.168.2.6 -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p udp -m udp --sport 53 --dport 1024:65535 -j ACCEPT
-A INPUT -s 192.168.2.6 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A FORWARD -d 192.168.2.0/255.255.255.0 -j ACCEPT
-A FORWARD -s 192.168.2.0/255.255.255.0 -j ACCEPT
-A FORWARD -d 192.168.3.2 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -s 192.168.3.2 -p tcp -m tcp --sport 80 ! --tcp-flags SYN,RST,ACK SYN -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 123 -j ACCEPT
-A OUTPUT -d 192.168.2.6 -o eth1 -p tcp -m tcp --sport 22 ! --tcp-flags SYN,RST,ACK SYN -j ACCEPT
-A OUTPUT -p udp -m udp --sport 1024:65535 --dport 53 -j ACCEPT
-A OUTPUT -d 192.168.2.6 -p icmp -m icmp --icmp-type 0 -j ACCEPT
COMMIT
# Completed on Mon Jun 3 08:46:04 2002
# Generated by iptables-save v1.2.6a on Mon Jun 3 08:46:04 2002
*nat
:PREROUTING ACCEPT [730:50671]
:POSTROUTING ACCEPT [51:3434]
:OUTPUT ACCEPT [467:31733]
-A PREROUTING -d 192.168.1.100 -i eth0 -j DNAT --to-destination 192.168.3.2
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Jun 3 08:46:04 2002


193 名前:login:Penguin [02/06/03 12:19 ID:AWppMUpu]
>>192
wget --passive-ftp ftp://hoge/fuge
で、どーよ?

194 名前:192 [02/06/03 13:20 ID:z8IONuWA]
DNS/NTPサーバ設定あれこれ直したりしてたけど
>>193
で解消 thx
# Generated by iptables-save v1.2.6a on Mon Jun 3 12:38:22 2002
*filter
:INPUT DROP [446:41510]
:FORWARD DROP [10:432]
:OUTPUT DROP [604:49984]
-A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
-A INPUT -s 192.168.2.6 -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.2.6 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 123 -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --dport 123 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT
-A FORWARD -d 192.168.2.0/255.255.255.0 -j ACCEPT
-A FORWARD -s 192.168.2.0/255.255.255.0 -j ACCEPT
-A FORWARD -d 192.168.3.2 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -s 192.168.3.2 -p tcp -m tcp --sport 80 ! --tcp-flags SYN,RST,ACK SYN -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
-A OUTPUT -d 192.168.2.6 -o eth1 -p tcp -m tcp --sport 22 ! --tcp-flags SYN,RST,ACK SYN -j ACCEPT
-A OUTPUT -d 192.168.2.6 -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A OUTPUT -o eth1 -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 123 -j ACCEPT
-A OUTPUT -o eth1 -p udp -m udp --sport 123 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
COMMIT
# Completed on Mon Jun 3 12:38:22 2002
# Generated by iptables-save v1.2.6a on Mon Jun 3 12:38:22 2002
*nat
:PREROUTING ACCEPT [1251:92645]
:POSTROUTING ACCEPT [105:6734]
:OUTPUT ACCEPT [960:65072]
-A PREROUTING -d 192.168.1.100 -i eth0 -j DNAT --to-destination 192.168.3.2
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Jun 3 12:38:22 2002



195 名前:state [02/06/03 23:10 ID:AxNSLimH]
はじめまして
iptables には ステートフル インスペクション という機能が追加されたのですが、
>>161-163 で使い方が紹介されているのですが、
具体的には NEW, ESTABLISHED, RELATED, INVALID のパケットとはどんな
パケットなのでしょうか?どのようにして判別し、どのようにして処理しているのでしょうか?

3-way ハンドシェイクのように簡単な仕組みではないと思うのですが、いまいち理解できません。
詳しい方、いましたらご教授願います。詳しく説明しているwebなども紹介していただけたらうれしいっす。
(nfs関連の動き回るポートをうまく処理できたらいいな〜なんて考えているのですが、
 とりあえずstateでそれができようと、できまいと、stateの仕組みを知りたいのです。)
よろしくおながいします ヽ( *´ー`*)丿



196 名前:340 [02/06/05 19:48 ID:4hxQLmqM]
NEW=前戯
ESTABLISHED=真っ最中
RELATED=あれ?抜けちゃった
INVALID=いきなり

こんな感じ


197 名前:_ [02/06/07 12:15 ID:+8qkjCSy]
iptablesdeでftpのpasvモード使いたいんだが

/sbin/insmod ip_nat_ftp
/sbin/insmod ip_conntrack_ftp

これらのモジュールはインストール時に入るんですか?
それともどこかからもらってくるんですか
入っている場合何処に入れられるんでしょう?

198 名前:197 [02/06/07 12:18 ID:+8qkjCSy]
追加
ですとリはターボ7です。

199 名前:login:Penguin [02/06/07 12:27 ID:Konfj6z0]
>>198
ターボの場合どうだったか確信が無いが、/etc/rc.d/rc.local か
/etc/rc.d/rc.modules に
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
と書いてみたら?

200 名前:login:Penguin mailto:em [02/06/07 14:44 ID:dekGeI0n]
1です。
自分のたてたスレッドが繁盛しているのを見るのはいいね。

でもしばらくたって自分の書き込みを読むとかなりDQNでした。
ちょっとやばい。

でもまあ、まったりしたLinuxスレに電波乱入してすこしは
活気でたというものだから、結果的にはよかったかも。

201 名前:login:Penguin mailto:sage [02/06/07 14:47 ID:Un+oszzk]
>>200
もっと楽しいこと書けよ、まんこ!

202 名前:login:Penguin [02/06/26 10:31 ID:DKIPFaEf]
えと
16さんのスクリプトなんですが
$IPTABLES -A FORWARD -d 192.168.1.0/24 -j ACCEPT
$IPTABLES -A FORWARD -s 192.168.1.0/24 -j ACCEPT
これは何処からのFORWARDの許可なのでしょうか?
nic2枚さしてeth0にppp0もたせてeth1に192.168.1.0/24のLANがあるとき
$IPTABLES -t nat -A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
とeth1宛のマスカレードがあれば上の2つのFORWARDは特に必要ないんでしょうか?
eth0側のネットワークには何もないです。

203 名前:login:Penguin [02/06/26 13:32 ID:uqb/DVYr]
>>202
インタフェースを指定しなければ、全方向の forwarding が許可される。
オプション -i で入口、-o で出口のインタフェースを指定する。
POSTROUTING はその名の通りルーティングした後の処理なので、
FORWARD で許可されなければパケットはそこまでたどりつかない。

204 名前:login:Penguin mailto:sage [02/06/26 17:24 ID:CssWagDV]
ところで >>1は? どこへいった?

205 名前:login:Penguin [02/06/28 02:05 ID:l6vDOI3u]
FWとは別にLAN内にwebサーバーをおいたのですが、外からアクセスできません。
iptablesをこの様に記述したのですが
*nat
:PREROUTING ACCEPT [2451:150607]
:POSTROUTING ACCEPT [11:755]
:OUTPUT ACCEPT [11:755]
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.11
-A POSTROUTING -s 192.168.1.0/255.255.255.0 -o ppp0 -j MASQUERADE
COMMIT
# Completed on Fri Jun 28 01:57:26 2002
# Generated by iptables-save v1.2.5 on Fri Jun 28 01:57:26 2002
*filter
:INPUT DROP [56:2340]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [1303:157561]
-A INPUT -i lo -j ACCEPT
-A INPUT -s 192.168.1.0/255.255.255.0 -i eth1 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -d 192.168.1.0/255.255.255.0 -j ACCEPT
-A FORWARD -s 192.168.1.0/255.255.255.0 -j ACCEPT
COMMIT
DNATの使い方がおかしいでしょうか?教えてください。




206 名前:login:Penguin mailto:sage [02/06/28 02:37 ID:MLKUrxTN]
>>205
見たところあってそうなんだけどな。どこがおかしいのかわかんねーや。
ところで FORWARD のルールがそれじゃスカスカだ。
もうちっと固くしたほうがよかねぇか?

207 名前:login:Penguin mailto:sage [02/06/28 03:00 ID:PZu/eU54]
>>205
--to-destination 192.168.1.11 → --to-destination 192.168.1.11:80 かなぁ.
うちもうまくいかなくて結局delegateで逃げたけど.

208 名前:205 [02/06/28 03:24 ID:l6vDOI3u]
>ところで FORWARD のルールがそれじゃスカスカだ。
すごい気になるんですけど、どんなパケットが通るか想像できません。
たとえばどんなのが通るのかおせーて。
>192.168.1.11:80
だめだった。

209 名前:login:Penguin mailto:sage [02/06/28 03:46 ID:tXunBKNC]
>>205=208
-A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
を追加するとどう?
根拠は漏れの DNAT とは関係無いルールと
oggy.hn.org/conts/linux.html
から辿った
www.h4.dion.ne.jp/~juupp/pcunix/usage/linux/iptables-filter.html
だ。

FORWARD がスカスカなのは、
www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO-6.html
とかの図を見れば解る筈。

210 名前:login:Penguin mailto:sage [02/06/28 21:38 ID:KNsT/qza]
>>205

> -A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.11

-A PREROUTING -i ppp0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.11:80

それから
:FORWARD に
-A FORWARD -d 192.168.1.11 -p tcp -m tcp --dport 80 -j ACCEPT

これでどーよ

211 名前:login:Penguin [02/06/29 22:52 ID:lGZLhgIu]
ここはLinux板で数少ない役に立つスレだな。

212 名前:login:Penguin mailto:sage [02/06/29 23:41 ID:4nTRLABN]
>>210
どっちも違うな。つじつまが合わん。
バグでなければ iptables とは別の所に原因があるのだろう。

213 名前:login:Penguin [02/06/30 23:32 ID:rlUFjQVm]
www.linux.or.jp/JM/html/iptables/man8/iptables.8.html
ここを丸暗記しなさい。

214 名前:login:Penguin mailto:sage [02/07/01 00:41 ID:gHRp2b10]
>>213
丸暗記じゃ応用が効かないでしょ。

215 名前:どうしよう [02/07/01 01:33 ID:3KHQAxcX]
暗記じゃなくて理解するのです。



216 名前:わら [02/07/01 11:29 ID:+IzpsJsE]
1です。

去年の9月にたてたこのスレッド見たら笑ってしまった。

俺ってすごいDQNだなと思った。

217 名前: mailto:sage [02/07/03 00:57 ID:F+PSzLiB]
You are DQN.

218 名前:login:Penguin mailto:sage [02/07/03 01:50 ID:rn2Oo3wE]
>>217
×are
○is
マジレスするなよ(藁

219 名前:初心里奈坊 [02/07/03 19:17 ID:xekDzak2]
初心者里奈坊なんですが、どなたかお教えいただけないでしょうか?
ええと、NIC2枚刺しの赤帽さん7.3でFireWallを立てようとしています。
eth0側にローカルアドレスを、eth1側をグローバルと考えています。
16さんのスクリプトとある雑誌のipchainsのスクリプトを参考にして、
下記のようなスクリプトを作ってみました。

#/bin/sh

IPT="/sbin/iptables"

$IPT -t filter -F
$IPT -t nat -F

# default policy
$IPT -P INPUT DROP
$IPT -P FORWARD ACCEPT
$IPT -P OUTPUT DROP

#Loopback Interface
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT

# Step 1
$IPT -A INPUT -s 192.168.5.0/24 -d ! 192.168.5.1/32 -i eth0 -j ACCEPT
$IPT -A INPUT -p icmp -s 192.168.5.0/24 -d 192.168.5.1/32 -i eth0 -j ACCEPT

# Step 2

# Step 3
$IPT -A OUTPUT -p udp --dport 1024 -s AAA.BBB.CCC.DDD/32 -o eth1 -j ACCEPT
$IPT -A OUTPUT -p icmp -s AAA.BBB.CCC.DDD/32 -o eth1 -j ACCEPT

# Step 4
$IPT -A INPUT -p tcp ! --syn --dport 1024 -d AAA.BBB.CCC.DDD/32 -i eth1 -j ACCEPT
$IPT -A INPUT -p udp --dport 1024 -d AAA.BBB.CCC.DDD/32 -i eth1 -j ACCEPT
$IPT -A INPUT -p icmp -d AAA.BBB.CCC.DDD/32 -i eth1 -j ACCEPT

220 名前:初心里奈坊 [02/07/03 19:18 ID:xekDzak2]
# Step 5

# Step 6
$IPT -A OUTPUT -s ! 192.168.5.1/32 -d 192.168.5.0/24 -o eth0 -j ACCEPT
$IPT -A OUTPUT -p icmp -s 192.168.5.1/32 -d 192.168.5.0/24 -o eth0 -j ACCEPT

$IPT -A INPUT -p ! icmp -d AAA.BBB.CCC.DDD/32 -i ! eth1 -j DROP

$IPT -A OUTPUT -d 10.0.0.0/8 -o eth1 -j DROP
$IPT -A OUTPUT -d 172.16.0.0/12 -o eth1 -j DROP
$IPT -A OUTPUT -d 192.168.0.0/16 -o eth1 -j DROP

$IPT -A INPUT -d 10.0.0.0/8 -i eth1 -j DROP
$IPT -A INPUT -d 172.16.0.0/12 -i eth1 -j DROP
$IPT -A INPUT -d 192.168.0.0/16 -i eth1 -j DROP

$IPT -A INPUT -s 127.0.0.0/8 -i ! lo -j DROP
$IPT -A INPUT -s 192.168.5.0/24 -i ! eth0 -j DROP
$IPT -A INPUT -d 192.168.5.1/32 -i ! eth0 -j DROP

$IPT -A FORWARD -d 192.168.5.0/24 -i eth0 -j ACCEPT
$IPT -A FORWARD -s 192.168.5.0/24 -i eth0 -j ACCEPT
$IPT -t nat -A POSTROUTING -o eth1 -s 192.168.5.0/24 -j MASQUERADE

echo 1 > /proc/sys/net/ipv4/ip_forward

221 名前:初心里奈坊 [02/07/03 19:19 ID:xekDzak2]
で、$IPT -P FORWARD を DROPにするとうまく動作しないのですが、
どこがいけないのでしょうか?

どなたかご教授お願いいたします。

222 名前:login:Penguin [02/07/04 09:33 ID:eEQBB8kC]
質問ばかりで申し訳ないのですが、
拠点-本社間で 拠点からのみ本社のLAN内WWW鯖を閲覧できるようにしたいのです。

拠点はグローバル固定IPです。
通常のiptables文に何を継ぎ足せばよいのでしょうか?
ちなみにRedHat7.2を使用しております。 どなたかご教授ください。

223 名前:login:Penguin mailto:sage [02/07/04 21:00 ID:VG4GbJfc]
>>222
ネットワーク図と今の設定がないと誰にもアドバイスできんぞ。


224 名前:login:Penguin [02/07/07 22:41 ID:sDkdyr13]
RedHat 7.3 をルータにしてマスカレードしてるのですが
時々ローカルマシンからWEBが見れません
見れたり、見れなかったりという状態です
ipchains に戻しても やはり同様の症状がでます。
ルータをRedHat 6.2 や Debian potato に切替えると正常に作動するので
回線は問題ないようです。
ipchains は rmmod で停止できるのですが iptableはどうやって停止するのでしょう?
組みこんだモジュールをrmmodして pppや eth をダウンしてもrmmod
できないので、ipchains に切替えるのに再起動しています


225 名前:login:Penguin [02/07/07 23:52 ID:kuDvTQSU]
うちも切れるよ RedHat7.3でマスカレードが
ポリシーを全部 ACCEPT にしても切れる
pppd や pppoe に問題があるのかも
rh7.3でadsl-setup してもpppoe.confができないから
7.1 で作ったやつを持つて来たけど




226 名前:login:Penguin mailto:sage [02/07/08 00:10 ID:XwJX3NzB]
>>224
まずマスカレードが原因か PPP が原因か切り分けないと。
でも ipchains でもダメな所を見ると pppoe が原因っぽいね。
>>225
7.1 は知らんが 7.2 以降だと pppoe.conf ができないのが正しいよ。
/etc/sysconfig/network-scripts/ifcfg-ppp0 で全部やる。
pppoe.conf を持って来たせいでおかしくなった可能性は?

227 名前:login:Penguin [02/07/08 02:37 ID:awNNfZrK]
>>7.2 以降だと pppoe.conf ができないのが正しいよ。
>>ifcfg-ppp0 で全部やる。
>>pppoe.conf を持って来たせいでおかしくなった可能性は?
わー、ズバリそれっぽい
pppoe.conf を削除して adsl-setup やり直したら今のとこ快調
レスポンスも速くなった気が
今までrp-pppoe使ってたからてっきり要るものだとばかり。
ありがとうございました!








228 名前:login:Penguin [02/07/08 15:04 ID:eFKiuOMg]
>>225
俺もpppoeを使っているが、squidかましているので
webは特に問題なし。

229 名前:224 [02/07/08 19:36 ID:awNNfZrK]
私のところは rp-pppoe を導入したのがエラーの原因でした。
pppoe.conf があると
/sbin/adsl-start(pppoe) /usr/sbin/adsl-start(rp-pppoe)共に
/etc/pppoe.conf を参照してしまうようです
カーネル2.2で安定していた rp-pppoe 3.3 をコンパイルして入れたのがマズかったようです。
rp-pppoeを削除すると安定して動作しています
/sbin/adsl-status では相変わらず /etc/pppoe.conf が無いと文句を言lっていますが
青いペンギンさま、ありがとうございました
iptables とは話題がずれてしまいました。



230 名前:  [02/07/08 22:24 ID:vi+kfEIM]
mirrorでlocalにmirrorしたいんですけど、
20でDROPします。
wgetする時は、--passive-ftpでいいんですけど、
mirrorの場合、どうすればいいですか?


231 名前:login:Penguin mailto:sage [02/07/10 20:55 ID:qf6t6/3T]
# Generated by iptables-save v1.2.6a on Wed Jul 10 00:34:34 2002
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [946:110573]
:block - [0:0]
-A INPUT -j block
-A FORWARD -j block
-A block -m state --state RELATED,ESTABLISHED -j ACCEPT
-A block -i ! eth0 -m state --state NEW -j ACCEPT
-A block -j DROP
COMMIT
# Completed on Wed Jul 10 00:34:34 2002

一般人ですがこんなもんで十分ですか?

232 名前:デフォルトの名無しさん mailto:sage [02/07/17 19:33 ID:BEY/5JhK]
ip6tablesは使ってますか?
増カレー度の必要性はないから
フィルタリングにしか使って
ないのでしょうか?

今いちipv6におけるiptablesの
使い道がよく分かりません。

233 名前:名無しさん@Emacs mailto:sage [02/07/18 00:41 ID:SLqjV1Ug]
IPv6って、基本的に全部グローバルサーバ
なんで、自分の身は自分で守ろうってこと
だろ。

それにIPsecがあるんだから、FireWallは
役にたたないので、自分で守るってこと
だろ


234 名前:login:Penguin [02/07/31 22:43 ID:sepoqRm7]
RedHat 7.3 (Xなし、iptables でフィルタ)で samba 動かしてます。普段は ssh でログイン。

iptables を稼動しているときに、samba を再起動すると Windows から見えなくなります。
iptables を止めて、samba を再起動すると、もちろん、再び見えるようになります。
そして、iptables を稼動させても、Windows から見えます。
(何をやっても、ssh の接続は問題ないです。)

nmap localhost すると必ず139は空いています。

なぜかわかりますか?

# デフォルトのチェインの初期化
$IPTABLES -F INPUT
$IPTABLES -F FORWARD
$IPTABLES -F OUTPUT

# 下記ルールにマッチしないパケット全部を拒否
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT DROP

# ループバックアドレスに関してはすべて許可
$IPTABLES -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
$IPTABLES -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
# LAN 内での SSH 接続を許可
$IPTABLES -A INPUT -p tcp -s $LOCAL_NET -d $THIS_HOST --dport 22 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -s $THIS_HOST -d $LOCAL_NET --sport 22 -j ACCEPT
# LAN 内での SAMBA 接続を許可
$IPTABLES -A INPUT -p tcp -s $LOCAL_NET -d $THIS_HOST --dport 137:139 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp -s $THIS_HOST -d $LOCAL_NET --sport 137:139 -j ACCEPT

よろしくお願いします。


235 名前:login:Penguin mailto:sage [02/08/01 12:34 ID:88yj7yTC]
>>234
それは漏れもかなり悩まされたよ!
$IPTABLES -A INPUT -ptcp -s $LOCAL_NET -d $LOCAL_NET --dport 137:139 -j ACCEPT
でいけると思う。理由はわからん。



236 名前:名無しさん@Emacs mailto:sage [02/08/01 18:02 ID:5wqD4t0I]
>>234
www.samba.gr.jp/project/translation/2.2.2/textdocs/BROWSING.txt
あたりを読んで,NetBIOSについて理解するのが先でなかろうか?

$IPTABLES -A INPUT -p udp -s $LOCAL_NET --dport 137:139 -j ACCEPT
とすれば多分いけるだろうけど。


237 名前:login:Penguin mailto:sage [02/08/01 20:04 ID:vHb59nH3]
>>235-236 ありがとうございます。
Linux起動時点では大丈夫なんですけど、iptables を再起動したら、やっぱり見えなくなるんです。

まずは、NetBIOS を理解します。

あと、下の設定だと、WWWが見られないんですよね。間違いありますか?
# 外部ネットワークとの HTTP 接続を許可
${IPTABLES} -A INPUT -p tcp -s $ANY -d $THIS_HOST --dport 80 -j ACCEPT
${IPTABLES} -A OUTPUT -p tcp -s $THIS_HOST -d $ANY --sport 80 -j ACCEPT


238 名前:login:Penguin mailto:sage [02/08/02 11:51 ID:+Y3htquK]
>>237
Linuxマシンから外のWWWへアクセスするなら
${IPTABLES} -A OUTPUT -p tcp -s $THIS_HOST -d $ANY --dport 80 -j ACCEPT
のみで,
内部ネットワークからもアクセス許可するなら
${IPTABLES} -A FORWARD -o $ifwan -i $iflan -p tcp -s $int_net --dport 80 -j ACCEPT
では?

>${IPTABLES} -A INPUT -p tcp -s $ANY -d $THIS_HOST --dport 80 -j ACCEPT
だと自ホストWWWへのアクセス許可になると思うけど.

239 名前:login:Penguin mailto:sage [02/08/02 16:43 ID:tT5xmltT]
>>238
>Linuxマシンから外のWWWへアクセスするなら
>${IPTABLES} -A OUTPUT -p tcp -s $THIS_HOST -d $ANY --dport 80 -j ACCEPT
>のみで,

すんません。あかんでした。。。。

240 名前:238 mailto:sage [02/08/03 03:34 ID:KJbpRFkM]
>>239
ip_conntrackモジュールはロードしてる?

241 名前:238 mailto:sage [02/08/03 04:13 ID:KJbpRFkM]
>>234 のOUTPUTルールや >>237 のINPUTルールは
戻りパケットのことを考えて設定したんだと思うけど,ip_conntrackがロードされてれば
接続追跡をして戻りパケットも考慮してくれる.
これがなかったら1024番以降のポートも開けなきゃいけない.
FTPを使うならip_conntrack_ftpも必要.

もしモジュールがなかったら
Networking Options→Netfilter Configurationで
Connection tracking (required for masq/NAT)
FTP protocol support
を有効にしてmake

242 名前:login:Penguin [02/08/03 12:13 ID:iu8kE8Ud]
ip_conntrackとip_conntrack_ftpをmodprobeしてロードしてるのですが、
未だにpassiveでしかftpできないんです。
何か設定が必要でしょうか?

243 名前:login:Penguin [02/08/03 12:24 ID:YvQoPcS4]
>>242
man iptables して state モジュールを調べろ。

244 名前:login:Penguin mailto:sage [02/08/05 22:14 ID:dkr4kunF]
>>240
ip_conntrackモジュールをロードしましたが、、、駄目でした。。。



245 名前:login:Penguin mailto:sage [02/08/06 00:11 ID:BvFZ+SuN]
samba のブラウジングについては、
OUTPUT チェインをとって、INPUT チェインだけでフィルタリングすることで、

WWWブラウジングについては
${IPTABLES} -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
${IPTABLES} -A INPUT -i eth0 -j ACCEPT
これを追加することで、可能となりましたが・・・・

いいのか。。汗



246 名前:login:Penguin [02/08/06 06:55 ID:qS7JWqe7]
111番を塞ぐには
/etc/sysconfig/iptablesに
-A INPUT -p tcp -m tcp --dport 111 -j REJECT --reject-with icmp-port-unreachable
記述して、iptables再起動で大丈夫ですか?

247 名前:login:Penguin [02/08/06 10:16 ID:ndQ8zSfZ]
世の中には、webminってものがあるね。(webminで検索すらみつかんだろう)
つかってみようや。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<335KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef