基本的なファイアウォールのスクリプトは、Linuxワークステーションとして
これまでのところ、我々はほとんどiptablesのフィルタリングオプションの使用方法について学びました。私は今、私はデフォルトの場合、どのLinuxディストリビューションをインストールすべきだと考え小さなファイアウォールスクリプトを構築します。
デフォルトでは、すべてのLinuxディストリビューションは、すべてのフィルタチェーン上のデフォルトのポリシーを同意している。また、デフォルトのインストールで、ほとんどのLinuxディストリビューションにサービスを実行しているたくさんのままにします。もし古いLinuxディストリビューションをインストールし、昼食を取るのを決定した後に、ちょうどすべてのファイアウォールなしで起動し、パブリックIPアドレスを使用し、チャンスは、お客様のスープを食べたときには、ルートキットはすでにインストールされているお客様コンピュータ。
の次の簡単なスクリプトを見てみましょう:
#!/ bin / bashを
iptablesコマンドで、変数$ IPTを割り当てる#
IPT = / sbin / iptablesに
#各チェーン上のポリシーを設定する
$ IPT - P入力ドロップ
$ IPT - P順方向電圧降下
$ IPT - pの出力同意#デフォルトでは、とにかく設定
フィルタテーブル内のすべてのルールをフラッシュする#
$ IPT - F
ループバックインターフェイス上でトラフィックを許可する#
$ IPT -入力、私は本当に、論文同意する
ICMPトラフィックを許可#
$ IPT -入力- p ICMPベース論文同意する
着信DNSトラフィックを許可する#
$ IPT -入力- p udpを-スポーツ53 -論文同意する
#TCP接続を確立できるように
$ IPT -入力で- p tcp! -合成の論文同意する
それでは、ここでは、INPUTおよびDROP FORWARDチェーンポリシーを設定するばかりだった。 OUTPUTチェインのポリシーはACCEPT、このチェーンのデフォルトポリシーに設定されます。
これは、このパソコンではなく、ルータである我々は、これは、転送はオフになりますFORWARDチェーン内の任意のルールを追加されません。また、OUTPUTチェーン内の任意のルールを追加されません、私たち発信もOKです。
次に、我々はフィルタテーブルからのすべての既存のルールをフラッシュします。は、何も実際の動作は、この時点で。一部のアプリケーションでは、ループバックインターフェイス上でTCP / IP接続を使用する;ので安全だが、インターフェイス"本当にに来るパケットを許可する"。
我々は第2条のICMP攻撃について学んだ。しかし、それは私の意見は、ICMPの許可される必要があります。 ICMPの場合pingを使用し、tracerouteは、あなたのインターネット接続をテストするには許可されませんフィルタリング、MTRのなど、また、パスのMTUの発見は、多くのケースでは非常に重要なプロトコルが動作しません。
|
DNS応答のUDPプロトコル、および送信元ポート53を使用します。心の中で行てください: $ IPT -入力- p udpを-スポーツ53 -論文同意する 潜在的なセキュリティ違反です。なぜなら、それ以前は、この私たちはデフォルトのファイアウォールのようにすべきかと思うと明らかにした我々はこのようにしました。ただし、DNSサーバーが実行されている(これは、パーソナルコンピュータの場合)、ご自分のプロバイダのDNSからのみの送信元ポート53で受信したUDP接続を受け入れるサーバーに推奨されていない(あなたは/ etc / resolv.confの)を持っているもの。たとえば、プロバイダのDNSサーバーは1.1.1.1と1.1.2.1、アールでは、以前の行を置き換えます: $ IPT -入力- 53 -論文同意1.1.1.1 - p udpを-スポーツ掲載 $ IPT -入力- 53 -論文同意1.1.2.1 - p udpを-スポーツ掲載 この方法で、より安全になります。 |
私たちの働きに、当社のインターネット接続に必要な最後のものは既に確立されたTCP接続用の着信TCPトラフィックを許可することです。ベターに言えば、()は、TCP SYNパケットを拒否することは、このコンピュータを開始するTCPコネクションに属していないすべての着信TCPトラフィックを拒否します。
iproute2の交通制御
iproute2のは、高度なルーティング、トンネルの様々なツールを提供するソフトウェアパッケージ、およびトラフィック制御されます。
iproute2は、もともとアレクセイクズネツォフによって設計されてもLinuxカーネルでのQoSを実装するため知られている、今スティーブンHemmingerによって維持されます。 iproute2のためのプライマリサイトです http://linux-net.osdl.org/index.php/Iproute2その主要なドキュメントのサイトです http://www.lartc.org。
iproute2をされるIPとtcが提供する最も重要なツールです。
ネットワークの構成:""ツールのIP
ipツールは、Linuxボックスに必要なほとんどのネットワーク構成を提供します。することができます構成するインターフェイスは、ARP、ポリシールーティング、トンネル、等
現在、IPv4とIPv6では、IP)をほとんど何も(我々は、特定の状況では必要がない多くのなどを行うことができます。 ipの構文は、困難ではないですが、このテーマについてのドキュメントがたくさんある。しかし、最も重要なことは私たちが必要と知っているときにそれが必要です。
最初に、すべてのIPアドレスは、動的ルーティングプロトコル(BGP、OSPF、およびRIP)をLinux上でのシマウマは、この資料の後半で議論されるによって提供される必要がある主要なツールです。
はどのようなIPを参照してを助けるには、ipコマンドで見てみましょう知っている:
コマンドは、IPアドレスのリンクを変更することができますが、ネットワークデバイスの構成を示してIPリンクを設定します。このコマンドは、IPアドレスは、デバイスの礼節をしないを変更するために使用されます。
IPアドレスは、ip addrコマンドを使用して構成することができます。このコマンドは、プライマリまたはセカンダリ(エイリアスを追加する)は、ネットワークデバイス(IPアドレスをaddrに追加)は、各ネットワークデバイス(IPアドレスaddrを見る)、またはインターフェイス(IPアドレスからのIPアドレスを削除するためにIPアドレスを表示するIPアドレスを使用することができますaddrデル)。 IPアドレスは、異なる基準を使用して、すべてのルートをフラッシュするIP addrフラッシュ動的な例をフラッシュすることができるカーネルへの動的なルーティングプロトコルを追加しました。
近隣/アルプテーブルの管理は、いくつかのコマンドを表情豊かにaddという名前の、削除、交換、およびフラッシュを変更しているIP隣人を使用して行われます。
IPトンネル、トンネルの接続を管理するために使用されます。トンネルipip、GREをすることができますし、座っている。後でどのようにIPトンネルを構築する上での資料の例が含まれます。
ipツールルートが、アドレスを監視するため、そして、リアルタイムでのデバイスの状態の方法を提供します。このipモニタ、rtmonを使用して行うことができますrtacctのコマンドは、iproute2パッケージに含まれる。
ipツールの1つの非常に重要で、おそらく最もよく使われるオブジェクトは、カーネルのルーティングテーブル上の任意の操作を行うことができますIPルートです。これを追加するコマンドは、、、、、flushを見るとルートを取得を削除する代わりに変更しています。
1つは、物事iproute2のLinuxへの導入は、その人気を確保、ポリシールーティングされました。これは、いくつかの簡単な手順でIPアドレスのルールとipのルートを使用して行うことができます。
交通管制:伝導
tcコマンドの管理者はネットワークに非常に高価な専用のQoSのマシンの代わりにLinuxを使って、異なるQoSポリシーを作成することができます。 Linuxを使用する場合、すべての方法で任意の専用QoSのマシンが、さらに複数のQoSを実装することができます。また、一橋は良いのPCは、非常に、非常に格安強力に専用のQoSのマシンに変換することができますLinuxを実行するを使用することができます。
そのためには、QoSのサポート(CONFIG_NET_QOS ="Y"と="CONFIG_NET_SCHEDは、Linuxカーネルで構成する必要がありますY"を)。
レスキュー種目(クラスレスなqdisc)
クラスレスなqdisc単純なもののためにのみ受け入れている、遅延やデータのスケジュールにドロップします。彼らは1つのインターフェイスに接続することができますだけで、インターフェイス全体の形ができます。
がLinux上でのかれらの多くは、Linuxカーネルに含まれるいくつかのqdiscの実装です。
-
FIFOの (pfifoとbfifo):単純なqdiscは、第一に、First Outのルールによって機能します。 FIFOのアルゴリズムではpfifoまたはbfifoではバイト単位のパケットに定義することができるキューのサイズを制限する(バッファサイズ)があります。
-
pfifo_fastの:すべてのLinux上のデフォルトのqdiscのインターフェイス。それはどのようにpfifo_fastの作品を知ることが重要だ;ので、すぐに説明します。
-
トークンバケツフィルタ (TBFに法):指定されたレートへのインターフェイスが減速に最適ですシンプルなqdiscを。これは、指定されたレート以上のショートバーストを許可することができますし、非常にプロセッサフレンドリーです。
-
確率的公正キュー (単一磁束量子):1つは、最も広く使用されなqdiscの。単一磁束量子はかなり流れの番号のうち、送信データを配布しようとします。
-
強化確率フェアキュー (ESFQ探しているLinuxカーネルに含まれる):は、単一磁束量子と同じ方法での例外は、ユーザの深さ(フロー)の制限、ハッシュテーブルのサイズのオプションなどのアルゴリズムのパラメータの詳細に制御することができますで動作します(元のSFQで)ハードとハッシュタイプ。
-
ランダム早期検出およびGenericランダム早期検出 (赤とGRED):なqdiscは100 Mbps以上のデータレートで基幹データをキューイング、適していません。
そこの詳細なqdiscている私はここに記載しているものよりも。しかし、私の経験で、単一磁束量子とESFQから、素晴らしい仕事をしないとなqdiscは、私が最良の結果を持っているです。
さっきも言いましたが、すべてのインターフェイスは、Linux上のデフォルトのqdiscをpfifo_fastのです。通常、1つは、このpfifoと同様ですが、バッファとパケットです意味を考えるとバッファFirst Outのルールでは、まず使用して通過します。実際には非常に真実ではない、それは。 pfifo_fastの3バンド- 0、1、2は、パケットのTOSバイトによると、配置されています。パケットとして、それらのバンドから出て送信される次のとおりです:
- 0バンドのパケットを最優先して
- 1バンドのパケットがある場合のみ、0バンド内の任意のパケットをされていませんが送信されます
- 2バンドでのパケットおよび最低の優先度が送信されますがある場合のみ、0と1の任意のパケットのバンドではありません。
これは、この方法のパケットがネットワークを介しての旅行を最適化する方法を当社のLinuxルータのインターフェイスにすることができますが、この知ることが重要だ。
記事は、フィリップクレア提出
免責事項:弊社のウェブサイトは、この資料の内容については責任を負いません。 Webarticles無料の情報リソースです。
重要: この記事は、"基本的なファイアウォールのスクリプトは、Linuxワークステーション"などの自動ソフトウェアによって翻訳された。大変申し訳ございませんが発生した可能性があります任意のスペルミスを感じている。お客様のご理解いただき、ありがとうございます。