開発運用

UFWによるUbuntuのファイアウォール設定

UbuntuでUFW(Uncomplicated Firewall)を使用してファイアウォールを設定する方法について、完全かつ包括的な記事を以下に示します。このガイドでは、UFWを使用して、サーバーやコンピュータのセキュリティを向上させるために、必要な設定を行う方法を詳しく説明します。

UFWとは何か?

UFW(Uncomplicated Firewall)は、Ubuntuにデフォルトでインストールされている簡単なコマンドラインベースのファイアウォール管理ツールです。UFWは、Linuxシステムのネットワークトラフィックを制御し、不正アクセスからシステムを保護するために使用されます。ファイアウォールは、システムと外部のネットワーク(例えば、インターネット)との間でデータの送受信を制限する役割を果たします。

UFWのインストール

Ubuntuでは、UFWは通常デフォルトでインストールされていますが、もしインストールされていない場合には、以下のコマンドを使用してインストールすることができます。

bash
sudo apt update sudo apt install ufw

UFWの基本的な設定

UFWを有効にする前に、まずは基本的な設定を確認しておくことが重要です。UFWは、インバウンド(受信)およびアウトバウンド(送信)トラフィックに対してルールを設定します。

1. UFWの状態確認

まず、UFWが有効か無効かを確認するために、以下のコマンドを実行します。

bash
sudo ufw status

UFWが有効でない場合、「Status: inactive」と表示されます。

2. UFWの有効化

UFWを有効にするには、以下のコマンドを使用します。

bash
sudo ufw enable

これでUFWが有効になり、ファイアウォールがシステムのトラフィックを制御し始めます。

3. UFWの無効化

UFWを無効にしたい場合は、以下のコマンドを実行します。

bash
sudo ufw disable

これにより、UFWが無効になり、ファイアウォールの制限が解除されます。

UFWの基本的なルール設定

UFWを有効にしたら、次にネットワークトラフィックに関するルールを設定します。基本的なルールの設定方法を以下に示します。

1. デフォルトポリシーの設定

まず、UFWのデフォルトの動作を設定します。デフォルトでは、全ての受信トラフィックを拒否し、全ての送信トラフィックを許可する設定が推奨されます。これにより、外部からの攻撃を防ぎつつ、システムから外部へのアクセスを制限せずに保つことができます。

bash
sudo ufw default deny incoming sudo ufw default allow outgoing

この設定により、外部からのアクセスはすべて拒否され、外部への接続は許可されます。

2. 特定のポートを許可する

必要に応じて、特定のサービス(例えば、SSHやHTTP)にアクセスできるようにポートを開放します。

例えば、SSH(ポート22)を許可するには、以下のコマンドを実行します。

bash
sudo ufw allow ssh

または、ポート番号で指定することもできます。

bash
sudo ufw allow 22

HTTP(ポート80)やHTTPS(ポート443)を許可する場合も、同様のコマンドを使用します。

bash
sudo ufw allow 80 sudo ufw allow 443

3. 特定のIPアドレスからのアクセスを許可する

特定のIPアドレスからのみアクセスを許可する場合は、以下のように指定できます。

bash
sudo ufw allow from 192.168.1.100 to any port 22

このコマンドは、IPアドレス192.168.1.100からポート22(SSH)のアクセスを許可します。

4. ポート範囲を指定する

複数のポートを一度に開放する場合は、ポート範囲を指定することもできます。

例えば、ポート5000からポート6000までを許可するには、次のようにします。

bash
sudo ufw allow 5000:6000/tcp

UFWのステータスの確認

設定したルールを確認するためには、以下のコマンドを実行します。

bash
sudo ufw status verbose

これにより、現在設定されているすべてのルールが表示されます。

UFWのログ設定

UFWは、トラフィックを記録するためのログ機能を提供しています。ログを有効にするには、以下のコマンドを実行します。

bash
sudo ufw logging on

ログレベルは、lowmediumhighfullのいずれかに設定できます。デフォルトはlowです。

bash
sudo ufw logging high

UFWのルール削除

設定したルールを削除するには、以下のコマンドを使用します。

bash
sudo ufw delete allow 22

これは、ポート22の許可ルールを削除します。

特定のプロトコルに対するルール設定

UFWでは、TCPやUDPなどのプロトコルに対するルール設定も行うことができます。例えば、TCPのみを許可する場合は次のようにします。

bash
sudo ufw allow 80/tcp

UDPを許可する場合は、次のようにします。

bash
sudo ufw allow 53/udp

UFWを使用した特定のサービスの許可

UFWはサービス名でアクセスを許可することもできます。例えば、apacheというサービスを許可するには、次のようにします。

bash
sudo ufw allow apache

または、openSSHを許可するには以下のようにします。

bash
sudo ufw allow OpenSSH

終わりに

UFWを使用することで、Ubuntuシステムに簡単に強力なファイアウォールを設定することができます。適切な設定を行うことで、外部からの不正アクセスを防ぎ、システムのセキュリティを強化することが可能です。セキュリティの維持には定期的な確認と更新が重要ですので、ファイアウォール設定を適宜見直すことをお勧めします。

Back to top button