iptablesのfilterテーブルによるアクセス制限

muramatsu 64views 更新:2016年7月6日

所謂ファイアーウォールみたいなものです。特定のIPに対して制限をかけたり解除したりするのに有効かもしれないです。
結構細かい所もあるのでiptablesによるパケットフィルタリングが参考になるかもしれないです。iptablesに直接書くよりスクリプトを作成したほうが良いかもしれないです。
直接書くと他のスクリプトで設定を消すといったようなスクリプトがある場合ちょっと無駄になるかもしれません。filterテーブルに関してかなりおおざっぱに説明しますと(ほかのテーブルに関しては省略)

INPUT OUTPUT FORWARD といったチェーンがありそれぞれの目的に合わせてチェーンをiptableに直接記載するかコマンドで追加していきます。
特定のIPやパケットに対してACCEPT  DROP REJECT といったような制限や許可を決めます。 
後は -A といったようなオプション等で実際のIPなどを指定してルール追加していくという形です。

スクリプトを書く場合は

iptables -A INPUT IPアドレス -j Drop 
(-tオプションでテーブルを指定できますがテーブル指定しないと自動的にfilterテーブルに入れられます)

といったような感じでiptablesコマンドでテーブルにチェーンと処理をドンドン指定していく感じです。
直接iptablesに書く場合は加えたいテーブルの所に(filterなら*filter COMMITの間)


*filter -A INPUT IPアドレス -j Drop COMMIT

という感じで直接テーブルに記載してあげる。
iptablesコマンドはここに代わりに書いてくれるみたいな感じなので直接書く場合はいらない。
コマンドとスクリプトでルールを追加する場合 iptables-save といったようなコマンドを打つか記載しとかないと設定が次回起動したときに消えるかもしれないです。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません