• ベストアンサー

iptables関連コマンド

iptablesコマンドを使って設定をしているのですが、 iptablesの設定内容をみたいのですが、 iptables -L でfilter table の中身はみれるのですが、 nat table の中身が見れません。 どうすればいいのでしょうか? natが設定できていないのでしょうか? コマンドが別にあるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.1

テーブル名を省略せずに指定してください。 # iptables -L -t filter # iptables -L -t nat # iptables -L -t mangle などです。

sakura20060208
質問者

お礼

ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CentOSでiptablesの設定をしています。

    下のコマンドiptablesの設定の確認をしようとしているのですが、コマンドがないといわれてします。 これの原因は何でしょうか。初心者のためわかりやすくご教授願いたいです。 sudo iptables -L sudo: iptables: command not found

  • iptablesが起動しない!?

    下記コマンドでiptablesを起動使用としたのですが、statusを見ても停止したままです。 原因がわからず困っています。 どうすればよいでしょうか? [root@localhost ~]# service iptables start ファイアウォールルールを適用中: [ OK ] チェインポリシーを ACCEPT に設定中filter [ OK ] iptables モジュールを取り外し中 [ OK ] [root@localhost ~]# service iptables status ファイアウォールは停止

  • LINUXのiptablesについて

    通常LINUXのコマンドライン上で新たにiptablesルールを作り直すとき # iptablse -F # iptables -P INPUT DROP # iptables -P OUTPUT ACCEPT # iptables -P FORWARD DROP # service iptables save と上記のようにコマンドを叩いて、あたらしいデフォルトのチェインポリシーを 事前に定義するもののようです。 この後【/etc/sysconfig/iptablse】というファイルを覗いてみると、 # Generated by iptables-save v1.4.7 on Wed Sep 5 06:20:56 2012 *filter :INPUT DROP [1:151] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] COMMIT # Completed on Wed Sep 5 06:20:56 2012 上記のような内容がiptablesに記述されていると思います。 おそらくこれに特定の条件のみ パケットを受信するportを開放したりする記述を追記していくものと存じます。 たとえば -A INPUT -p tcp --dport 22 -J ACCEPT などと記述して他ホストからのssdポートへのアクセスを 許可するといったかんじですね。 ただ冒頭のデフォルトのポリシーの設定に関しては、やはりコマンドライン上で # iptablse -F # iptables -P INPUT DROP # iptables -P OUTPUT ACCEPT # iptables -P FORWARD DROP # service iptables save このようなコマンドを叩いて設定するのが普通なのでしょうか? 例えば、デフォルトポリシーを直接 ファイルに記述するといったことはしないのでしょうか? ================================================================= *filter #以下で、デフォルトのフィルタポリシーを設定する -P INPUT DROP -P OUTPUT ACCEPT -P FORWARD DROP COMMIT ================================================================= 上記のように、直接iptablesの書式で書き込むように・・。 気になった理由としてはコマンドラインでデフォルトポリシーを指定した場合と コマンド -Aをつかって任意のportを開放する指定をした時の記述が異なることがきになっているのです。 デフォルトポリシーの記述は :INPUT DROP [1:151] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] 上記のような 行頭にコロンがついたような記述になっているのに -A INPUT -p tcp --dport 22 -J ACCEPT 上記のような -Aコマンドを叩いたときは、そのままコマンドがiptablseファイルに記述されているように思います。 :INPUT DROP [1:151] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] -P INPUT DROP -P OUTPUT ACCEPT -P FORWARD DROP 上記の二種類の書き方を直接iptablesに記述してもキチンと動作します。 なぜ、上記のようにデフォルトポリシーに関しては二種類の書き方が存在するのでしょうか?

  • iptables ポートフォワーディングについて

    ポートフォワーディングの設定を行いたくて試しにやっているのですが、 うまくいかないので教えていただけないでしょうか。 WinXPクライアント(192.168.1.22) | Linuxルーター(eth0=192.168.1.40, eth1=192.168.2.41)起動しているサーバーはssh,telnet,ftp,http,postgresです。 | LinuxWebサーバー(eth0=192.168.2.81 port=80)起動しているサーバーはssh,telnet,ftp,http,postgres,cvspserverです。 WinXPクライアントからLinuxWebサーバーにアクセスしたいのですが、以下のように設定しても WinXPクライアントのブラウザには「サーバーが見つかりません」と表示されてしまいます。 他に追記すべき設定、お気づき等ございましたら教えてください。よろしくお願いします。 Linuxルーターのiptables設定内容(service iptables stopを行った後、以下を設定しております) iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.2.81:80 iptables -A FORWARD -d 192.168.2.81 -p tcp --dport 80 -j ACCEPT ------------------------------------------------------------- 上記設定後iptables -Lとしてみたら以下のように表示されました。 Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT tcp -- anywhere 192.168.2.81 tcp dpt:http Chain OUTPUT (policy ACCEPT) target prot opt source destination さらにservice iptables saveをして cat /etc/sysconfig/iptablesとしてみたところ以下のように表示されました。 # Generated by iptables-save v1.3.5 on Sat Jan 30 11:46:10 2010 *nat :PREROUTING ACCEPT [2:280] :POSTROUTING ACCEPT [2:115] :OUTPUT ACCEPT [2:115] -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.81:80 COMMIT # Completed on Sat Jan 30 11:46:10 2010 # Generated by iptables-save v1.3.5 on Sat Jan 30 11:46:10 2010 *filter :INPUT ACCEPT [148:9894] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [169:16447] -A FORWARD -d 192.168.2.81 -p tcp -m tcp --dport 80 -j ACCEPT COMMIT # Completed on Sat Jan 30 11:46:10 2010 ------------------------------------------------------------- ちなみに以下のように設定してWinXPクライアントからsshで192.168.1.40の10000ポートに接続すると接続できました。 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 10000 -j DNAT --to 192.168.2.41:22 ------------------------------------------------------------- 以下のように設定してWinXPクライアントから「telnet 192.168.1.40 10000」コマンドを発行してみるとしていない 時と比べて「接続中: 192.168.1.40...」となっている時間が長いので何かしら影響しているのかなと思います。 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 10000 -j DNAT --to 192.168.2.81:23

  • iptables

    iptablesの機能を利用するアクセス制限のシェルスクリプトを作りました。 それはだいたい以下のサイトの一番下の方のスクリプトのようなものです。 http://apollon.cc.u-tokyo.ac.jp/~watanabe/tips/nat.html これをLinux起動時に毎回実行したいので、このスクリプトのシンボリックリンクをrc5.dに作ればよいのですが、rc5.dにiptablesのシンボリックリンクがあるのでそれを利用しようと思いました。 そのリンク先はinit.d/iptablesで、init.d/iptablesを開くと/etc/sysconfig/iptablesという値が設定されていました。 自分が作成したシェルスクリプトを実行してからinit.d/iptables saveを実行すると/etc/sysconfig/iptablesが作成されました。 これで、次回Linuxを起動した時、init.d/iptablesが実行されて/etc/sysconfig/iptablesの内容も実行されると思いましたが、そうはなっていませんでした。 当たり前ですか? iptablesの自作のルールを記述したシェルスクリプトはinit.d/iptablesの処理が終わってから実行しなくてはならないものですか?

  • iptablesについて

    redhat7.3でiptableの反映をさせようとしましたが service iptables save でUsageでsaveパラメータはありませんでした。 service iptables resetとし、 iptable -Lとすると、設定していたものがなくなっていました。 もう一度、ルールを設定し、念のため iptables-save > set.cfg としてファイルに保存しておりますので、いつでも iptables-restore < set.cfgで戻せますが、この状態ではiptablesは反映されていないのでしょうか?

  • iptables、の設定について

    iptables、の設定について イーサネットポートとUSBモデムがついた端末でIPマスカレード の設定をしました。 イーサネットポートの先にハブがありハブに接続された端末から ping www.yahoo.co.jp を打つと”Reply from 192.168.0.50 :Destination port unreacheable” と表示されます。 iptablesの設定はしたのようにしてます。 何が問題なんでしょう? iptables設定 iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp -j MASQUERADE

  • CentOS6.5のiptablesについて

    CentOS6.5において、こちらのサイトhttp://centossrv.com/iptables.shtml を参考にiptablesのスクリプトを作成しました。 いざ sh iptables.shで実行しようとすると iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ] iptables: ファイアウォールルールを消去中: [ OK ] iptables: モジュールを取り外し中: [ OK ] iptables: ファイアウォールルールを適用中: Bad argument `ACCEPT' Error occurred at line: 9 Try `iptables-restore -h' or 'iptables-restore --help' for more information. [失敗] と表示されます。 9行目付近は 1 #!/bin/bash 2 3 4 # デフォルトルール(以降のルールにマッチしなかった場合に適用するルール)設 定 5 IPTABLES_CONFIG=`mktemp` 6 echo "*filter" >> $IPTABLES_CONFIG 7 echo ":INPUT DROP [0:0]" >> $IPTABLES_CONFIG # 受信はすべて破棄 8 echo ":FORWARD DROP [0:0]" >> $IPTABLES_CONFIG # 通過はすべて破棄 9 echo ":OUTPUT ACCEPT [0:0]" >> $IPTABLES_CONFIG # 送信はすべて許可 10 echo ":ACCEPT_COUNTRY - [0:0]" >> $IPTABLES_CONFIG # 指定した国からのア> クセスを許可 11 echo ":DROP_COUNTRY - [0:0]" >> $IPTABLES_CONFIG # 指定した国からのア> クセスを破棄 12 echo ":LOG_PINGDEATH - [0:0]" >> $IPTABLES_CONFIG # Ping of Death攻撃は ログを記録して破棄 とサイトと同じ内容になっています。 空白など無駄なものが挿入されていないか確認しましたがありませんでした。 解決できるようどうかお力添えをお願いします。

  • iptablesを使ってルーターを作りたい

    今、iptablesを使ってルーターを作りたいと思っています。 グローバルIPは複数利用できます。 ルーターに使うLinux(CentOS4.3) eth0:192.168.100.1 ⇒ LAN内 eth1:210.*.*.1 ⇒ インターネット という感じになっています 上記ルーターには、外部からグローバルIPでアクセスできるようになっています。 現在、 iptables -t nat -A POSTROUTING -s 192.168.100.0/255.255.255.0 -o eth1 -j MASQUERADE とやり、LAN内からインターネットにはつなげるようになっています。 グローバルIP 210.*.*.2 で外部からアクセスがあった時に プライベートIP 192.168.100.2 にすべて中継する設定をしたいとおもっています。 iptables -t nat -A PREROUTING -d 210.*.*.2 -p tcp --dport 80 -j DNAT --to 192.168.100.2 とやってみたのですが、外部からはアクセスすることはできませんでした。 どなたか、教えてもらえると助かります。

  • iptablesファイルの説明サイト

    iptablesの設定を iptablesファイルを編集して設定を行っているのですが iptablesコマンドのオプションを説明しているサイトはよく見かけるのですが iptablesファイルを編集した場合の記述の説明サイトありますでしょうか?

このQ&Aのポイント
  • 池袋でご年配が運転するプリウスが踏み間違えで暴走し母子2人が亡くなる痛ましい事件が起きました。
  • 被告は自らの非を認めず、ブレーキやメーカーを責めている。
  • プリウスの運転やマナーの悪さには以前から指摘があり、事件後にはさらにネガティブなイメージが広まりました。
回答を見る