ufw は、Linux の iptables/nftables を簡単に操作できる ファイアウォール管理ツール です。
複雑なルールを覚えずに、直感的なコマンドでポート制御やアクセス制御を行えます。Ubuntu などのディストリビューションでよく利用されます。
構文(Syntax)
ufw <コマンド> [オプション]
主なコマンド一覧
| コマンド | 説明 | 使用例 |
|---|---|---|
enable | UFW を有効化 | sudo ufw enable |
disable | UFW を無効化 | sudo ufw disable |
status | 現在の状態とルールを表示 | sudo ufw status |
| `default allow | deny` | デフォルトポリシーを設定 |
allow <port> | 指定ポートを許可 | sudo ufw allow 22 |
deny <port> | 指定ポートを拒否 | sudo ufw deny 80 |
delete <rule> | 指定したルールを削除 | sudo ufw delete allow 22 |
allow from <IP> | 特定の IP からのアクセスを許可 | sudo ufw allow from 192.168.1.100 |
allow from <IP> to any port <port> | 特定 IP から特定ポートを許可 | sudo ufw allow from 192.168.1.100 to any port 22 |
limit <port> | ブルートフォース対策(短時間で多数アクセスを制限) | sudo ufw limit ssh |
reset | UFW の設定を初期化 | sudo ufw reset |
実行例
UFW を有効化
sudo ufw enable
出力例:
Firewall is active and enabled on system startup
UFW の状態確認
sudo ufw status
出力例:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
80/tcp DENY Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
SSH (22番) を許可
sudo ufw allow 22
HTTP (80番) を拒否
sudo ufw deny 80
特定の IP からのみ SSH を許可
sudo ufw allow from 203.0.113.10 to any port 22
デフォルトで全て拒否
sudo ufw default deny
ブルートフォース対策で SSH を制限
sudo ufw limit ssh
ルールを削除
sudo ufw delete allow 22
設定をリセット
sudo ufw reset
エラー例(root 権限なし)
ufw status
出力例:
ERROR: You need to run this command as root
関連コマンド
iptables: より低レベルなファイアウォール設定コマンド。firewalld: RedHat 系で使われるファイアウォール管理ツール。
備考
- UFW は内部的に iptables/nftables を利用しているため、同時に直接操作すると競合する場合があります。
- SSH を利用しているサーバーで
ufw enableを実行する際は、必ず 22 番ポートを許可 してから有効化すること。 - IPv6 に対応しており、
/etc/default/ufwの設定で有効化できます。

コメント