【Linux】Linux-iptablesコマンドを一歩一歩学ぶ(186)
10714 ワード
00.目次
文書ディレクトリ 00. ディレクトリ 01. コマンド概要 02. コマンドフォーマット 03. 共通オプション 04. 参考例 05. 付録 01.コマンドの概要
iptablesコマンドはLinuxでよく使われるファイアウォールソフトウェアで、netfilterプロジェクトの一部です.直接構成したり、多くのフロントエンドやグラフィックインタフェースで構成したりすることができます.
02.コマンドフォーマット
03.一般的なオプション
フォーマットの詳細
iptablesコマンドオプション入力順序
テーブル名は次のとおりです. raw:Webアドレスフィルタなどの高度な機能. mangle:サービス品質を実現するためのパケット修正(QOS). net:ゲートウェイルータ用アドレス変換. filter:ファイアウォールルール用のパケットフィルタリング.
ルール・チェーン名は次のとおりです. INPUTチェーン:入力パケットを処理する. OUTPUTチェーン:出力パケットを処理する. PORWARDチェーン:転送パケットを処理する. PREROUTINGチェーン:宛先アドレス変換(DNAT)用. POSTOUTINGチェーン:ソースアドレス変換(SNAT)用.
アクションは次のとおりです. accept:パケットを受信します. DROP:パケットを破棄します. REDIRECT:リダイレクト、マッピング、透明エージェント. SNAT:ソースアドレス変換. DNAT:宛先アドレス変換. MASQUERADE:ADSL用IP偽装(NAT). LOG:ログ記録.
04.参考例
4.1既存のiptablesルールのクリア
4.2指定されたユーザー定義チェーンの削除
指定したユーザー定義チェーンを削除します.このチェーンは参照されていない必要があります.参照されている場合は、削除する前に関連するルールを削除または置換する必要があります.パラメータが指定されていない場合、このコマンドは、組み込まれていないチェーンを削除しようとします.
4.3全てのチェーンのパケット及びバイトのカウンタをクリアする
4.4ローカルループバックインタフェースを許可する(即ち、ネイティブアクセスを実行する)
4.5確立または関連チェーンの通行を許可する
4.6すべてのネイティブの外部へのアクセスを許可する
4.7 22ポートへのアクセス許可
4.8 80ポートへのアクセス許可
4.9 ftpサービスを許可する21ポート
4.10 FTPサービスを許可する20ポート
4.11他の許可されていない規則へのアクセスを禁止する
4.12他の許可されていない規則へのアクセスを禁止する
4.13単一IPを遮断するコマンド
4.14セグメント全体、すなわち172.16.0.1から172.16.0.254までのコマンド
4.15セグメント全体、すなわち172.16.0.0から172.16.255.254までのコマンド
4.16セグメント全体、すなわち172.0.0.0から172.255.255.254までのコマンド
4.17追加されたiptablesルールの表示
4.18追加されたiptablesルールの削除
すべてのiptablesをシーケンス番号で表示し、実行します.
例えばINPUTの9番のルールを削除する
4.19フィルタテーブルINPUTのすべての規則をクリアする
4.20 filterテーブルINPUTのデフォルトルールを設定するのはDROPです
05.付録
参考:【Linux】一歩一歩Linuxシリーズチュートリアルのまとめ
文書ディレクトリ
iptablesコマンドはLinuxでよく使われるファイアウォールソフトウェアで、netfilterプロジェクトの一部です.直接構成したり、多くのフロントエンドやグラフィックインタフェースで構成したりすることができます.
02.コマンドフォーマット
: iptstate [ ] [ ]
03.一般的なオプション
-t< >: ;
-A: ;
-D: ;
-i: ;
-R: ;
-L: ;
-F: ;
-Z: ;
-N: ;
-P: ;
-h: ;
-p: ;
-s: ip ;
-j< >: ;
-i< >: ;
-o< >: 。
フォーマットの詳細
iptablesコマンドオプション入力順序
iptables -t <-A/I/D/R> [ ] <-i/o > -p <-s IP/ > --sport <-d IP/ > --dport -j
テーブル名は次のとおりです.
ルール・チェーン名は次のとおりです.
アクションは次のとおりです.
04.参考例
4.1既存のiptablesルールのクリア
[root@localhost ~]# iptables -F
[root@localhost ~]#
4.2指定されたユーザー定義チェーンの削除
[root@localhost ~]# iptables -X
[root@localhost ~]#
指定したユーザー定義チェーンを削除します.このチェーンは参照されていない必要があります.参照されている場合は、削除する前に関連するルールを削除または置換する必要があります.パラメータが指定されていない場合、このコマンドは、組み込まれていないチェーンを削除しようとします.
4.3全てのチェーンのパケット及びバイトのカウンタをクリアする
[root@localhost ~]# iptables -Z
[root@localhost ~]#
4.4ローカルループバックインタフェースを許可する(即ち、ネイティブアクセスを実行する)
[root@localhost ~]# iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
[root@localhost ~]#
4.5確立または関連チェーンの通行を許可する
[root@localhost ~]# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
[root@localhost ~]#
4.6すべてのネイティブの外部へのアクセスを許可する
[root@localhost ~]# iptables -A OUTPUT -j ACCEPT
[root@localhost ~]#
4.7 22ポートへのアクセス許可
[root@localhost ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[root@localhost ~]#
4.8 80ポートへのアクセス許可
[root@localhost ~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost ~]#
4.9 ftpサービスを許可する21ポート
[root@localhost ~]# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
[root@localhost ~]#
4.10 FTPサービスを許可する20ポート
[root@localhost ~]# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
[root@localhost ~]#
4.11他の許可されていない規則へのアクセスを禁止する
[root@localhost ~]# iptables -A INPUT -j REJECT
[root@localhost ~]#
4.12他の許可されていない規則へのアクセスを禁止する
[root@localhost ~]# iptables -A FORWARD -j REJECT
[root@localhost ~]#
4.13単一IPを遮断するコマンド
[root@localhost ~]# iptables -I INPUT -s 172.16.0.88 -j DROP
[root@localhost ~]#
4.14セグメント全体、すなわち172.16.0.1から172.16.0.254までのコマンド
[root@localhost ~]# iptables -I INPUT -s 172.16.0.0/24 -j DROP
[root@localhost ~]#
4.15セグメント全体、すなわち172.16.0.0から172.16.255.254までのコマンド
[root@localhost ~]# iptables -I INPUT -s 172.16.0.0/16 -j DROP
[root@localhost ~]#
4.16セグメント全体、すなわち172.0.0.0から172.255.255.254までのコマンド
[root@localhost ~]# iptables -I INPUT -s 172.0.0.0/8 -j DROP
[root@localhost ~]#
4.17追加されたiptablesルールの表示
[root@localhost ~]# iptables -L -n -v
Chain INPUT (policy ACCEPT 158 packets, 17668 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 106 packets, 19752 bytes)
pkts bytes target prot opt in out source destination
[root@localhost ~]#
4.18追加されたiptablesルールの削除
すべてのiptablesをシーケンス番号で表示し、実行します.
[root@localhost ~]# iptables -L -n --line-numbers
例えばINPUTの9番のルールを削除する
[root@localhost ~]# iptables -D INPUT 9
4.19フィルタテーブルINPUTのすべての規則をクリアする
[root@localhost ~]# iptables -F INPUT
[root@localhost ~]#
4.20 filterテーブルINPUTのデフォルトルールを設定するのはDROPです
[root@localhost ~]# iptables -P INPUT DROP
[root@localhost ~]#
05.付録
参考:【Linux】一歩一歩Linuxシリーズチュートリアルのまとめ