Linux IPTABLES設定の詳細

  

まだあなたのIPTABLESの基本的な知識が理解できない場合は、まず見てみることをお勧めします。

フィルタテーブルファイアウォールを設定するための設定を開始します。設定ステータス[root @ tp〜]#iptables -L - nChain INPUT(ポリシーACCEPT)ターゲットプロトコルオプトソースdestinationChain(ポリシーACCEPT)ターゲットプロトコルオプトソースdestinationChain OUTPUT(ポリシーACCEPT)ターゲットプロトコルオプトソースdestinationChain RH-Firewall-1 -INPUT(0個の参照)ターゲットプロトコルソース宛先ACCEPT all - 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp - 0.0.0.0/0 0.0.0.0/0 icmpタイプ255ACCEPT esp - 0.0.0.0/0 0.0.0.0/0 ACCEPT ah - 0.0.0.0/0 0.0.0.0/0 ACCEPT udp - 0.0.0.0/0 224.0.0.251 udp dpt:5353ACCEPT udp - 0.0.0.0/0 0.0.0.0/0 udp dpt :631ACCEPT all - 0.0.0.0/0 0.0.0.0/0状態、ESTABLISHEDACCEPT tcp - 0.0.0.0/0 0.0.0.0/0状態新しいtcp dpt:22ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0状態NEW tcp dpt:80ACCEPT tcp - 0.0.0.0/0 0.0.0.0/0状態new tcp dpt:25すべて拒否 - 0.0.0.0/0 0.0.0.0/0 reject-w Linuxをインストールしたときにicmp-host -hibitedが表示され、ファイアウォールを選択し、22、80、25のポートを開いていましたが、Linuxのインストール時にファイアウォールを起動しなかった場合は、これが当てはまります[root @ tp〜] #iptables -L -nChain INPUT(ポリシーACCEPT)ターゲットプロトコルオプトソースdestinationChain FORWARD(ポリシーACCEPT)ターゲットオプションオプトソースdestinationChain OUTPUT(ポリシーACCEPT)ターゲットオプションオプトソース宛先ルールが正しくない(2)元のルールをクリアします。 Linuxのインストール時にファイアウォールを起動したかどうか、独自のファイアウォールを設定する場合は、現在のフィルタのすべてのルールをクリアします。[root @ tp〜]#iptables -Fプリセットテーブルフィルタ内のすべてのルールチェーンのルールをクリアします。 [root @ tp〜]#iptables -Xプリセットテーブルフィルタ内のユーザー定義チェーン内のルールを消去します[root @ tp〜]#iptables -L -nチェインINPUT(ポリシーACCEPT)target prot opt source destinationChain FORWARD(ポリシーACCEPT)ターゲットprotオプトソースdestinationChain OUTPUT(ポリシーACCEPT)ターゲットprotオプトソースdestinationなし、およびLinuxをインストールしていますファイアウォールが起動されていない場合も同じです(事前に、これらの設定はコマンドでIPを設定するのと同じです。再起動は役に立ちません)。[root @ tp〜]#/etc/rc.d/init。 d /iptables saveは/etc /sysconfig /iptablesファイルに書き込むことができます。書き込んだ後は、ファイアウォールを再起動して機能させることを忘れないでください。[root @ tp〜]#service iptables restart今すぐIPTABLES構成テーブルの設定(3)デフォルトのルールを設定する[root @ tp〜]#iptables -P入力ドロップ[root @ tp〜]#iptables -P出力アカウント[root @ tp〜]#上記のiptables -P FORWARD DROPの意味は、IPTABLESのフィルタテーブルの2つのチェーン規則(INPUT、FORWARD)を超えたときに、これら2つの規則のパケットの扱い方がDROP(放棄)になるということです。 OUTPUTチェーン、つまり発信パケットでは、あまり多くの制限を加える必要はありませんが、ACCEPT、つまり規則的にパケットをどう処理するかを考慮する必要があります。 INPUTチェーンとFORWARDチェーンは、通過が許可されているパケットを使用していることがわかります。 OUTPUTチェーンではパッケージを渡すことはできませんこの設定は非常に合理的ですもちろん、3つすべてのチェーンをDROPすることもできますが、それは必要ではないと思われ、書くべき規則は増えます。 WEBサーバーだけを使うなど、限られた数の規則だけが欲しい、または3つすべてのチェーンがDROPであることを推奨する注:リモートSSHにログインしている場合は、最初のコマンドを入力するときにドロップしてください。 (4)ルールの追加最初にINPUTチェーンを追加します、INPUTチェーンのデフォルトルールはDROPですので、採用するためにはACCETP(pass)が必要なチェーンを書きます。リモートSSHログイン、ポート22を開く必要があります。[root @ tp〜]#iptables -A入力-p tcp --dport 22 -j ACCEPT [root @ tp〜]#iptables -A OUTPUT -p tcp --sport 22 - j ACCEPT(注:OUTPUTをDROPに設定する場合、この規則を書く必要があります。多くの人がこの規則を書くことを楽しみにしています。SSHは不可能です。リモート側では、いいですか? Webサーバーが有効でOUTPUTがDROPに設定されている場合は、それも追加する必要があります。チェーン:[root @ tp〜]#iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT、その他同様。)Webサーバーがある場合は、ポート80を開きます。[root @ tp〜]#iptables -A INPUT -p tcp --dport 80 -j ACCEPTメールサーバがある場合は、ポート25,110を開きます[root @ tp〜]#iptables -A INPUT -p tcp --dport 110 -j ACCEPT [root @ tp〜]#iptables -A入力-p tcp --dport 25 -j ACCEPT FTPサーバーがある場合は、ポート21を開きます[root @ tp〜]#iptables -A入力-p tcp --dport 21 -j ACCEPT [root @ tp〜]# iptables -A INPUT -p tcp --dport 20 -j ACCEPT DNSサーバーがある場合は、ポート53を開きます[root @ tp〜]#iptables -A INPUT -p tcp --dport 53 -j ACCEPTその他の操作を行った場合サーバは、どのポートを開くか、行に書き込みます上記のものは主にINPUTチェーンに書かれていますが、上記の規則には当てはまりませんが、DROPはicmpパッケージの通過、つまりpingを許可します[root @ tp〜]#iptables -A OUTPUT -p icmp -j ACCEPT(OUTPUTはDROPに設定)[root @ tp〜]#iptables -A INPUT -p icmp -j ACCEPT(INPUTはDROPに設定)ループバックを許可する(そうでないと、DNSは正しく動作しません)ちょっと待って)IPTABLES -A入力-i lo -p all -j ACCEPT(入力ドロップの場合)IPTABLES -A出力-o lo -pすべて-j ACCEPT(出力ドロップの場合)

次のOUTPUTチェーンを書きます。 OUTPUTチェーンのデフォルトのルールはACCEPTです。そのため、DROPを必要とするチェーンを作成します。zh-CN"],null,[0.98682177],zh-CN"]]]

Copyright © Windowsの知識 All Rights Reserved