LinuxでUFWを使ってファイアウォールの状態を確認・管理する方法

Linuxのセキュリティ対策のひとつとして重要なのが「ファイアウォール」の設定です。特に、初心者でも扱いやすいツールとして知られているのが「UFW(Uncomplicated Firewall)」です。
UFWはUbuntuなどのディストリビューションで標準的に採用されており、複雑な設定を必要とせず、コマンドラインから簡単にファイアウォールを有効化・無効化したり、ポートの制御ができる優れたツールです。
本記事では、UFWの状態を確認する方法を中心に、基本的な操作方法までを3000文字以上で詳しく解説します。Linux初心者の方もこの記事を読めば、UFWを使ってセキュリティを一歩強化することができます。


UFWとは?基本の解説

UFWは「Uncomplicated Firewall」の略で、その名の通り「複雑ではないファイアウォール」を目的に開発されたツールです。
iptablesという強力なファイアウォールツールのラッパーとして動作し、設定をより直感的かつ簡単に行うことができます。

UFWは主にUbuntuやDebian系のLinuxディストリビューションで使用されており、他のディストリビューションにもインストールすることで利用可能です。
セキュリティを意識するなら、サーバーやPCの立ち上げ時にまず確認しておきたいツールです。


UFWがインストールされているか確認する

まずは自分の環境にUFWがインストールされているかどうかを確認しましょう。以下のコマンドを実行します。

sudo ufw status

もし以下のようなメッセージが表示された場合は、まだUFWがインストールされていません。

Command 'ufw' not found, but can be installed with:
sudo apt install ufw

その場合は、次のコマンドでインストールします。

sudo apt update
sudo apt install ufw

インストール後、再度 sudo ufw status を実行して動作を確認します。


ファイアウォールの状態を確認する

UFWの状態を確認するには、以下のコマンドを使用します。

sudo ufw status

このコマンドの出力例は以下のようになります。

Status: active

To Action From
-- ------ ----
22 ALLOW Anywhere
80 ALLOW Anywhere

Status: active と表示されていれば、ファイアウォールが有効になっています。inactive と表示された場合は無効化されている状態です。


ファイアウォールの有効化・無効化

状態を確認した後、必要に応じてファイアウォールを有効化または無効化することができます。

有効化する場合

sudo ufw enable

このコマンドを実行すると、次回の再起動後も有効な状態が維持されます。

無効化する場合

sudo ufw disable

このコマンドを実行すると、ファイアウォールのルールが一時的に無効になります。ただし、セキュリティの観点から常時有効にしておくのが推奨です。


詳細表示:verboseオプション

状態の詳細を確認するには、verbose オプションを付けて表示を行います。

sudo ufw status verbose

出力例:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

この表示では、デフォルトで外部からのアクセスを「拒否(deny)」し、内部からのアクセスを「許可(allow)」している設定になっていることがわかります。


許可・拒否ルールの追加と削除

UFWでは簡単にルールの追加・削除もできます。代表的なコマンドをいくつか紹介します。

ポートの許可

例えば、SSH(ポート22)を許可するには以下のようにします。

sudo ufw allow 22

またはサービス名で指定することもできます。

sudo ufw allow ssh

ポートの拒否

特定のポートをブロックしたい場合はこちらです。

sudo ufw deny 23

ルールの削除

ルールの削除も簡単です。

sudo ufw delete allow 22

アプリケーションプロファイルを使った許可設定

UFWにはアプリケーションごとのプロファイルも用意されています。以下のコマンドで利用可能なプロファイル一覧を表示できます。

sudo ufw app list

出力例:

Available applications:
Apache
OpenSSH

指定したプロファイルを有効にするには以下のようにします。

sudo ufw allow "Apache"

ログの確認方法

UFWがブロックした通信などはログに記録されています。ログの確認は以下のファイルを参照します。

sudo less /var/log/ufw.log

大量に出力されることがあるため、grepと組み合わせて特定のポートやIPだけを抽出するのが便利です。

例:

sudo grep 'DPT=22' /var/log/ufw.log

トラブル時の確認ポイント

UFWを使用していると、通信が思ったように通らないときがあります。以下を確認しましょう。

  • ポートが正しく許可されているか
  • sudo ufw status で意図しないルールがないか
  • サーバーアプリケーションが正しいポートでリッスンしているか(例:netstatssで確認)

まとめ

UFWは、Linux初心者でも簡単にファイアウォールの状態を確認・設定できる非常に便利なツールです。
sudo ufw status を使えば今の設定状況がすぐにわかり、allowdeny で簡単に通信ルールの追加・削除が行えます。
セキュリティ対策としてファイアウォールの導入・管理は必須です。ぜひこの機会に、UFWの使い方を覚えて、Linux環境の安全性を高めていきましょう。

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