Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> Linux構成チュートリアル下のIpTable

Linux構成チュートリアル下のIpTable

  

1、パケットフィルターファイアウォールのデフォルトテーブル、natテーブル、mangleテーブル2に指定されたテーブルフィルター、追加、削除、更新3の操作コマンドの指定、チェーン操作パケットフィルターファイアウォールの入力、出力の指定、進む。あなた自身の定義を操作することも可能です。 4.ルールマッチャーを指定するさまざまなルールが一致します。例えば、IP、ポート、パケットタイプ5、指定されたターゲットアクションACCEPTはDROPによって破棄され、REJECTは拒否されたパケットLOGはパケット情報が記録されていることを意味します。 ,null,null,3],-t table] cmd [chain] [rule-matcher] [ - j target] cmd:-A選択したチェーンの最後に1つ以上のルールを追加します。-D Delete -R Replace -I Insert -Lすべてのルールを一覧表示します - Fクリア - N作成 - X指定したユーザー定義チェインを削除します - Pパーマネントチェインのデフォルト規則を指定します - C指定したパッケージが指定したチェインの規則と一致するか確認します - Z指定したチェインのすべての規則のパケットバイトをカウントしますクリアされた-hはヘルプ情報を表示します。//example#touch /etc/rc.d/filter-firewall //IPT = /sbin /iptables WWWSERVER = 192.168.168.119 FTPSERVER = 192.168.168.119 IPRANGE = 192.168.168.0 /24 $ IPT -F $ IPT -P転送ドロップ$ IPT -A転送-p tcp -d $ WWWSERVER --dport www -i eth0 -j ACCEPT $ IPT -A転送-p tcp -d $ FTPSERVER --dport ftp -i eth0 -j ACCEPT $ IPT -A入力-s 192.168.168.81 -i eth0 -j DROP ----------------------- - 事例:数日前に小さな問題が発生しました。通信用のパブリックIPを持つ小さなネットワークです。 NATを使用してNATを実行した後、すべてのユーザーがこのIPから出ます。 80のように、NATでSNATを実行します(全員、ここで外部ネットワークに接続します)。iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 222.111.33.88それから発表されるべきサービスのためにDNATをして下さい(外部の顧客は公共のIPを通してサーバにアクセスできます):iptables -t nat -A PREROUTING -d 222.111.33.88 -p tcp -m tcp --dport 80 -j Destination 192.168.1.250:80 2つのステップの後、内部ユーザーは外部ネットワークにアクセスできるはずです、そして外部ユーザーは私達の内部サーバーにアクセスできます。 **注:転送を有効にして、以前の規則をクリアします。 ****** echo 1> /proc /sys /net /ipv4 /ip_forward iptables -F iptables -t nat -F iptables -t nat -X *********** ********************

しかし、今問題があります。つまり、NAT(LAN)の背後にいるユーザーはWAN IPを直接通過しません:222.1111.33.88内部サーバーにアクセスします。顧客は1つのIP(222.111.33.88)だけが便利であると感じています、そして彼らはドメイン名を買いたくありません。彼はただ誰もがこのIPを覚えていることを望みます。いつでもどこでも(内部と外部の両方で)アクセスできます。

ここで、内部ネットワークがWAN IP経由でサーバーにアクセスできない理由を見てみましょうパケットの流れを見てみましょう:イントラネットアクセスのユーザーIPアドレスが192.168.1.123であるとします。サーバーIPアドレスは192.168です。 .1.250、全体のプロセスは次のようになります。XXXポートを介して222.111.33.88の192.168.1.123アクセスポート202、送信元IPポート:192.168.1.123:XXXターゲットIPポート:222.1111.88.88:80データパケットを受信した後、NAT要求は内部(DNAT)であることがわかり、パケットは192.168.1.250に直接送信されました。 192.168.1.250は192.168.1.123からパッケージを受け取りました。 192.168.1.123に再応答すると、192.168.1.123は192.168.1.250:80 ---> 192.168.1.123XXXのような応答を受け取ります。しかし、192.168.1.123は222.111.33.88:80を要求しているため、192.168.1.250:80の応答はありません。データ転送に失敗しました。したがって、内部ユーザーはWAN IPを介して直接アクセスすることはできません。上記のプロセスを通じて、問題は主にイントラネット要求からゲートウェイへのものであることがわかりました。最初のチェーンPREROUTINGに入ると、DNAT(ポートマッピング)は外部ネットワークカードからではないため、ソースアドレス変換のSNATを通過しません。そのため、パケットが正しく戻ってくるようにしたい場合は、PREROUTINGの後にSNATを実行する必要があります。 iptables -t nat -I POSTROUTING -s 192.168.1.0/255.255.255.0 -p tcp -d 192.168.1.250 - dport 80 -j SNAT --to 192.168.1.1これで問題は解決しました。 ***それがFORWARD DROPである場合は、192.168.1.250:80を開くことを忘れないでください。-A FORWARD -p tcp -d 192.168.1.250 - dport 80 -j ACCEPT

あなたがFTPサービスを使いたい場合は、適切なFTPモジュールをロードします。modprobe ip_conntrack_ftp modprobe ip_nat_ftpアクティブモードとパッシブモードにも注意してください。

--------------------------記事:1、iptablesの概要

iptablesは複雑で、Linuxカーネルに統合されています。ユーザーはiptablesを通してあなたのコンピュータに出入りするパケットをフィルタリングすることができます。 iptablesコマンドでルールを設定して、コンピュータネットワークを保護します。どのデータを通過させること、通過させることができないこと、そしてデータをログに渡すことができます。次に、今から始めて、自分自身のルールを設定する方法を紹介します。

2、初期化作業

iptables -Fの下のシェルプロンプト#で

Copyright © Windowsの知識 All Rights Reserved