ラベル iptables の投稿を表示しています。 すべての投稿を表示
ラベル iptables の投稿を表示しています。 すべての投稿を表示


2012年10月1日月曜日

iptables を使ったポートフォワーディング メモ


このエントリーをはてなブックマークに追加


すぐ忘れるiptablesメモ。

この手順で 内部 → 外部 のNATができる。しかし逆の外部 → 内部 へのアクセスはできない。

例えば以下みたいな構成で、外側から内側の4040で起動しているプロセスにアクセスしたい時。
      External
          |10.0.0.254
      +---+---+
      |  sv1  |
      |       |
      +---+---+
          |192.168.128.254
          |
          | Internal
  --------+---------+--
                    |
                    |192.168.128.10
                +---+---+
                | 4040  |
                |       |
                +-------+

まずsv1の4040ポートへのアクセスを内部の192.168.128.10:4040へポートフォワーディングさせる
sv1# iptables -t nat -I PREROUTING 1 -p tcp --dport 4040 -j DNAT --to-destination 192.168.128.10:4040

これだけではルーティング(フォワーディング)がブロックされるので、192.168.128.10:4040へのフォワードを許可してやる。
sv1# iptables -I FORWARD 1 -p tcp -d 192.168.128.10 --dport 4040 -j ACCEPT

確立済みのセッションに対するフォワーディングを許可する(戻りパケット用)
sv1# iptables -I FORWARD 2 -m state --state ESTABLISHED,RELATED -j ACCEPT

上手く行ったら設定を保存しておく。
sv1# /etc/init.d/iptables save


2012年9月24日月曜日

iptables を使った簡易NATルータメモ


このエントリーをはてなブックマークに追加


自分用メモ

eth0 10.0.0.1/255.255.255.0(外側)
eth1 192.168.128.254/255.255.255.0(内側)

の場合。



2012年3月29日木曜日

iptables 複数の--dport, --sport を指定する


このエントリーをはてなブックマークに追加


メモ

■ルールの詳細を表示
iptables -nvL --line-numbers


■複数ポートを指定
iptables -I INPUT -p tcp -m multiport --dport 80,443,8080 -j ACCEPT
iptables -I INPUT -p udp -m multiport --sport 1000,1100,1200 -j DENY


■ポートの範囲を指定
iptables -I INPUT -p tcp --dport 1000:1100 -j ACCEPT

* --dport と --sport は同時に指定できない。


2011年9月17日土曜日

KVM/libvirt 隔離された2つの仮想ネットワーク間で通信する


このエントリーをはてなブックマークに追加


検証や勉強で仮想マシンを複数作って異なるネットワークセグメントに配置したい時に使う。

RHCE/RHCSA(RHCT)の勉強するときに便利。



2010年11月29日月曜日

RHEL iptables メモ


このエントリーをはてなブックマークに追加


チェインモデル・・・チェインとはルールをグループ化したもの。標準でINPUT、FORWARD、OUTPUTがある。
RHELのデフォルト設定は、ループバック関連、自分からの送信以外ほとんどのパケットがドロップされる。

INPUT・・・自分宛のパケットを処理する。
FORWARD・・・自分宛以外のパケットを処理する(ルーターとして動く場合に使う)。
OUTPUT・・・自分で生成したパケットをフィルタする。

チェインは自分で定義でき、ターゲットとして指定できる(チェインから別チェインにフィルタを投げる)

通常のルール
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT

オリジナルチェインを作成する
# iptables -N Chainname

チェインからチェインへのルール
# iptables -I INPUT 1 -j OTHERCHAIN

このように定義することで、入力パケットをまずOTHERCHAINで処理してから、INPUTに戻すことができる(OTHERCHAINでマッチした場合はそこで終了)

現在のルールを確認
# iptables -L -v -n --line-number

設定を編集したら必ず保存
# /etc/init.d/iptables save

保存したファイルは以下にあるので、バックアップしておくと良い。
/etc/sysconfig/iptables

その他設定例
http/httpsでの接続を禁止する設定を追加(ルールの一番下に追加される)
# iptables -A OUTPUT -p tcp --sport 80,443 -j REJECT

OUTPUTの5番目のルールとして、192.168.100.0/24への接続を禁止する
# iptables -I OUTPUT 5 -d 192.168.100.0/24 -j REJECT

ルール番号を指定して削除する
# iptables -D CHAINNAE rulenum

ちなみにGUIの system-config-securitylevel でFW関連の設定いじると、iptablesの設定が「全て」上書きされるので注意。