メインコンテンツへスキップナビゲーションへスキップ検索へスキップフッターへスキップ
自作.com 記事
β版

自作.com

みんなで作る、理想のPC環境。自作ラボでPC環境の向上を目指しましょう。

PC構成ビルダー

  • PC構成をつくる
  • BTOパソコン
  • 保存した構成
  • CPU
  • GPU
  • メモリ
  • マザーボード
  • モニター
  • マウス
  • キーボード

人気ランキング

  • ランキングトップ
  • PCパーツ
  • ゲーミングギア
  • モニター
  • ノートPC
  • ガジェット・漫画
  • 製品検索

記事・特集

  • 記事一覧
  • 用語集
  • レビュー
  • GPU特集
  • ディスプレイ特集
  • CPU特集
  • 電源特集
  • ストレージ特集
  • マザーボード特集
  • 冷却・放熱特集
  • PCケース特集

速度・環境

  • 回線速度を測る
  • 速度測定ランキング
  • 電気代を比較

仮想通貨・株比較

  • 価格をチェック
  • 収益を計算
  • マイニングGPU比較
  • 米国株を比較

コミュニティ

  • 自作レシピ
  • 質問・相談
  • トラブル報告
  • みんなの構成
  • シェア機能
  • ダッシュボード

ラボメン募集中

自作ラボでは新しいラボメンを募集中です。
初心者から上級者まで、みんなで理想のPC環境を追求しましょう。

ご応募はこちら→

当サイトは、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、 Amazonアソシエイト・プログラムの参加者です。また、Google AdSenseを利用した広告を掲載しています。 詳細はプライバシーポリシーをご確認ください。

運営者情報プライバシーポリシー利用規約お問い合わせ

Copyright 2026 自作.com. All rights reserved.

理想のPC環境をサポートする自作.com

