この記事の監修:宮崎智広(Linux教育歴15年以上・受講者3,100名超)
「firewalldを停止したいけど、コマンドが分からない」「iptablesとfirewalldの違いは?」
そんな疑問を持つ方は多いです。

CentOS7からファイアウォールの推奨ツールがiptablesからfirewalldに変わりました。
開発環境や内部ネットワーク専用サーバーでは、ファイアウォールを一時的に停止したい場面もあります。

この記事では、CentOS7のfirewalldの状態確認と停止方法を解説します。
【この記事でわかること】
firewall-cmd --list-services で許可されているサービスを確認できる
systemctl stop firewalld で即時停止、systemctl disable firewalld で恒久停止
・本番サーバーでは停止せず、必要なポートだけ開放するのが正しい対処

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

firewalldとiptablesの違い

CentOS6系まではファイアウォールにiptablesが標準でしたが、CentOS7からfirewalldが推奨となりました。

iptables:設定変更のたびに再起動が必要。低レベルのパケットフィルタリングルールを直接記述
firewalld:再起動なしでルールを動的に変更可能。ゾーンという概念で設定を管理

CentOS7ではiptablesも使用できますが、firewalldとの併用は禁止です。
どちらか一方のみを使用してください。

firewalldの状態を確認する

1. サービスの稼働状態を確認する

firewalldが起動しているか確認します。

# systemctl status firewalld * firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled) Active: active (running) since Mon 2026-04-07 10:00:00 JST

「Active: active (running)」と表示されていれば、firewalldは稼働中です。

2. 許可されているサービスを確認する

# firewall-cmd --list-services --zone=public ssh dhcpv6-client

デフォルトではSSH(ポート22)とDHCPv6のみが許可されています。

# 開放されている全ルールを確認する # firewall-cmd --list-all public (active) target: default interfaces: eth0 services: ssh dhcpv6-client ports: protocols:

firewalldを停止する

【注意】本番サーバーでは原則としてfirewalldを停止しないでください。
必要なポートだけを開放する設定で対応するのが安全な対処法です。
開発環境や内部ネットワーク専用サーバーに限って停止を検討してください。

1. 即時停止(再起動すると元に戻る)

# firewalldを即時停止する # systemctl stop firewalld.service # 停止後に状態を確認する # systemctl status firewalld * firewalld.service - firewalld - dynamic firewall daemon Active: inactive (dead)

この設定はサーバー再起動後に元の状態(起動)に戻ります。一時的な停止に使用します。

2. 恒久的に停止する(再起動後も停止状態を維持)

# 自動起動を無効化する # systemctl disable firewalld.service Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. # 即時停止も実施する(disableだけでは今すぐは停止しない) # systemctl stop firewalld.service

systemctl disable はOS起動時の自動起動を無効にするコマンドです。
現在の稼働状態は変わりませんので、systemctl stop も一緒に実行してください。

3. 恒久停止の確認

# 自動起動の状態を確認する # systemctl is-enabled firewalld disabled

「disabled」と表示されれば、再起動後もfirewalldは自動起動しません。

本記事のまとめ

やりたいこと コマンド
firewalldの稼働状態を確認する systemctl status firewalld
許可されているサービスを確認する firewall-cmd --list-services --zone=public
全ルールを確認する firewall-cmd --list-all
即時停止する(再起動で元に戻る) systemctl stop firewalld.service
恒久的に停止する systemctl disable firewalld.service
自動起動の状態を確認する systemctl is-enabled firewalld

ファイアウォールの設定、本当にこれで大丈夫ですか?

firewalldの停止は応急処置です。本番環境では必要なポートだけを正しく開放する設定が求められます。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。


無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録

宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として15年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。