Linux での Firewalld の高度な設定の使用に関する詳細な説明

Linux での Firewalld の高度な設定の使用に関する詳細な説明

IPマスカレードとポート転送

Firewalldは2種類のネットワークアドレス変換をサポートしています

IPアドレスマスカレード

  • LAN内の複数のアドレスが1つのパブリックネットワークアドレスを共有してインターネットにアクセスすることを実現できます。
  • IPアドレススプーフィングはIPv4のみをサポートし、IPv6はサポートしません。
  • デフォルトでは、外部ゾーンでアドレス マスカレードが有効になっています。

ポート転送 (Forward-port)

  • 宛先アドレス変換またはポートマッピングとも呼ばれる
  • ポート転送を使用すると、指定された IP アドレスとポートからのトラフィックは、同じコンピューターの別のポート、または別のコンピューターのポートに転送されます。

アドレスマスカレード設定

指定エリアのアドレスマスカレード機能を追加

ファイアウォール-cmd [--permanent] [--zone=ゾーン] --add-masquerade [--timeout 秒]
 //--timeout=seconds: 一定時間後にこの関数を自動的に削除します

指定されたエリアのアドレスマスカレードを削除する

ファイアウォールコマンド [--permanent] [--zone=ゾーン] --remove-masquerade

指定エリアでアドレスマスカレード機能が有効になっているか確認する

ファイアウォールコマンド [--permanent] [--zone=zone] --query-masquerade

ポート転送設定

ポート転送設定の一覧

ファイアウォールコマンド [--permanent] [--zone=zone] --list-forward-ports

ポート転送ルールの追加

ファイアウォールコマンド [--permanent] [--zone=ゾーン] --add-forward-port=port=portid[-portid]:proto=プロトコル[:toport-portid[-portid]][:toaddr-address[/mask]][--timeout=秒]

ポート転送ルールの削除

ファイアウォールコマンド [--permanent] [--zone=ゾーン] --remove-forward-port=port=portid[-portid]:proto=プロトコル[:toport=portid[-portid]][:toaddr=アドレス[/マスク]]

ポート転送ルールのクエリ

ファイアウォールコマンド [--permanent] [--zone=ゾーン] --query-forward-port-port-portid[-portid]:proto=プロトコル[:toport-portid[-portid]][:toaddr=アドレス[/マスク]]

ファイアウォール直接ルール

直接インターフェース

  • 管理者は、Firewalld によって管理される領域に挿入する iptables、ip6tables、ebtables ルールを手動で記述できます。
  • これは、firewall-cmdコマンドの--directオプションによって実現されます。
  • 明示的な挿入方法に加えて、直接ルールが最初に一致します

カスタムルールチェーン

Firewalldはルールが設定されているゾーンのカスタムルールチェーンを自動的に作成します

  • IN エリア名 deny: 「IN エリア名_allow」のルールよりも優先される deny ステートメントを格納します。
  • INエリア名allow: allowステートメントを格納する

TCP/9000 ポートへの受信トラフィックを許可する

irewall-cmd --direct --add-rule ipv4 フィルター IN work_ allow 0 -p tcp --dport 9000 j ACCEPT
  • IN work_ allow: 作業領域に一致するルールチェーン
  • 0: ルールの先頭に配置される、最も優先度の高いルールを表します。
  • --permanentオプションを追加して永続的な設定を示すことができます

すべての直接ルールを照会する

ファイアウォールコマンド --direct --get-all-rules
ipv4 フィルター IN_ work _allow 0 -p tcp --dport 9000 -j ACCEPT

--permanentオプションを追加すると永続的な設定を表示できます

ファイアウォールのリッチ言語ルール

豊かな言語

表現力豊かな設定言語。iptables 構文を理解する必要はありません。

基本的な許可/拒否ルールの表現、ログ記録(syslogおよびauditd用)、ポート転送、マスカレード、レート制限の設定に使用されます。

ルール [family="<ルール ファミリー>"]
 [ ソース アドレス="<アドレス>" ["True" を反転] ]
 [ 宛先アドレス="<アドレス>" [invert="True"] ]
 [ <要素> ]
 [ log [prefix="<プレフィックステキスト>"] [level="<ログレベル>"] [limit value="レート/期間"] ]
 [ 監査 ]
 [ 受け入れ/拒否/ドロップ ]

リッチ言語ルールコマンドの理解

豊富な言語ルールを処理するためのファイアウォール cmd の共通オプション

オプション例示する
-add-rich-rule= 'ルール'指定されたエリアにルールを追加します。エリアが指定されていない場合は、デフォルトのエリアが使用されます。
--remove-rich-rule= 'ルール'指定されたエリアからルールを削除します。エリアが指定されていない場合は、デフォルトのエリアが使用されます。
--query-rich-rule= 'ルール'指定されたゾーンに RULE が追加されたかどうかを照会します。ゾーンが指定されていない場合は、デフォルトのゾーンが使用されます。 <br/>ルールが存在する場合は0を返し、存在しない場合は1を返します。
--list-rich-rules指定されたリージョンのすべてのリッチ ルールを出力します。リージョンが指定されていない場合は、デフォルトのリージョンが使用されます。

リッチ言語ルール表示モードを設定しました

ファイアウォールコマンド --list-all
ファイアウォールコマンド --list-all-zones
--list-rich-rules

豊かな言語は具体的な文法を支配する

