ネットフィルター Netfilter は、パケット フィルタリング、転送、およびアドレス変換 NAT 機能を提供できる Linux カーネルのパケット処理モジュールです。 Iptables は、Netfilter でパケット処理ルールを追加、変更、削除するために使用できるツールです。 Netfilter は、ネットワーク カードとカーネル プロトコル スタック間の壁であり、無料のソフトウェア ファイアウォールです。 Netfilter には、ルール、テーブル、チェーンという 3 つの主要な概念があり、レベルが上がるにつれて概念も増えていきます。
ルール 鎖 チェーンは、ネットワーク カードとカーネル プロトコル スタック間の複数のチェックポイントと見なすことができます。異なる種類のメッセージの場合、通過できないチェックポイント、つまり到達不能チェーンに一致するチェックポイントによって処理されます。
表面 管理を容易にするために、チェーン内の同じ機能を持つルールはテーブルに整理されます。iptables では 4 つのテーブルが定義されています。 テーブルの優先順位(高から低の順):raw -> mangle -> nat -> filter テーブルチェーン関係 チェーンには複数のテーブルを含めることができますが、必ずしもすべてのテーブルが含まれているわけではありません。 データパケットはチェーンに基づいて処理されますが、実際の使用では、ルールを定義するための操作エントリとしてテーブルが使用されます。 iptables iptables の紹介 Linux のパケット フィルタリング機能、つまり Linux ファイアウォールは、netfilter と iptables という 2 つのコンポーネントで構成されています。 netfilter コンポーネント (カーネル スペースとも呼ばれる) は、カーネルがパケット フィルタリング処理を制御するために使用するルール セットを含むパケット フィルタリング テーブルで構成されるカーネルの一部です。 iptables コンポーネントは、パケット フィルタリング テーブルへのルールの挿入、変更、削除を簡単に行うことができるツール (ユーザー スペースとも呼ばれます) です。 Iptables の基礎 iptables はルールに従って動作することがわかっています。ルールは実際にはネットワーク管理者によって事前に定義された条件です。ルールは通常、「パケット ヘッダーがこのような条件を満たす場合は、パケットをこのように処理する」と定義されます。ルールはカーネル空間のパケット フィルタ テーブルに保存されます。これらのルールは、送信元アドレス、宛先アドレス、トランスポート プロトコル (TCP、UDP、ICMP など)、およびサービス タイプ (HTTP、FTP、SMTP など) を指定します。データ パケットがルールに一致すると、iptables は受け入れ、拒否、ドロップなど、ルールで定義された方法に従ってパケットを処理します。ファイアウォールを構成する主なタスクは、これらのルールを追加、変更、および削除することです。 クライアントがサーバーの Web サービスにアクセスすると、クライアントはネットワーク カードにメッセージを送信します。TCP/IP プロトコル スタックはカーネルの一部です。そのため、クライアントの情報はカーネルの TCP プロトコルを介してユーザー空間の Web サービスに送信されます。このとき、クライアント メッセージのターゲット宛先は、Web サービスが監視するソケット (IP: ポート) です。Web サービスがクライアントの要求に応答する必要がある場合、Web サービスが送信する応答メッセージのターゲット宛先はクライアントです。このとき、Web サービスが監視する IP とポートが発信元になります。netfilter は実際のファイアウォールであると述べました。これはカーネルの一部です。したがって、ファイアウォールで「防火」の目的を達成するには、カーネルにレベルを設定する必要があります。すべての受信メッセージと送信メッセージは、これらのレベルを通過する必要があります。検査後、リリース条件を満たすものだけがリリースされ、ブロック条件を満たすものはブロックする必要があります。その結果、入力レベルと出力レベルが表示されますが、これらのレベルは iptables では「レベル」ではなく「チェーン」と呼ばれます。 Linux netfilter/iptables の知識ポイントの詳細な説明に関するこの記事はこれで終わりです。Linux - netfilter/iptables の関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
MySQLのパーティショニングは、非常に大きなテーブルを管理するのに役立ちます。MySQLのパーティ...
1. 何ですか視差スクロールとは、複数の背景レイヤーを異なる速度で動かすことで、3次元のモーション...
ソースコードの例: https://codepen.io/shadeed/pen/03caf6b36...
1. Docker Compose の使用方法は docker コマンドの使用方法と非常に似ています...
目次1. axiosをインストールする2. アクシオスの使用1.ホームページでaxiosを参照する2...
1. COUNT(*) と COUNT(COL) COUNT(*)は通常、主キーに対してインデックス...
開発の過程では、インスタンスの vm.$refs(this.$refs) を使用して、ref で登録...
ReactライフサイクルReactのライフサイクルを理解するのに役立つ2つの図React ライフサイ...
この記事では、Vueで複数の画像を追加、表示、削除するための具体的なコードを参考までに紹介します。具...
I. 厳密モードの説明MySQL 5.0 以降の厳密モード (STRICT_TRANS_TABLES...
目次概要静的型チェックコードスタイルチェック(Linter)パッケージマネージャーモジュールローダー...
目次1. シナリオ2. 解決策3. 結論4. 参考文献1. シナリオ日常の開発およびテスト作業には ...
序文mysql モジュール (プロジェクト アドレスは https://github.com/mys...
1. はじめにls コマンドはディレクトリの内容を表示するために使用され、Linux で頻繁に使用さ...
背景最近、面接でデータベース トランザクションについてよく質問されます。通常は、@Transacti...