⑨ネットワーク基礎

ファイアウォールの仕組みとufwの使い方【パケットフィルタリングをLinuxで設定する】

⑨ネットワーク基礎
記事内に広告が含まれています。

ファイアウォールはネットワークの「門番」です。Linuxサーバーの公開時に必ず設定が必要なufwの使い方を中心に、ファイアウォールの仕組みを解説します。

ファイアウォールとは何か?

ファイアウォールはネットワーク通信を監視し、設定したルールに基づいてパケットの通過を「許可(ACCEPT)」または「拒否(DROP/REJECT)」する仕組みです。不正アクセスを防ぎ、必要なサービスだけを外部に公開できます。

ufwの基本操作

# ufwの有効化・無効化
sudo ufw enable
sudo ufw disable
sudo ufw status verbose

# 基本ポリシーの設定(デフォルト拒否が推奨)
sudo ufw default deny incoming
sudo ufw default allow outgoing

# ルールの追加(ポート番号で指定)
sudo ufw allow 22/tcp    # SSH
sudo ufw allow 80/tcp    # HTTP
sudo ufw allow 443/tcp   # HTTPS

# サービス名でも指定可能
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

# 特定のIPアドレスからのみ許可
sudo ufw allow from 192.168.1.0/24 to any port 22
sudo ufw allow from 203.0.113.10 to any port 3306

# ルールの削除
sudo ufw delete allow 80/tcp
sudo ufw delete allow ssh

# ルールの番号を確認して削除
sudo ufw status numbered
sudo ufw delete 3

よく使う設定パターン

# Webサーバーの設定(SSH・HTTP・HTTPSのみ許可)
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

# ポート範囲の許可
sudo ufw allow 8000:9000/tcp

# レート制限(SSHへのブルートフォース対策)
sudo ufw limit ssh

# ログを有効化
sudo ufw logging on
sudo ufw logging medium

iptablesとufwの関係

ufwはLinuxカーネルの「netfilter/iptables」をわかりやすく操作するためのフロントエンドです。ufw enable後にiptables -Lを実行すると、ufwが生成したiptablesルールを確認できます。

VPSをセットアップするとき、最初にufwを設定しないままSSHポートを開けていたら、数時間後にrootへのブルートフォース攻撃ログが大量に出ていた経験があります。公開サーバーは「ufw enable → 必要なポートだけallow」を最初にやることが鉄則です。

hobbyshift管理人

まとめ

  • ファイアウォールはパケットを許可・拒否するネットワークの門番
  • ufwは「デフォルト拒否、必要なポートだけallow」が基本
  • ssh・http・httpsのポートをallowしてenableするのがWebサーバーの基本設定
  • ufw limit sshでSSHブルートフォース攻撃を軽減できる

コメント

タイトルとURLをコピーしました