5c5e1981b3cb

    PC構成ビルダー商品・パーツ検索人気ランキングAI・SaaS比較パーツ比較ガイド
    ⌘K
    1. 自作.com
    2. ネットワーク・サービス
    3. 【2026年】Linux firewalld/nftables 設定ガイド|モダンファイアウォール管理
    読み込み中…

    ※本記事にはアフィリエイト広告(プロモーション)が含まれています

    【2026年】Linux firewalld/nftables 設定ガイド|モダンファイアウォール管理

    自作.com編集部·2026年4月15日·更新: 2026年10月13日

    この記事を書いた人

    自作.com編集部

    自作.com編集部

    PCパーツ・ガジェット専門

    自作PCパーツやガジェットの最新情報を発信中。実測データに基づいた公平なランキングをお届けします。

    専門分野
    自作PC全般(組み立て・パーツ選定)CPU・GPU性能分析とベンチマークマザーボード・メモリ互換性検証
    ストレージ(SSD/HDD)性能測定
    電源ユニット・冷却システム設計
    PCケース・エアフロー最適化
    オーバークロッキング・チューニング
    トラブルシューティング・修理
    ゲーミングPC構成設計
    予算別・用途別PC構成提案
    BTO PCカスタマイズアドバイス
    PC周辺機器レビュー
    最新技術動向・新製品情報
    PCパーツ価格動向分析
    Windows・Linux OS設定
    経験年数: 10年
    • •📝 2,266記事の執筆・編集実績(2025年10月時点)
    • •🖥️ 1,000台以上の自作PC構築・検証
    • •🔧 500件以上のトラブルシューティング対応
    保有資格
    情報処理技術者(ITパスポート)CompTIA A+ 認定技術者マイクロソフト認定プロフェッショナル(MCP)
    TwitterWebsite
    寄稿記事数: 2,266件
    記事一覧に戻る
    関連記事を読み込み中…
    関連パーツを読み込み中…
    関連用語を読み込み中…
    関連ランキングを読み込み中…

    この記事を書いた人

    自作.com編集部

    PCパーツ・ガジェット専門

    自作PCパーツやガジェットの最新情報を発信中。実測データに基づいた公平なランキングをお届けします。

    @jisaku_com詳細を見る

    目次

    はじめに:現代の Linux サーバセキュリティにおけるファイアウォールの重要性iptables から nftables へ:Linux ファイアウォールの進化史とアーキテクチャfirewalld の基本アーキテクチャとゾーンベースドセキュリティの概念firewalld のコマンド操作とポート開放、サービスの管理方法ゾーンベースド設定とリッチルールによる高度な制御nftables の直接操作とセット・マップ機能の活用ルールセットの構造と永続化戦略、バックアップ手法Web サーバ構築における実践的なファイアウォール設定Docker コンテナ環境における NAT とネットワーク分離管理SSH と VPN を含む通信制限とレート制限の実装iptables から nftables/firewalld への移行ガイドと注意点よくある質問(FAQ)まとめ:2026 年の標準的ファイアウォール運用に向けて

    はじめに:現代の Linux サーバセキュリティにおけるファイアウォールの重要性

    2026 年 4 月現在、Linux システムがサーバーインフラの基盤として占める割合は依然として極めて高い状態にあります。クラウド環境の普及に伴い、物理的なネットワーク境界線は曖昧になっていますが、その分、ホストレベルでのセキュリティ対策は以前にも増して重要度を増しています。特に、Web サーバ、データベース、あるいは Docker コンテナを起動する環境において、不正なアクセスやマルウェアによる通信の遮断は、システムの健全性を保つための最前線です。ここで注目すべきのが、Linux カーネルに組み込まれた Netfilter フレームワークと、そのユーザー空間での管理ツールである firewalld や nftables です。

    従来の iptables は長年 Linux ファイアウォールのデファクトスタンダードでしたが、2015 年の導入以降、より高速で構造化が容易な nftables に移行が進んでいます。さらに、nftables の複雑さを抽象化し、管理者の負担を軽減するために firewalld が多くの現代ディストリビューションで採用されています。本記事では、Fedora 41(firewalld 2.x / nftables バックエンド)、Ubuntu 24.04 LTS(ufw / nftables)、RHEL 9、AlmaLinux 9、Debian 12(nftables 標準)といった主要な環境を念頭に置きつつ、これらのモダンファイアウォール管理の核心を解説します。

    セキュリティ運用において、単にポートを開閉するだけでなく、「誰から」「どのプロトコルで」「どのような条件下で」通信を許可するかという文脈(コンテキスト)を理解することが不可欠です。firewalld のゾーンベース管理や nftables のセット機能を活用することで、動的かつ効率的なルール構築が可能になります。本ガイドでは、導入から運用、トラブルシューティングに至るまで、具体的なコマンドと設定例を多数提示します。最新のセキュリティ脅威に対応し、2026 年時点の標準的なベストプラクティスに沿った構成方法を身につけてください。

    iptables から nftables へ:Linux ファイアウォールの進化史とアーキテクチャ

    Linux のファイアウォール技術は、単なるパケットフィルタリングから、高度な状態監視およびネットワーク機能の包括的な管理へと進化を遂げてきました。その中心となるのが、Netfilter フレームワークです。このフレームワークは Linux カーネル 2.4(2001 年)より導入されており、現在ではカーネル内部で標準的に動作しています。かつて主流だった iptables は、Xtables という名前のサブシステムに基づいていましたが、2014 年に登場した nftables は、この Xtables の後継として設計されました。

    iptables の最大の課題は、コマンドの構文が直感的ではなく、ルール管理の難易度が高かった点にあります。例えば、特定のチェーンにルールを追加する際、順序を間違えると意図しないパケット拒絶が発生しやすい傾向がありました。また、複数のテーブルやチェーンを跨ぐ処理では、コマンドの数が膨大になりがちでした。これに対し、nftables は単一のテーブル内でチェーンとルールの階層構造を定義できるため、管理が飛躍的に容易になりました。2018 年頃の Red Hat Enterprise Linux 8 や Fedora 28 以降、デフォルトで nftables が採用されるようになり、2026 年現在ではほぼ全ての主要ディストリビューションで標準的なファイアウォールバックエンドとなっています。

    nftables は、iptables のルールを互換性モード(-t iptables)で実行することも可能ですが、本来の機能である「セット(集合データ)」や「マップ」を活用することで、パフォーマンスと柔軟性を最大化できます。例えば、IP アドレスのブラックリストやホワイトリストを動的に更新する際、iptables では個別のルールを追加・削除する必要がありましたが、nftables のセット機能を使えば、配列単位での切り替えが瞬時に行えます。2026 年時点では、カーネルバージョン 5.15 以降において、フローテーブル(Flowtable)機能も安定しており、ハードウェアオフロードに対応した高速なパケット転送が可能になっています。

    項目iptables (Legacy)nftables (Modern)firewalld (User Space)
    バックエンドXtables (iptables)Netfilter (nftables)nftables / iptables 互換モード
    ルールの構造フラットなリスト (順序依存)

    あわせて読みたい関連記事

    • Linuxサーバーのセキュリティ強化|Ubuntuで確認する更新・SSH・公開ポート
      セキュリティ
    • IT法科学捜査員PC|EnCase Forensic+FTK+Magnet AXIOM+Cellebrite UFED+Tools(Volatility/Autopsy)+OST/PST+Windowsレジストリ+Mac forensics+Linux forensics+SQLiteフォレンジック
      セキュリティ
    • Linux AppArmor vs SELinux 設定ガイド|強制アクセス制御の選択
      セキュリティ
    階層化されたテーブル・チェーン
    抽象化されたゾーン概念
    パフォーマンス中程度(ルール数増加で低下)高速(ハッシュベース検索可能)中程度(デーモンオーバーヘッドあり)
    永続化手動 (iptables-save/load)nft list / nft savefirewall-cmd --runtime-to-permanent
    学習曲線高い中程度低い(抽象化により簡易)
    2026年の採用レガシーシステムのみデフォルト標準RHEL/Fedora/AlmaLinux 標準

    このように、技術の進化に伴い管理者が直面する課題は「ルールを書くこと」から「セキュリティポリシーを定義すること」へとシフトしています。nftables はそのための強力な基盤を提供しており、firewalld はそれを管理しやすいインターフェースとして機能します。本ガイドでは、これらの関係を理解した上で、実際の設定手順を解説していきます。

    firewalld の基本アーキテクチャとゾーンベースドセキュリティの概念

    firewall daemon(简称:firewalld)は、動的なファイアウォール管理を行うユーザー空間のデーモンです。2026 年時点において、Red Hat Enterprise Linux 9(RHEL 9)、AlmaLinux 9、Fedora 41 などのディストリビューションで標準のパッケージとして提供されています。Ubuntu では ufw がデフォルトですが、firewalld をインストールして nftables バックエンドとして使用することも可能です。firewalld の最大の特徴は、「ゾーン(Zone)」という概念を採用している点にあります。

    ゾンはネットワークインターフェースや接続の信頼性を定義したカテゴリです。システムが複数のネットワークに接続されている場合、それぞれ異なるセキュリティポリシーを適用する必要があります。例えば、社内 LAN に対しては「信頼できる」設定とし、外部インターネットに対しては「制限が厳しい」設定とするような区別が可能です。2026 年の標準的なゾーンには、public(パブリック)、internal(内部)、dmz(デムジ)、trusted(信頼済み)などが含まれます。

    ゾーン名想定されるネットワーク環境基本のセキュリティレベルデフォルトで許可されるサービス/ポート
    public公共の Wi-Fi、インターネット最も厳しいSSH(制限可)、ICMP(Echo Request)
    internal社内の信頼された LAN中程度DHCPv6, Netbios-NS, DNS
    dmzパブリックサーバーが置かれる DMZ厳格(公開用)HTTP, HTTPS, SMTP
    trusted完全な管理ネットワーク信頼済みほぼ全てのトラフィックを許可

    デフォルトで適用されるゾーンは public です。これは、システムが未知のネットワークに接続された際の安全策として設計されています。このゾーンでは、外部からの入力は基本的に拒否され、ICMP パケットも一部制限されます。管理者はこの public ゾーンに対して、Web サーバを公開するためにポート 80/443 を開放したり、SSH 接続を許可したりする作業を行います。

    火災壁ルールは、「ランタイム(一時)」と「永続(保存)」の 2 つのモードで管理されます。これは firewalld の設計上極めて重要なポイントです。firewall-cmd --reload コマンドを実行しない限り、変更は再起動時にリセットされてしまいます。これを防ぐため、設定作業時には --permanent フラグを必ず追加して実行し、最後にリロードを行うのがセオリーとなります。2026 年における運用では、この永続化の仕組みがシステム障害時の復旧性を支える重要な要素となっています。

    firewalld のコマンド操作とポート開放、サービスの管理方法

    firewall-cmd コマンドは、firewalld デーモンとの対話を行うための主要なツールです。2026 年時点でも、このコマンドの構文は安定しており、スクリプトによる自動化が容易に行えるようになっています。基本的な操作として、現在の状態を確認する --list-all や、サービスを追加・削除する --add-service などがあります。

    Web サーバを構築する場合、HTTP プロトコル(ポート 80)と HTTPS プロトコル(ポート 443)の開放が一般的です。これらは単にポート番号を指定するのではなく、firewalld が定義しているサービス名を使って管理します。例えば、--add-service=http と --add-service=https を実行することで、それぞれの標準ポートが自動的に許可されます。この仕組みにより、後からポート番号が変更された場合でも、サービス名のままで設定が保たれるため、保守性が向上しています。

    # 永続的に http サービスを public ゾーンに追加
    sudo firewall-cmd --permanent --zone=public --add-service=http
    
    # 永続的に https サービスを public ゾーンに追加
    sudo firewall-cmd --permanent --zone=public --add-service=https
    
    # 設定を反映させる(リロード)
    sudo firewall-cmd --reload
    

    このようにコマンドを実行した後、--check フラグを使用して確認を行うのがベストプラクティスです。例えば firewall-cmd --query-service=http を実行すると、サービスが有効かどうかの true/false が返されます。また、特定の IP アドレスからの SSH 接続を許可したい場合、--add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" accept' のようなリッチルールを使用します。これは高度なフィルタリングを行う際に必要になります。

    ポートの直接開放については、--add-port=8080/tcp のように記述します。この際、プロトコル(tcp/udp)を明示することが必須です。UDP プロトコルの DNS サーバや DHCP を許可する際は --add-service=dns や --add-service=dhcpv6-client が使われますが、特定の UDP ポートを開放したい場合は直接ポート指定を行います。2026 年時点のセキュリティ基準では、単にポートを開くだけでなく、「レート制限(Rate Limiting)」を適用することが推奨されています。これにより、DoS 攻撃対策として、特定 IP からの過度なリクエストを自動的に拒否する仕組みが組み込み可能です。

    ゾーンベースド設定とリッチルールによる高度な制御

    firewalld の真価は、ゾーンの柔軟な組み合わせとリッチルールの活用にあります。2026 年のネットワーク環境では、単一のインターフェースに複数の役割を持たせるケースも珍しくありません。例えば、1 つの物理 NIC に VLAN ID を付与して分割したり、複数の仮想 NIC を持っていたりする場合、それぞれ異なるゾーンを割り当てることで、粒度の高いセキュリティ管理が可能になります。

    リッチルール(Rich Rules)は、より詳細な条件でパケットフィルタリングを行うための機能です。基本的なサービス追加やポート開放では対応できない「特定の IP アドレスからのみ SSH を許可する」「ICMP のタイプを指定して制限する」などの要件に対応します。リッチルールの構文は rule キーワードから始まり、家族(ipv4/ipv6)、ソースアドレス、行動(accept/reject/drop)などを記述します。

    例えば、SSH 接続において、特定の IP アドレス以外からのアクセスを拒絶し、かつレート制限を設定する設定例を示します。以下は --add-rich-rule を使用した一例です: firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="10.0.0.5/32" accept'

    このルールにより、10.0.0.5 という特定の IP からの SSH 接続のみが許可されます。また、レート制限を適用する場合は --add-rich-rule='rule family="ipv4" source address="any" limit value="10/minute" accept' のように記述します。これにより、1 分間に 10 回を超える SSH 試行は拒否され、ブルートフォース攻撃の防止に寄与します。

    リッチルールパラメータ説明例
    familyIP のバージョンを指定ipv4, ipv6
    source addressソースIP アドレスまたは CIDR192.168.0.0/24, 任意のアドレス
    acceptパケットを受け付ける許可ルール
    rejectリジェクトパケットを返す拒絶(エラー応答あり)
    dropパケットを静かに捨てる拒絶(無視)
    limitレート制限の設定value="10/minute"

    このように、リッチルールを利用することで、firewalld は単なるポート管理ツールから、高度なネットワークセキュリティポリシー実行エンジンへと進化します。ただし、複雑になりすぎるとデバッグが困難になるため、基本的なゾーン設定で十分な場合は無理にリッチルールを使用しないことも重要な運用指針です。

    nftables の直接操作とセット・マップ機能の活用

    firewalld は管理画面として優れていますが、より細部の制御やパフォーマンスチューニングが必要な場合、nftables を直接操作することがあります。2026 年現在、nft コマンドは Linux カーネル内の Netfilter フレームワークに直接アクセスする標準ツールです。iptables-nft モジュールがデフォルトとなっているため、互換性モードでも nftables の機能を利用できますが、ネイティブな nft コマンドを使用することで真価を発揮します。

    nftables の基本構造は「テーブル」→「チェーン」→「ルール」という階層化された形式を取ります。table には IPv4 (ip) や IPv6 (inet, ip6) を指定し、その中に chain を定義します。各チェーンにはタイプ(フィルタ、nat、route など)とフックポイント(ingress, postrouting など)が設定されます。

    # テーブルの作成 (例:myfirewall)
    nft add table inet myfirewall
    
    # チェインの追加 (入力フロー制御用)
    nft add chain inet myfirewall input { type filter hook input priority 0 \; policy accept \;}
    
    # ルールの追加 (ポート 80/tcp 許可)
    nft add rule inet myfirewall input tcp dport 80 accept
    

    セット(Set)機能は、大量のルールを効率的に管理するための重要な機能です。特定の IP アドレスのリストをセットとして定義し、ルールで参照することで、ルール数を減らしつつ動的な更新が可能になります。2026 年時点では、セット内の要素数が数百万件になっても高速な検索が可能であり、ブラックリストやホワイトリストの実装に広く利用されています。

    # IP アドレスのセットを作成 (blacklist)
    nft add set inet myfirewall blacklist { type ipv4_addr \; flags timeout \;}
    
    # 特定の IP をセットに追加 (10 分後にタイムアウトさせる場合)
    nft add element inet myfirewall blacklist { 192.168.1.100 timeout 600s \;}
    
    # ルールでセットを参照
    nft add rule inet myfirewall input ip saddr @blacklist drop
    

    マップ(Map)機能は、IP アドレスからアクション(ポートや動作)をマッピングする際に使用されます。例えば、特定の IP からアクセスがあった場合に、異なるポートへ転送する場合などに役立ちます。さらに、フローテーブル(Flowtable)機能も 2026 年には標準的な高速化オプションとして活用されています。これはハードウェアオフロードをサポートする NIC で利用可能であり、カーネル空間でのパケット転送を最適化し、CPU 負荷を大幅に削減します。

    ルールセットの構造と永続化戦略、バックアップ手法

    nftables のルールはメモリ上に存在しますが、システム再起動時にはリセットされるため、永続化が必須となります。firewalld を使用している場合、--permanent フラグで管理されますが、直接 nft コマンドを使用する場合は手動での保存が必要です。2026 年における運用ガイドラインでは、ルール定義をテキストファイルとして保持し、起動時に読み込む形式が推奨されています。

    永続化の標準的な方法は /etc/nftables.conf ファイルにルール定義を記述することです。このファイルを編集した後、nft -f /etc/nftables.conf を実行することでルールの適用を行います。ただし、firewalld と混在する環境では注意が必要です。/etc/firewalld/zones などの設定と nftables の直接操作が競合しないよう、管理の棲み分けを明確にする必要があります。

    広告

    また、バックアップ戦略はセキュリティ運用の一部です。重要なルール変更前の状態を保存し、万が一の障害時に復旧できるようにします。コマンド nft list ruleset > /root/nftables_backup_20260425.dump を実行することで、現在のすべてのルールをダンプファイルとして保存できます。このファイルをバージョン管理システム(Git など)で管理することで、変更履歴を追跡可能になります。

    永続化方法対象ディストリビューションメリットデメリット
    firewalldRHEL, AlmaLinux, Fedora (デフォルト)自動永続化、管理が容易抽象化により直接制御が難しい場合あり
    nftables.confDebian, Ubuntu (直接 nft 使用時)完全な制御可能、軽量起動スクリプトの作成が必要
    systemd timer全ディストリビューション共通定期的な適用を自動化設定ファイルの形式整合性チェックが手動必要

    特に、U[bun](/glossary/bun-runtime)tu 24.04 LTS では ufw がデフォルトですが、nftables を直接使用する場合も増えています。その際は /etc/ufw/before.rules や /etc/nftables.conf のどちらを優先するかの設定を確認する必要があります。2026 年時点では、systemd のユニットファイル(nftables.service)が標準で存在し、起動時に読み込むよう設計されています。

    Web サーバ構築における実践的なファイアウォール設定

    Web サーバを公開する場合、HTTP/HTTPS ポートの開放は必須ですが、それ以外のポートは可能な限り閉じておくことがセキュリティの基本です。2026 年現在、多くの Web サーバーは Let's Encrypt を利用した TLS 化が標準となっています。したがって、ファイアウォール設定ではポート 80(リダイレクト用)と 443(暗号化通信用)の管理が中心となります。

    まず、firewalld の public ゾーンに HTTP と HTTPS サービスを追加します。これは前述の通りですが、Web サーバ特有の設定として、HTTP から HTTPS へのリダイレクトを強制する設定も考慮する必要があります。ただし、ファイアウォールレベルでのリダイレクトは行わず、Nginx や Apache 側で処理し、ファイアウォールではポート開放のみを行います。

    # Web サーバ用ポート開放 (firewalld)
    sudo firewall-cmd --permanent --zone=public --add-service=http
    sudo firewall-cmd --permanent --zone=public --add-service=https
    
    # 管理用 SSH の制限
    sudo firewall-cmd --permanent --zone=public --remove-service=ssh
    sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.10.5/32" accept'
    
    # リロード
    sudo firewall-cmd --reload
    

    また、Web サーバのログやバックアップデータへのアクセスを制限する場合、SSH 接続の IP アドレスを固定することが重要です。これは SSH 鍵認証と組み合わせることで、セキュリティレベルがさらに高まります。2026 年の推奨事項として、SSH にはポート 22 以外の非標準ポートを使用する「ポートスキャン回避」はもはや効果的ではないとする見方が強まっています。代わりに、キーベースの認証を徹底し、ファイアウォールで特定の IP に限定することがセキュリティ強化策として採用されています。

    Docker コンテナ環境における NAT とネットワーク分離管理

    Docker や Kubernetes などのコンテナ技術が普及した現代では、ホストのファイアウォール設定とコンテナ間の通信制御が複雑化しています。2026 年現在、firewalld は Docker のネイティブサポートを強化しており、コンテナ起動時に自動的にルールを適用する機能が標準で備わっています。ただし、手動での設定が必要なケースも依然として存在します。

    Docker コンテナは通常、NAT(Network Address Translation)経由でホストのネットワークを利用します。これにより、コンテナ内のプロセスが外部に接続する際はホスト IP として扱われます。逆に、外部からのアクセスをコンテナへ送るには、ホストのポートフォワーディングが必要です。firewalld はこのポート転送ルール(Forward Port)を管理するためのコマンドを提供しています。

    # ホストポート 8080 から Docker コンテナ内部 80 へ転送
    sudo firewall-cmd --permanent --zone=public --add-forward-port=port=8080:proto=tcp:toport=80:toaddr=172.17.0.2
    
    # 確認
    sudo firewall-cmd --list-all
    

    ただし、Docker のネットワークドライバ(bridge, host, overlay など)によって挙動が異なるため、注意が必要です。host ネットワークモードを使用する場合、コンテナはホストの IP を共有するため、ポート開放ルールをホスト側で設定する必要があります。一方、bridge モードの場合、上記のようにフォワードポートの設定が必要になります。

    また、Docker スワームや Kubernetes クラスターでは、各ノード間の通信(Kubelet, etcd など)を制御する際にもファイアウォールが関与します。2026 年における K8s のセキュリティガイドラインでは、ノード間のトラフィックの暗号化と認証(mTLS)に加え、ネットワーク分離のためのファイアウォールルールの設定も必須要件となっています。

    SSH と VPN を含む通信制限とレート制限の実装

    SSH 接続は、システム管理者にとって最も重要なアクセス経路ですが、同時に攻撃者の主要なターゲットでもあります。2026 年において、SSH のセキュリティ強化には以下の 3 つの要素が必要です。1) ポート開放の制限(特定 IP のみ)、2) レート制限(ブルートフォース防止)、3) 鍵ベース認証の強制です。

    firewalld では SSH へのアクセスを特定 IP アドレスに限定するリッチルールを設定できます。これにより、グローバルなインターネットから SSH に接続しようとした場合、その IP がホワイトリストに含まれていない限りパケットは即座にドロップされます。これは、ポートスキャンによる検知を防ぐだけでなく、攻撃の初期段階で遮断する効果があります。

    # SSH サービスを一度削除(または制限)
    sudo firewall-cmd --permanent --zone=public --remove-service=ssh
    
    # 許可 IP のみ SSH を受け付けるリッチルール
    sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="203.0.113.5/32" accept'
    

    VPN(OpenVPN, WireGuard など)の利用者に対しては、特別なゾーンを定義するか、既存の dmz ゾーンを活用することがあります。VPN サーバは通常、外部からのアクセスを受け付けるため、ポート 1194 (UDP) や 51820 (WireGuard UDP) の開放が必要です。これらは特定のプロトコルとポートに限定するため、サービス名ではなくポート指定で設定するのが確実です。

    # WireGuard ポート開放 (UDP 51820)
    sudo firewall-cmd --permanent --zone=public --add-port=51820/udp
    

    さらに、レート制限は SSH や FTP などの認証サービスに対して特に有効です。--rich-rule='rule family="ipv4" source address="any" limit value="3/minute" accept' のような設定により、特定の IP が短時間に多数の接続を試みた場合に自動的に拒否されます。2026 年時点の攻撃トレンドでは、自動ボットによる認証クラックが主流であるため、この機能は必須の防御層です。

    広告

    iptables から nftables/firewalld への移行ガイドと注意点

    既存システムで iptables を使用している場合、nftables や firewalld への移行には注意が必要です。2026 年現在でも、レガシーなシステムや特定のセキュリティツールが iptables コマンドに依存しているケースがあります。iptables のルールを nftables に変換する際、互換性レイヤー(iptables-nft)を使用すれば、多くの場合問題なく動作します。

    移行手順として推奨されるのは、まず nft list ruleset を実行して現在の iptables ルールが nftables 規則としてどのようにマッピングされているかを確認することです。その後、firewall-cmd --list-all で firewalld の状態を確認し、両者の整合性を取ります。移行の際には、必ずバックアップを取ってから作業を開始してください。

    # iptables ルールのエクスポート
    iptables-save > /root/iptables_backup.txt
    
    # nftables へのインポート尝试
    nft -f <(iptables-legacy-nft) # ※環境依存のスクリプトが必要
    

    ただし、完全な自動変換が難しい場合もあります。特に複雑な MASQUERADE や NAT ルールは、手動で nftables の構文に書き直す必要がある場合があります。その際は nft add rule inet nat postrouting masquerade のような記述が必要です。移行後のテストでは、実際にネットワーク接続を行い、パケットの通過・拒否が意図通りか確認することが重要です。

    また、firewalld を導入した場合、iptables による直接操作(iptables -A ...)は firewalld デーモンによって上書きされるリスクがあります。2026 年のベストプラクティスでは、ファイアウォール管理を firewall-cmd に統一し、直接使用しないことが強く推奨されています。競合を防ぐために、既存の iptables ルールをクリアする作業も必要になる場合がありますが、これは慎重に行うべきです。

    よくある質問(FAQ)

    Q1. firewalld の設定を変更しても反映されない場合どうすればよいですか? A1. --permanent フラグを使用せずにコマンドを実行した場合、変更はランタイムのみで有効になります。システム再起動後にリセットされますので、必ず firewall-cmd --reload を実行して永続化を確認してください。また、デーモンが停止していないか systemctl status firewalld で確認し、必要に応じて systemctl restart firewalld を実行します。

    Q2. nftables と iptables の設定は同時に有効にできますか? A2. 基本的には推奨されません。両方のバックエンドを併用するとルールの競合が発生し、意図しない通信が許可または拒否される可能性があります。2026 年の標準的な運用では、nftables を使用する場合 firewalld の nft_backend を有効にし、iptables コマンドは nftables との互換モードとして扱うか、完全に回避します。

    Q3. ゾーンを切り替えるコマンドはありますか? A3. はい、--set-zone=zone_name コマンドを使用します。例えば firewall-cmd --zone=internal --change-interface=eth0 とすることで、特定のインターフェースのゾーンを変更できます。ただし、システム起動時のデフォルトゾーン設定は /etc/firewalld/zones.xml やネットワークマネージャーの設定で変更可能です。

    Q4. リッチルールを削除するコマンドは何ですか? A4. 追加時に -rule を使用した場合は --remove-rich-rule を使用します。例えば firewall-cmd --permanent --zone=public --remove-rich-rule='rule family="ipv4" source address="192.168.1.100/32" accept' です。正確なルール記述が一致しない場合、削除に失敗するので注意が必要です。

    Q5. Docker コンテナのポート転送設定は再起動で消えますか? A5. はい、基本的には火災壁のリロード時に保持されますが、firewalld の設定ファイルから追加した場合は永続化されます。Docker 起動スクリプトで --add-forward-port を呼び出す場合も同様です。ただし、コンテナ自体の停止時はポート開放ルールは維持されます。

    Q6. nftables のセットを動的に更新するにはどうすればよいですか? A6. nft add element <table> <set_name> { ... } で追加し、nft delete element <table> <set_name> ... で削除可能です。また、timeout 属性を用いて自動的に期限切れさせることで、一時的なブラックリスト管理が可能です。

    Q7. ファイアウォールが起動しない場合のトラブルシューティング方法は? A7. まず journalctl -u firewalld.service でエラーログを確認します。ポート 22 の開放状態や SELinux の設定も確認が必要です。SELinux がファイアウォールの動作を阻害している場合、適切なコンテキスト付与が必要になります。

    Q8. レート制限を設定すると正常な通信が拒否されるリスクはありますか? A8. はい、ユーザー側のネットワーク環境が不安定([パケット](/glossary/パケット)ロスが多い)場合、誤検知の可能性があります。最初は許容値を高く設定し、ログを確認しながら徐々に厳格化していくのが安全です。log-prefix を指定して拒否されたトラフィックを監視することも有効です。

    Q9. IPv6 環境でも firewalld は機能しますか? A9. はい、firewalld はデフォルトで IPv6 サポートを提供しています。ただし、IPv6 のルール設定には --zone=public --add-rich-rule='rule family="ipv6" ...' のように明示的に family="ipv6" を指定する必要があります。

    Q10. 2026 年時点で iptables は完全に廃止されたのですか? A10. Linux カーネルから完全に削除されたわけではありませんが、新しい実装のデフォルトは nftables です。iptables コマンドは互換性モジュールとして残っており、レガシーシステムや特定のツールで依然使用されますが、新規導入には nftables/firewalld を推奨します。

    まとめ:2026 年の標準的ファイアウォール運用に向けて

    本記事では、Linux システムにおけるモダンなファイアウォール管理として、firewalld と nftables の詳細な設定方法を解説しました。2026 年時点のセキュリティ要件を考慮すると、単なるポート開放ではなく、「誰から」「どの条件下で」通信を許可するかというポリシー定義が重要となります。

    • 進化の理解: iptables から nftables への移行は完了しており、新システムでは nftables を前提とした設計が必要です。
    • firewalld の活用: RHEL/AlmaLinux/[Fedora](/glossary/dora-fine-tuning) では firewalld が標準であり、ゾーンベース管理により複雑なルールを簡略化できます。
    • 永続化の徹底: --permanent フラグの使用と reload 実行は必須であり、設定漏れを防ぐための運用指針です。
    • セキュリティ強化: SSH の IP 制限やレート制限機能を活用し、ブルートフォース攻撃への耐性を高めます。
    • コンテナ対応: Docker/Kubernetes 環境では NAT とポート転送の管理が重要で、firewalld のサポートを最大限活用します。
    • 移行と保守: 既存システムからの移行にはバックアップとテストが不可欠であり、定期的なルール見直しが求められます。

    これらの知識と実践的な設定例を基に、貴社の Linux サーバ環境のセキュリティレベルを向上させてください。2026 年以降も変化し続ける脅威に対し、柔軟かつ堅牢なファイアウォール運用体系を構築することが、システム管理者にとっての重要な責務となります。

    この記事に関連するおすすめ商品

    読み込み中…
    Sefoemut壁掛け WiFi ルーター収納ボックス ルーターラック モデム置き台 ケーブル整理ボックス インテリア隠しボックス 大容量 穴あけ不要 インテリア対応 コード管理 電源タップ収納 ルーター目隠し コンセントカバー WiFi 機器収納 ネットワーク機器置き台 家庭用 オフィス用 軽量 コンパクト ホワイト ブラック (丸穴タイプ70*20*10+収納ボックス,ガンンメタリック)

    アクセサリー

    Sefoemut壁掛け WiFi ルーター収納ボックス ルーターラック モデム置き台 ケーブル整理ボックス インテリア隠しボックス 大容量 穴あけ不要 インテリア対応 コード管理 電源タップ収納 ルーター目隠し コンセントカバー WiFi 機器収納 ネットワーク機器置き台 家庭用 オフィス用 軽量 コンパクト ホワイト ブラック (丸穴タイプ70*20*10+収納ボックス,ガンンメタリック)

    読み込み中…
    ソースネクスト | ZERO スーパーセキュリティ 1台版(無期限) | ウイルス対策・セキュリティソフト | Windows/Mac/Android/iOS対応 買い切り 期限なし 更新料0円 中古PCでもサクサク動く 低スペックPCでも軽い

    PC関連アクセサリ

    ソースネクスト | ZERO スーパーセキュリティ 1台版(無期限) | ウイルス対策・セキュリティソフト | Windows/Mac/Android/iOS対応 買い切り 期限なし 更新料0円 中古PCでもサクサク動く 低スペックPCでも軽い

    読み込み中…
    Linksys AX5400 Wi-Fi 6 メッシュWiFi ルーター MX5503-JP 11ax (574 + 4804 Mbps) デュアルバンド 3台セット iPhone/Android アプリ簡単設定 国内正規代理店品 NT1524

    ネットワーク機器

    Linksys AX5400 Wi-Fi 6 メッシュWiFi ルーター MX5503-JP 11ax (574 + 4804 Mbps) デュアルバンド 3台セット iPhone/Android アプリ簡単設定 国内正規代理店品 NT1524

    (28)
    読み込み中…
    【セット買い】【2点セット【Amazon.co.jp限定】】 バッファロー WiFi ルーター 無線 LAN Wi-Fi 6 11ax AX3000 2,401+573Mbps ブラック WSR-3000AX4P/NBK + WiFi ルーター無線LAN Wi-Fi 6 11ax / 11ac AX1800 573+1201Mbps LANケーブル同梱 WSR-1800AX4P/NBK

    アクセサリー

    【セット買い】【2点セット【Amazon.co.jp限定】】 バッファロー WiFi ルーター 無線 LAN Wi-Fi 6 11ax AX3000 2,401+573Mbps ブラック WSR-3000AX4P/NBK + WiFi ルーター無線LAN Wi-Fi 6 11ax / 11ac AX1800 573+1201Mbps LANケーブル同梱 WSR-1800AX4P/NBK

    (17)
    読み込み中…
    Sefoemut壁掛け WiFi ルーター収納ボックス ルーターラック モデム置き台 ケーブル整理ボックス インテリア隠しボックス 大容量 穴あけ不要 インテリア対応 コード管理 電源タップ収納 ルーター目隠し コンセントカバー WiFi 機器収納 ネットワーク機器置き台 家庭用 オフィス用 軽量 コンパクト ホワイト ブラック (丸穴タイプ60*20*10+収納ボックス,クリームホワイト)

    アクセサリー

    Sefoemut壁掛け WiFi ルーター収納ボックス ルーターラック モデム置き台 ケーブル整理ボックス インテリア隠しボックス 大容量 穴あけ不要 インテリア対応 コード管理 電源タップ収納 ルーター目隠し コンセントカバー WiFi 機器収納 ネットワーク機器置き台 家庭用 オフィス用 軽量 コンパクト ホワイト ブラック (丸穴タイプ60*20*10+収納ボックス,クリームホワイト)

    読み込み中…
    ソースネクスト | ZERO スーパーセキュリティ 5台版(無期限) | ウイルス対策・セキュリティソフト | Windows/Mac/Android/iOS対応 買い切り 期限なし 更新料0円 中古PCでもサクサク動く 低スペックPCでも軽い

    PC関連アクセサリ

    ソースネクスト | ZERO スーパーセキュリティ 5台版(無期限) | ウイルス対策・セキュリティソフト | Windows/Mac/Android/iOS対応 買い切り 期限なし 更新料0円 中古PCでもサクサク動く 低スペックPCでも軽い

    この記事に関連するおすすめパーツ

    読み込み中…
    Vansuny SSD 外付け 480GB USB3.1 Gen2 読込速度550MB/s PS5/PS4メーカー動作確認済 コンパクト外付けSSD Type C Windows/MAC OS/Linux/Androidに対応 超高速 超小型 超薄型(ブラック)

    Vansuny SSD 外付け 480GB USB3.1 Gen2 読込速度550MB/s PS5/PS4メーカー動作確認済 コンパクト外付けSSD Type C Windows/MAC OS/Linux/Androidに対応 超高速 超小型 超薄型(ブラック)

    0
    読み込み中…
    usb sata 変換ケーブル for 外付けssd ケース - sata usb 3.0 13ピン ケーブル 内蔵光学ドライブ接続用 ドライバ不要 windows/mac対応 ラップトップ用

    usb sata 変換ケーブル for 外付けssd ケース - sata usb 3.0 13ピン ケーブル 内蔵光学ドライブ接続用 ドライバ不要 windows/mac対応 ラップトップ用

    0
    読み込み中…
    Lexar SL500 外付けSSD 1TB、USB3.2 Gen2x2 ポータブルSSD、最大2,000MB/秒の読み込みPSSD、1800MB/秒の書き込み。メタルデザインの外部ソリッドステートドライブ、DataShieldTM 256ビットAES暗号化(LSL500X001T-RNBNG)。

    Lexar SL500 外付けSSD 1TB、USB3.2 Gen2x2 ポータブルSSD、最大2,000MB/秒の読み込みPSSD、1800MB/秒の書き込み。メタルデザインの外部ソリッドステートドライブ、DataShieldTM 256ビットAES暗号化(LSL500X001T-RNBNG)。

    0

    関連記事

    読み込み中…
    【2026年】Linux AppArmor vs SELinux 設定ガイド|強制アクセス制御の選択

    【2026年】Linux AppArmor vs SELinux 設定ガイド|強制アクセス制御の選択

    LinuxのMAC(強制アクセス制御)システムであるAppArmorとSELinuxを詳細に比較。設定方法・ポリシー管理・トラブルシューティングを実践的に解説し、最適な選択を支援する。

    31分で読める·類似度 76%
    読み込み中…
    【2026年】ネットワークブリッジ&TAPデバイス設定ガイド|仮想化基盤

    【2026年】ネットワークブリッジ&TAPデバイス設定ガイド|仮想化基盤

    Linuxネットワークブリッジ・TAPデバイスの設定方法を解説。KVM/QEMU仮想マシンへのブリッジ接続、Open vSwitch連携、VLANトランク構成まで仮想化ネットワーク基盤を構築。

    24分で読める·類似度 73%
    読み込み中…
    Linuxサーバーのセキュリティ強化|Ubuntuで確認する更新・SSH・公開ポート

    Linuxサーバーのセキュリティ強化|Ubuntuで確認する更新・SSH・公開ポート

    Linuxサーバーのセキュリティを、Ubuntuの更新・SSH・公開ポートから見直すガイドです。鍵認証の確認、設定検査、有効値、管理接続を残した変更、UFWとクラウド側の制限を整理。Dockerの公開ポート、IPv6、自動更新と再起動、ログ、最小権限、バックアップ復元まで、接続を失わず確認する順序を示します。

    11分で読める·類似度 73%
    読み込み中…
    Linux を毎日使うための実用ガイド 2026年版|Ubuntu・Fedora・Arch実践比較

    Linux を毎日使うための実用ガイド 2026年版|Ubuntu・Fedora・Arch実践比較

    Linuxをメインデスクトップとして毎日使うための実用ガイド。主要ディストリビューションの実践的な使い分け。

    34分で読める·類似度 73%
    読み込み中…
    【2026年】eBPF Cilium/Tetragon 2026 PC|Kernel+可視化+セキュリティ

    【2026年】eBPF Cilium/Tetragon 2026 PC|Kernel+可視化+セキュリティ

    eBPF Cilium/Tetragon 2026 Kernel+可視化+セキュリティPC構成を解説。

    30分で読める·類似度 73%
    読み込み中…
    【2026年】Linux カーネルモジュール管理ガイド|lsmod/modprobeの使い方

    【2026年】Linux カーネルモジュール管理ガイド|lsmod/modprobeの使い方

    Linuxカーネルモジュールの管理方法を詳細解説。lsmod/modprobe/insmodの使い方、モジュールパラメータ、ブラックリスト設定、DKMSによるカスタムモジュール管理まで。

    28分で読める·類似度 73%

    その他をAmazonでチェック

    この記事で紹介したその他の商品情報をAmazonで確認できます。

    Vansuny SSD 外付け 480GB USB3.1 G...usb sata 変換ケーブル for 外付けssd ケース...Lexar SL500 外付けSSD 1TB、USB3.2 ...
    商品情報レビュー確認仕様確認

    Q: さらに詳しい情報はどこで?

    A: 自作.comコミュニティで質問してみましょう。

    今すぐ自作PCを始めよう
    自作.comのPC構成ツールで、最適なパーツを選ぼう。
    構成に迷ったら
    みんなの自作レシピで実例をチェックしよう。

    よく読まれている記事

    1

    Windows 11を高速化する設定5項目|遅い原因の確認と戻し方

    7,466 回読まれています

    2

    FF14 PC版の最適設定|重いときの軽量化と60fps安定手順【2026年】

    6,424 回読まれています

    3

    【2026年最新】Ryzen Curve Optimizer設定ガイド|温度-10℃・性能+15%を実現する方法

    6,137 回読まれています