1月 13, 2026ガイド
Linuxサーバーでファイアウォールを構成する方法
サーバーを保護するために、UFW(Ubuntu)およびFirewalld(CentOS)ファイアウォールを構成するための完全ガイド。

ファイアウォールはサーバーセキュリティに不可欠であり、送受信されるネットワークトラフィックを制御します。このガイドでは、Ubuntu/DebianでのUFW、およびCentOS/RHELシステムでのFirewalldの構成について説明します。
UFWのインストール
bash
sudo apt update
sudo apt install ufw -y基本的なUFWコマンド
bash
# ステータスを確認する
sudo ufw status
# ファイアウォールを有効にする
sudo ufw enable
# SSHを許可する(重要!)
sudo ufw allow 22/tcp
# HTTPとHTTPSを許可する
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# ポートを拒否する
sudo ufw deny 3306/tcp
# ルールを削除する
sudo ufw delete allow 80/tcpアプリケーションプロファイルの使用
bash
# 利用可能なアプリケーションを表示する
sudo ufw app list
# Nginxを許可する
sudo ufw allow 'Nginx Full'
# OpenSSHを許可する
sudo ufw allow 'OpenSSH'Firewalldのインストール
bash
sudo yum install firewalld -y
sudo systemctl start firewalld
sudo systemctl enable firewalld基本的なFirewalldコマンド
bash
# ステータスを確認する
sudo firewall-cmd --state
# すべてのルールを表示する
sudo firewall-cmd --list-all
# サービスを許可する
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
# ポートを許可する
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reloadゾーンの操作
Firewalldはゾーンを使用してネットワークセキュリティを管理します。一般的なゾーン:
bash
# ゾーンを表示する
sudo firewall-cmd --get-zones
# デフォルトゾーンを設定する
sudo firewall-cmd --set-default-zone=public
# ゾーンにサービスを追加する
sudo firewall-cmd --zone=public --add-service=ssh --permanent
sudo firewall-cmd --reloadセキュリティのベストプラクティス
- 締め出しを防ぐため、ファイアウォールを有効にする前に必ずSSHを許可してください
- 可能な場合は特定のIPアドレスを使用してください:sudo ufw allow from 192.168.1.100
- 定期的にファイアウォールルールを確認し、不要なものを削除してください
- ファイアウォールの活動を監視するためにログを有効にしてください
- 本番環境に適用する前にファイアウォールルールをテストしてください