UFWルールジェネレーター
Linuxセキュリティ&インフラ自動化

Ubuntu UFW ファイアウォール ルール&スクリプト生成ツール

Ubuntu UFW のファイアウォール規則、デフォルト遮断ポリシー、レート制限、ポート転送、自動実行可能な Bash スクリプトをブラウザ上で安全に生成します。

セキュリティスコア: 100/100
100% クライアントサイド
プリセット:
グローバルファイアウォールポリシー&サービス許可一覧
受信: DENY•送信: ALLOW•IPv6: デュアルスタック
クイックサービス登録(ワンクリック許可)
設定済みルール一覧 (5)チェックボックスで有効/無効を切り替え
#1limitIN22/tcp
#2allowIN80/tcp
#3allowIN443/tcp
#4allowIN3306/tcp送信元 10.0.0.0/16インターフェース eth1
#5allowIN6379/tcp送信元 127.0.0.1インターフェース lo
#!/usr/bin/env bash
# ==============================================================================
# Ubuntu UFW (Uncomplicated Firewall) Production Provisioning Script
# Generated securely via ToolsAA (https://toolsaa.com/tools/ufw-rules-generator)
# 100% Client-Side Private • Zero-Knowledge Architecture
# ==============================================================================
set -euo pipefail

# Ensure script is executed with root superuser privileges
if [[ $EUID -ne 0 ]]; then
  echo -e "\033[0;31m[ERROR]\033[0m This script must be run as root: sudo bash $0" >&2
  exit 1
fi

# Step 1: Ensure UFW package is installed and active
if ! command -v ufw &>/dev/null; then
  echo ">>> [INSTALL] UFW not detected. Installing via apt-get..."
  export DEBIAN_FRONTEND=noninteractive
  apt-get update -y && apt-get install -y ufw iptables iptables-persistent
fi

# Step 2: Create atomic timestamped backup of current firewall configuration
BACKUP_DIR="/etc/ufw/backups/ufw_backup_$(date +%Y%m%d_%H%M%S)"
mkdir -p "$BACKUP_DIR"
if [[ -d /etc/ufw ]]; then
  cp -r /etc/ufw/*.rules /etc/default/ufw "$BACKUP_DIR/" 2>/dev/null || true
  echo ">>> [BACKUP] Saved existing configuration to $BACKUP_DIR"
fi

# Step 3: Configure IPv6 policy in /etc/default/ufw
if [[ -f /etc/default/ufw ]]; then
  sed -i 's/^IPV6=.*/IPV6=yes/' /etc/default/ufw
  sed -i 's/^DEFAULT_FORWARD_POLICY=.*/DEFAULT_FORWARD_POLICY="DROP"/' /etc/default/ufw
fi

# Step 4: Reset UFW to a clean baseline (force non-interactive)
echo ">>> [RESET] Resetting UFW to pristine baseline..."
ufw --force reset

# Step 5: Set Global Default Policies
ufw default deny incoming
ufw default allow outgoing
ufw default deny routed
ufw logging low

# Step 6: Loopback (lo) Interface Whitelist
ufw allow in on lo comment 'Allow local loopback incoming'
ufw allow out on lo comment 'Allow local loopback outgoing'

# Step 7: Apply User Defined Firewall Rules
ufw limit 22/tcp comment 'Rate limited SSH access against brute force'
ufw allow 80/tcp comment 'Public HTTP web traffic'
ufw allow 443/tcp comment 'Public HTTPS SSL/TLS traffic'
ufw allow in on eth1 from 10.0.0.0/16 to any port 3306 proto tcp comment 'Internal VPC MySQL cluster replication'
ufw allow in on lo from 127.0.0.1 to any port 6379 proto tcp comment 'Local Redis key-value cache'

# Step 9: Enable Firewall & Verify State
echo ">>> [ENABLE] Activating UFW firewall rules..."
ufw --force enable

echo -e "\n\033[0;32m[SUCCESS]\033[0m UFW Firewall has been configured and activated!"
echo ">>> Active Firewall Status:"
ufw status verbose
echo ""
echo ">>> Numbered Rule List (use: sudo ufw delete <number> to modify):"
ufw status numbered
有効なファイアウォール規則
5/ 5 件定義済み
受信: DENY • 送信: ALLOW
開放・転送ポート数
22, 80, 443, 3306...
0 件のDNAT転送 • IPv6: 有効
セキュリティ保護スコア
100/1000 件の警告
SSH レート制限 有効

100% クライアントサイド処理

すべてのファイアウォール設定とスクリプトはブラウザ内で完結し、サーバー IP やネットワーク構成が外部に送信されることは一切ありません。

本番向けセキュリティ強化

デフォルト受信拒否、SSH レート制限、ループバック保護など、サーバーからの締め出しを防ぎつつ堅牢な防御を構築します。

DevOps 向けマルチフォーマット出力

安全なロールバック付き Bash スクリプト、before.rules の NAT 定義、Ansible プレイブックとして即時エクスポート可能です。

技術リファレンス&アーキテクチャガイド

Linuxセキュリティ&インフラ自動化 — リファレンスガイド

Ubuntu UFW のファイアウォール規則、デフォルト遮断ポリシー、レート制限、ポート転送、自動実行可能な Bash スクリプトをブラウザ上で安全に生成します。

主要パラメータ&設定項目

action'allow' | 'deny' | 'reject' | 'limit'

指定されたポート、プロトコル、CIDR範囲に一致するトラフィックに適用するパケットフィルタリング処理。

