Linuxはiptablesを使用して複数のIPからのサーバーへのアクセスを制限します

Linuxはiptablesを使用して複数のIPからのサーバーへのアクセスを制限します

序文

Linux カーネルでは、netfilter は、パケット フィルタリング、ネットワーク アドレス変換 (NAT)、およびプロトコル タイプに基づく接続追跡を担当するサブシステムです。このサブシステムは、カーネルがパケット フィルタリング処理を制御するために使用するルール セットを含むいくつかのパケット フィルタリング テーブルで構成されています。 iptables は、netfilter を管理するためのツールです。

複数の連続したIP操作

1. 複数のコマンドに分割して実行する

iptables -A 入力 192.168.122.2 -j 受け入れる 
iptables -A 入力 192.168.122.3 -j 受け入れる 
iptables -A 入力 192.168.122.4 -j 受け入れる 
iptables -A 入力 192.168.122.5 -j 受け入れる 
....

この方法では多くのコマンドを記述する必要があり、iptables テーブルが非常に長くなり、管理が困難になります。さらに、コマンドの数が多いと、パフォーマンスにわずかな (無視できる) 影響しか与えません。

2. IPセグメントのIPに対してIP/MASKの形式でアクセス制御を実行できる

iptables -A INPUT 192.168.122.0/24 -j ACCEPT

この方法では、IP 範囲の指定されたソース コードを計算する必要があり、柔軟性がありません。 (利便性からこの方法を使用するユーザーが多いですが、過度な認証はセキュリティ上のリスクをもたらします)

3. iptablesには多くのモジュールがあり、その中でiprangeは連続したIPセグメントのアクセス制御を特に処理するために使用されます。

iptables -A INPUT -m iprange --src-range 192.168.122.2-192.168.122.34 -j ACCEPT #送信元IPに一致
iptables -A INPUT -m iprange --dest-range 8.8.8.2-8.8.8.22 -j DROP #ターゲットIPに一致

この方法はより柔軟です。マスクを計算する必要はなく、範囲を直接指定するだけです。

要約する

現時点では公式では不連続IPには対応していないようですが、不連続IPに対応するモジュールを追加している方もいらっしゃいます。

個人的には、iptables リストをうまく管理したいのであれば、まず整理してから制限する必要があると思います。連続した IP を使用する必要がある場合は、上記の方法を使用します。連続していない場合は、正直に複数のコマンドを記述する必要があります。また、マシンの数が多い場合は、モジュールをインストールする必要があり、システムの安定性に影響を与える可能性があります。

推薦する:

興味のある方は、編集者のWeChat公開アカウント[ Coder’s Stuff ]をフォローして、Webページ制作の特殊効果のソースコードや学習資料をさらに入手してください。 ! !

上記は、Linux で iptables を使用して複数の IP からのサーバーへのアクセスを制限する方法についてご紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • ファイアウォールの iptables 戦略を使用して Linux サーバー上のポートを転送する方法
  • Linux iptables の一般的なファイアウォール ルールの詳細な説明
  • LINUX での IPTABLES ファイアウォールの基本的な使用方法のチュートリアル
  • Linux iptablesコマンドの詳細な説明
  • Linux ファイアウォールの iptables ルールを表示、追加、削除、変更する方法の概要
  • Linux ファイアウォール iptables で IP を禁止およびブロック解除するための一般的なコマンドの詳細な説明
  • Linux での iptables によるポートのブロックとオープンの例
  • Linux iptables とインターフェースを使用してコンテナ ネットワークを管理する Docker の詳細な説明
  • Linux VPS サーバー共通サービス iptables 戦略
  • iptables を使用して Linux を構成し、すべてのポートのログインを禁止し、指定されたポートを開く方法
  • 新しくインストールした Linux システムの /etc/sysconfig ディレクトリに iptables ファイルが存在しない問題の解決方法
  • Alibaba Cloud Linux サーバーで iptables を使用してセキュリティ ポリシーを設定する方法
  • Linuxはiptablesを通じてTCP接続と周波数を制限することでDDOS攻撃を防御します
  • Linux サーバーで iptables+Denyhost によるブルートフォース攻撃に抵抗する設定方法
  • Linux ファイアウォール iptables 入門チュートリアル
  • Linux で iptables ファイアウォール ルールを追加する例
  • Linuxファイアウォールiptablesの詳細な紹介、設定方法と事例

<<:  JavaScript イベントの概念の詳細な説明 (静的登録と動的登録の区別)

>>:  MySQL 最適化接続最適化

推薦する

MySQLとElasticsearch間のデータ非対称性問題の解決策

MySQLとElasticsearch間のデータ非対称性問題の解決策jdbc-input-plugi...

ログインフォームを実装するためのReactサンプルコード

Vue ユーザーとして、React を拡張する時が来ました。antd の導入、less と rout...

MySQL マスタースレーブレプリケーションのいくつかのレプリケーション方法の概要

非同期レプリケーションMySQL レプリケーションは、デフォルトでは非同期です。マスター スレーブ ...

CentOS 7 で grub パスワードと単一ユーザー ログインを設定するサンプル コード

Centos7 と Centos6 では、GRUB パスワードの設定手順に大きな違いがあります。これ...

MySQL 高可用性クラスタの展開とフェイルオーバーの実装

目次1. 内閣府1. コンセプト2. MHAの構成3. MHAの特徴2. MySQL+MHAをビルド...

MySQLの日付と時刻関数の使用の概要

この記事はMySQL 8.0に基づいていますこの記事では、日付と時刻の操作のための MySQL 関数...

VueのID認証管理とテナント管理の詳細な説明

目次概要ボタンレベルの権限アイデンティティ認証管理R/U 権限権限の更新テナント管理テナント切り替え...

MySQL の 2 種類の一時テーブルの使用方法の詳細な説明

外部一時テーブルCREATE TEMPORARY TABLE によって作成された一時テーブルは、外部...

Linux で測位バックグラウンド サービスが時々クラッシュする問題の解決方法

問題の説明最近のバックグラウンドサービスでは、特定の命令の要求データをディスクに保存する新しい機能が...

現在使用されている設定ファイル my.cnf を表示する mysql メソッド (推奨)

my.cnfは、MySQL の起動時に読み込まれる設定ファイルです。通常は MySQL インストー...

MySQL の一時テーブルと派生テーブルについての簡単な説明

派生テーブルについてメイン クエリに派生テーブルが含まれている場合、または SELECT ステートメ...

CSS calc() の数式に関する詳細な理解

数式 calc() は CSS の関数であり、主に数学演算に使用されます。 calc() を使用する...

JavaScript は 3 つの一般的な Web 効果 (オフセット、クライアント、スクロール シリーズ) を実装します。

目次1. 要素オフセットシリーズ2. 要素表示領域クライアントシリーズ3. 要素スクロールシリーズ1...

MySQL 無料インストール版 (zip) のインストールと設定の詳細なチュートリアル

この記事では、MySQL無料インストール版(zip)のインストールと設定のチュートリアルを参考までに...

Dockerコンテナとローカルマシン間でファイルを転送する方法

ホストとコンテナ間でファイルを転送するには、コンテナの完全な ID が必要です。取得方法は以下の通り...