iptablesについて通信を制御しているというのはなんとなくで認識していたんですが、そもそも設定になっているのかなど仕組を知って設定してます?って現場のベテランに言われて頭が白くなったので備忘録程度に残しておきます。
iptablesはLinux標準のファイアウォール
まず、iptablesという物自体についてです。
iptablesはLinuxのkernel2.4以降に標準インストールされている、標準のファイアウォールです。
Linuxにインストールされているiptablesは「パケットフィルタリング型」のファイアウォールになります。
iptablesの設定はどのファイルを修正すれば良い?
iptablesの設定を変更するには「/etc/sysconfig/iptables」を修正します。
下記のコマンドを使用して修正することもできます。
iptables [-t テーブル] コマンド [マッチ] [ターゲット/ジャンプ]
iptablesの4つのテーブル
iptablesは下記の4つのテーブルに分かれていて、制御しています。
それぞれのテーブルについてざっくり紹介していきます。
filterテーブル
filterテーブルはパケットを通過する、パケットを遮断するなどの設定を記述するセクションです。
*filter .... .... COMMIT
行の初めに*を付けて始まり、最後はCOMMITを指定します。
- 入力に対して受け付ける設定をする場合
*filter :INPUT ACCEPT[0:0] COMMIT
natテーブル
natテーブルはNAT(ネットワーク変換機能)を担います。
送信先/送信元のパケットの中身を書き換えるときに利用します。
各通信をローカルのサーバへ振り分けるルーターとしての使う事も出来ます。
*nat
#natについて記述する
COMMIT
チェインの役割
チェイン | 役割 |
---|---|
PREROUTING | 受信時の宛先アドレスを変換するチェイン |
INPUT | 入力(受信)に対するチェイン |
OUTPUT | 出力(受信)に対するチェイン |
FORWARD | 転送に対するチェイン |
POSTROUTING | 送信時に送信元アドレスを変換するチェイン |
テーブルごとに使えるチェイン
filterテーブル | INPUT,OUTPUT,FORWARD |
natテーブル | POSTROUTING,PREROUTING,OUTPUT |
mangleテーブル | POSTROUTING,PREROUTING,INPUT,OUTPUT,FORWARD |
rawテーブル | PREROUTING,OUTPUT |
さいご
最後まで読んでいただき、ありがとうございました。
もし、記載している内容が間違えていれば遠慮なくコメントしてください!
私自身の勉強になりますし、他の人がこの記事を見た時に間違えた情報を見ることになってしまうので💦
関連記事・オススメ記事
↓オススメ書籍↓
![]() | 価格:2,860円 |

![]() | JavaプログラマGold SE 8 試験番号:1Z0-809 (オラクル認定資格教科書) [ 山本道子(プログラミング) ] 価格:4,620円 |

![]() | 新人エンジニアのための データベースのしくみと運用がわかる本【電子書籍】[ 五十嵐貴之 ] 価格:2,178円 |
