ufwでファイアウォール設定

はじめに

Ubuntuでファイアウォールを設定する際に、iptablesまたはufwを利用することができます。

ここではufwでアプリプロファイルで任意のポート番号へのアクセスを許可したり、拒否したりといったルールを追加するケースを取り上げます。

ポート番号ごとにルールを追加していっても良いですが、複数ポートを一括で設定する際はアプリプロファイルを登録して、ルールを書くのが良いです。

番号だけだと、パッと見て「このポートってなんのために開いていたっけ...?」となるので、アプリプロファイルで記述した方がメンテナンスの面でも良いかと思います。

アプリプロファイルの登録

まずは、次のコマンドでアプリプロファイルの一覧を見てみる。

ufw app list

次にアプリプロファイルを作成します。/etc/ufw/applications.d/ディレクトリをカレントディレクトリにして、任意の名前のファイルを作成します。

cd /etc/ufw/applications.d/

# ファイル名は任意ですが、ここではcustom-appというファイル名にします。
vi custom-app

ファイルの内容は次のようにして保存します。

/etc/ufw/applications.d/custom-app
[CustomApp]
title=Custom Application
description=My awesome application server
ports=3000,8000,9000/tcp

以上でプロファイルの作成は終わりです。

ufw app list でリストアップされるか確認してみましょう。

ルールの追加方法の例

あくまで一例として挙げておきます。

ufw allow CustomApp

# 任意のIPからのみの場合
ufw allow from XXX.XXX.XXX.XXX to any app CustomApp