ウェブサイト検索

Firewalld で特定の IP アドレスのポートを開く方法


プライベート ネットワーク内の特定の IP アドレスからのトラフィックを許可したり、ファイアウォールを介して特定のプライベート ネットワークから Red Hat Enterprise Linux 上の特定のポートまたはサービスへのトラフィックを許可したりするにはどうすればよいですか? > (RHEL) または CentOS サーバーはどれですか?

この短い記事では、firewalld ファイアウォールを実行している RHEL または CentOS サーバーで、特定の IP アドレスまたはネットワーク範囲のポートを開く方法を説明します。

これを解決する最も適切な方法は、ファイアウォール ゾーンを使用することです。したがって、新しい構成を保持する新しいゾーンを作成する必要があります (または、利用可能な安全なデフォルト ゾーンのいずれかを使用することもできます)。

Firewalld で特定の IP アドレスのポートを開く

まず、適切なゾーン名を作成します (この例では、mariadb-access を使用して MySQL データベース サーバーへのアクセスを許可しました)。

firewall-cmd --new-zone=mariadb-access --permanent

次に、firewalld 設定を再読み込みして、新しい変更を適用します。この手順をスキップすると、新しいゾーン名を使用しようとするとエラーが発生する可能性があります。今度は、次のスクリーンショットで強調表示されているように、新しいゾーンがゾーンのリストに表示されるはずです。

firewall-cmd --reload
firewall-cmd --get-zones

次に、図のように、ローカル サーバー上で開く送信元 IP アドレス (10.24.96.5/20) とポート (3306) を追加します。次に、firewalld 設定をリロードして、新しい変更を適用します。

firewall-cmd --zone=mariadb-access --add-source=10.24.96.5/20 --permanent
firewall-cmd --zone=mariadb-access --add-port=3306/tcp  --permanent
firewall-cmd --reload

あるいは、ネットワーク全体 (10.24.96.0/20) からサービスまたはポートへのトラフィックを許可することもできます。

firewall-cmd --zone=mariadb-access --add-source=10.24.96.0/20 --permanent
firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent
firewall-cmd --reload

新しいゾーンに上記で追加した必要な設定があることを確認するには、次のコマンドで詳細を確認します。

firewall-cmd --zone=mariadb-access --list-all 

Firewalld からポートとゾーンを削除する

図に示すように、送信元 IP アドレスまたはネットワークを削除できます。

firewall-cmd --zone=mariadb-access --remove-source=10.24.96.5/20 --permanent
firewall-cmd --reload

ゾーンからポートを削除するには、次のコマンドを発行し、firewalld 設定をリロードします。

firewall-cmd --zone=mariadb-access --remove-port=3306/tcp --permanent
firewall-cmd --reload

ゾーンを削除するには、次のコマンドを実行し、firewalld 設定をリロードします。

firewall-cmd --permanent --delete-zone=mariadb-access
firewall-cmd --reload

最後になりますが、ファイアウォールの豊富なルールを使用することもできます。以下に例を示します。

firewall-cmd --permanent –zone=mariadb-access --add-rich-rule='rule family="ipv4" source address="10.24.96.5/20" port protocol="tcp" port="3306" accept'

それでおしまい!上記の解決策があなたのお役に立てば幸いです。 「はい」の場合は、以下のフィードバック フォームからお知らせください。このトピックについて質問したり、一般的なコメントを共有したりすることもできます。