送信元、送信先、要素、サービス、ポート、プロトコル、icmp-block、masquerade、forward-port、log、audit、accept、reject、drop

192.168.8.101 からのすべてのトラフィックを拒否する

ファイアウォール-cmd --permanent --zone=work --add-rich-rule='ルール ファミリ=ipv4 送信元アドレス=192.168.8.101/32 拒否'

daddress オプションを source または destination とともに使用する場合は、 family= ipv4 | ipv6 を使用する必要があります。

192.168.1.0/24 サブネット ポート 8000-9000 からの TCP トラフィックを受け入れる

ファイアウォール-cmd --permanent --one=work --add-rich-rule='ルール ファミリ=ipv4 送信元アドレス=192.168.1.0/24 ポート ポート=8000-9000 プロトコル=tcp accept'

すべてのICMPパケットをドロップする

ファイアウォール-cmd --permanent --add-rich-rule='ルール プロトコル値=icmp ドロップ'

192.168.8.1からのhttpトラフィックを受け入れ、ログを記録する

ファイアウォール-cmd --add-rich-rule='ルール ファミリ=ipv4 ソース アドレス=192.168.8.1/32 サービス名="http" ログ レベル=notice プレフィックス= "NEW HTTP" 制限値 "3/s" 受け入れ'

192.168.8.1 で http にアクセスし、/var/log/messages を確認します。

4月16日 17:09:55 サーバーカーネル: 新しいHTTP IN=ens33 OUT=
MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131
LEN=52 TOS=0xOO PREC=0x00 TTL =64 ID=20582 DF PROTO=TCP SPT=65289 DPT=80
ウィンドウ=8192 RES=0x00 SYN URGP=0
4月16日 17:09:55 サーバーカーネル: 新しいHTTP IN=ens33 OUT=
MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131
LEN=52 TOS=0x0O PREC=0x0O TTL =64 ID=20590 DF PROTO=TCP SPT=65291 DPT=80
ウィンドウ=8192 RES=0x00 SYN URGP=0
4月16日 17:09:55 サーバーカーネル: 新しいHTTP IN=ens33 OUT=
MAC=00:0c:29:69:01:c4:00:50:56:c0:00:08:08:00 SRC=192.168.8.1 DST=192.168.8.131
LEN=52 TOS=0x0O PREC=0x0O TTL =64 ID=20602 DF PROTO=TCP SPT=65292 DPT=80
ウィンドウ=8192 RES=0x00 SYN URGP=0

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • iptables および firewalld ツールを使用して Linux ファイアウォール接続ルールを管理する
  • Linux でのデュアル ネットワーク カードの Firewalld の設定プロセス (推奨)

<<:  Springboot は、vue+echarts のフロントエンドとバックエンドのインタラクションを使用して、動的なドーナツ チャートを実現します。

>>:  CMDコマンドを使用してMySqlデータベースを操作する方法の詳細な説明

推薦する

CSS メニューボタンアニメーション

ドロップダウンメニューを書くには、ボタンをクリックします。メニューの入り口はアイコンボタンをクリック...

Vue で計算プロパティを使用する際の知識ポイントのまとめ

計算されたプロパティ場合によっては、テンプレートにロジックを詰め込みすぎると、テンプレートが重くなり...

dockerにros2をインストールするための詳細な手順

目次メイントピック1. UbuntuにDockerをインストールする2. DockerにROS2-F...

Linux 型バージョン メモリ ディスク クエリ コマンド紹介

1. まず、Linux システムのバージョン内容について概要を説明します。 1. カーネルバージョン...

favico.ico---ウェブサイトicoアイコン設定手順

1. 正常に生成されたアイコン ファイルをダウンロードし、名前を favico.ico に変更して、...

Nginx の一般的な設定とテクニックの概要

序文この記事では、Nginx の一般的な、実用的で興味深い構成をいくつか紹介します。この記事を読んだ...

Zabbix による SQL Server の監視プロセスの詳細な説明

Zabbix による SQL Server の監視を見てみましょう。まずfreetdsをダウンロード...

mysql ワイルドカード (sql 高度なフィルタリング)

目次まず、値の一部と一致させるために使用される特殊文字であるワイルドカードについて簡単に紹介します。...

基本構造、ドキュメント タイプ、ヘッダー、本文などの一般的な HTML 要素の概要。

1. 基本構造:コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBL...

Linuxのシグナルメカニズムについての簡単な説明

目次1. シグナルリスト1.1. リアルタイム信号と非リアルタイム信号1.2 信号ステータス1.3 ...

Node.js はクライアントリクエストデータ内の中国語文字化けの問題を解決します

Node.js はクライアントリクエストデータ内の中国語文字化けの問題を解決しますコード例: var...

よく使われるLinuxコマンド「ll」が無効、またはコマンドが見つからないという問題を解決します

質問:よく使用されるコマンド「ll」が無効であるか、コマンドが見つかりません理由: 「ll」コマンド...

MySQL データベースのバックアップとリカバリの実装コード

データベースのバックアップ #文法: # mysqldump -h server-u usernam...

vue + Electron でデスクトップ アプリケーションを作成するためのサンプル コード

1.vueパッケージングここでは、vueネイティブパッケージングコマンドを使用してvueプロジェクト...

IIS7 IIS8 http は自動的に HTTPS にジャンプします (ポート 80 はポート 443 にジャンプします)

IIS7 では、「URL REWRITE2」疑似静的モジュールがインストールされているかどうかを確...