初期値: allow
direction'in' | 'out'

ローカルインターフェースに対するパケットの流れの方向(受信'in'または送信'out')。

初期値: in
protocol'tcp' | 'udp' | 'any'

パケットマッチング対象のレイヤー4トランスポートプロトコル('tcp'、'udp'、またはプロトコル不問の'any')。

初期値: tcp
defaultIncoming'deny' | 'reject' | 'allow'

未明示の着信接続全体に対して適用されるグローバルファイアウォール基本ポリシー。

初期値: deny
logging'off' | 'low' | 'medium' | 'high' | 'full'

/var/log/ufw.logおよびsyslogに出力されるカーネルパケットイベントのログ記録レベル。

初期値: low
enableNatMasqueradeboolean

プライベートサブネットルーティング用のiptables POSTROUTINGチェーンにおけるIPマスカレードの有効化。

初期値: false

プロの活用テクニック&推奨設定

SSH接続のレートリミット設定

ポート22/tcpに`allow`ではなく`limit`アクションを設定します。UFWは30秒間に6回以上の接続を試行したIPアドレスからのアクセスを自動的に遮断します。

包括規則より前に特定規則を配置

UFWはルールを上から順に最初に一致したものを適用します。広範な拒否ルールの前に、特定の管理用送信元IPやCIDR許可ルールを先に評価させる必要があります。

Dockerポートバイパスの防止

DockerはUFWの評価前にiptablesのPREROUTINGチェーンを直接操作します。`/etc/ufw/after.rules`のDOCKER-USERチェーンで制限するか、`/etc/docker/daemon.json`で`iptables: false`を設定します。

よくあるトラブルと解決策

'ufw enable' の実行直後にSSH接続が切断され締め出される

有効化コマンドを実行する前に、必ず `ufw allow 22/tcp`(または設定済みSSHポート)を実行してください。クラウド上で締め出された場合は、VPSプロバイダのWebコンソールやVNCから `ufw disable` を実行して復旧します。

Dockerコンテナの公開ポートがUFWの拒否ルールを無視してアクセス可能になる

DockerはUFWの評価前にiptablesのPREROUTINGチェーンを直接書き換えます。`/etc/docker/daemon.json` に `"iptables": false` を設定するか、`/etc/ufw/after.rules` の DOCKER-USER チェーンにパブリック通信の拒否ルールを追記してください。

よくある質問 (FAQ)

UFWはdocker run -pで設定されたポートバインディングを制御できますか?▼

デフォルトでは制御できません。DockerはUFWのフィルタルールより前に評価される独自のiptablesチェーンを作成するためです。制御するにはDOCKER-USERチェーンでパケットを制限するか、Dockerのiptables自動管理を無効化する必要があります。

UFWのdenyとrejectの動作上の違いは何ですか?▼

`deny`は受信パケットを応答なしで破棄するため、送信元はタイムアウトまで待機します。一方`reject`はパケットを破棄しつつICMP Port UnreachableまたはTCP RSTを即座に返し、ポートが閉鎖されていることを送信元に通知します。

生成されたUFWルールはシステムの再起動後も保持されますか?▼

はい。UFWを通じて適用されたルールは`/etc/ufw/user.rules`(IPv4)および`/etc/ufw/user6.rules`(IPv6)に保存され、systemdの`ufw.service`によってOS起動時に自動的に復元されます。

生成されたファイアウォール設定が外部サーバーに送信されることはありますか?▼

いいえ。ルールの生成、スクリプトの出力、Ansibleプレイブックの作成はすべてブラウザのクライアント環境内でのみ処理されます。IPアドレスやポート構成などのインフラ情報が外部へ送信されることはありません。

関連するおすすめ開発ツール

すべてのツール →
Linux iptables ファイアウォールルール構築・シェルスクリプト生成セキュリティ

INPUT/FORWARD/OUTPUTチェーン、ステートフルパケット検査、SYN Flood防御、NATポートフォワーディング、自動シェルスクリプト出力。

ツールを開く→
DNS SPF (Sender Policy Framework) レコードビルダー&解説 技術者ガイドセキュリティ

RFC 7208準拠のSPF TXTレコードを生成・検証。IPv4/IPv6 CIDRブロック、MX、A、includeメカニズム、SoftFail/HardFail強制ポリシーの設計とDNS 10回ルックアップ制限対策。

ツールを開く→
DNS DMARCポリシーレコードビルダー&構文バリデータセキュリティ

ポリシー適用(none/quarantine/reject)、rua/ruf集約レポート、アライメントタグを備えたRFC 7489準拠のDMARC DNS TXTレコードを生成・検証します。

ツールを開く→
DNS CAA(認証局承認)レコードジェネレーターセキュリティ

RFC 8659 に準拠した DNS CAA レコードを生成し、SSL/TLS 証明書の発行権限を信頼できる認証局(Let's Encrypt、DigiCert、Sectigo など)に限定します。

ツールを開く→
DNS DKIM TXTレコード生成&セレクタ設計 完全セキュリティ

RFC 6376準拠のDNS DKIM TXTレコード(v=DKIM1; k=rsa; p=...)の構築、セレクタ命名規則、255文字制限の分割手法、および認証検証手順を解説します。

ツールを開く→
MTA-STS ポリシー&TLS-RPT DNSレコードジェネレーターセキュリティ

RFC 8461準拠のMTA-STSポリシーファイル、_mta-sts DNS TXTレコード、およびRFC 8460 TLS-RPTレポートレコードの生成仕様と運用ベストプラクティス。

ツールを開く→