## はじめに
この記事では、`firewalld`を使用してLinuxサーバーのファイアウォールを設定する方法について解説します。`firewalld`は柔軟性と管理性が高く、実行中のサービスやアプリケーションに応じて動的にルールを変更できるため、セキュリティ管理者にとって有力なツールです。
## 症状・背景
`firewalld`が必要になる主な場面:
– ネットワークのセキュリティが強化される必要がある場合
– サービスやポートの管理をより柔軟に行いたい場合
– ルールベースのファイアウォール設定が必要な場合
## 手順・設定方法
### ステップ1: `firewalld`のインストールと起動
“`bash
# CentOS 7の場合
sudo yum install firewalld -y
# Ubuntu 18.04以降の場合
sudo apt-get update && sudo apt-get install firewalld -y
# サービスを開始し、自動起動設定を行う
sudo systemctl start firewalld
sudo systemctl enable firewalld
“`
### ステップ2: ルールの追加
“`bash
# HTTP (port 80) の許可
sudo firewall-cmd –permanent –zone=public –add-service=http
# HTTPS (port 443) の許可
sudo firewall-cmd –permanent –zone=public –add-service=https
# SSH (port 22) の許可
sudo firewall-cmd –permanent –zone=public –add-service=ssh
“`
### ステップ3: ルールの適用と確認
“`bash
# 新しいルールを有効にする
sudo firewall-cmd –reload
# 現在設定されているルールを表示する
sudo firewall-cmd –list-all
“`
### ステップ4: トラブルシュート/監視
“`bash
# サービスの状態を確認する
sudo firewall-cmd –state
# ファイアウォールのログを表示する
sudo journalctl -u firewalld
“`
## 注意事項
– `firewalld`はデフォルトで「public」ゾーンを使用しますが、特定のネットワーク環境や使用目的に合わせて適切なゾーンを選択することを推奨します。
– ルールを追加する前に、既存の設定と矛盾しないことを確認してください。
– 定期的にファイアウォールのログを確認し、不正アクセスを検知することが重要です。
## まとめ
1. **インストール**: `firewalld`は必要に応じてインストールします。
2. **基本的なルール追加**: HTTP、HTTPS、SSHなどの一般的なサービスのルールを追加します。
3. **ルールの適用と確認**: ルールを有効化し、現在設定されているルールを確認します。
4. **トラブルシュート**: サービスの状態やログを確認することで、問題の早期発見が可能です。
関連記事:
– [Linuxでufwを使ってファイアウォールを設定する方法](../linux-ufw-setup)
– [セキュリティ強化のために必要なLinuxサーバー管理技術](../linux-security-best-practices)
– [ネットワークセキュリティの基本と実践](../network-security-basics)

