はじめに
このハンズオン実験(Lab)へようこそ。基本的なファイアウォールの有効化について学習します。サーバーのセキュリティ保護は、あらゆるシステム管理者にとって極めて重要なタスクであり、ファイアウォールは不正なネットワークアクセスに対する最初の防御線となります。
この実験では、Debian および Ubuntu システムにおける iptables ファイアウォールルールの管理のためのユーザーフレンドリーなインターフェースである UFW (Uncomplicated Firewall) を使用します。UFW はシンプルで直感的に設計されており、基本的なファイアウォール管理を誰でも利用できるようにしています。UFW のインストール方法、特定のトラフィックを許可するためのルールの追加方法、ファイアウォールの有効化と無効化、およびステータスの確認方法を学びます。
この実験を終える頃には、UFW を使用して基本的なファイアウォール操作を実行する方法について確固たる理解が得られるでしょう。
apt install ufw -y コマンドを使用した UFW のインストール
このステップでは、Uncomplicated Firewall (UFW) をインストールします。UFW は多くの Ubuntu ディストリビューションに含まれていますが、インストールされていることを確認するか、不足している場合にインストールすることが良い習慣です。ここでは apt パッケージマネージャを使用します。
まず、利用可能な最新バージョンを取得するために、パッケージリストを更新することが常に推奨されます。
ターミナルで次のコマンドを実行します。
sudo apt update
パッケージリストがリポジトリから更新される際の出力を確認できます。
次に、UFW のインストールに進みます。-y フラグは、インストールプロセス中に表示されるすべてのプロンプトに自動的に「はい」と答えます。
sudo apt install ufw -y
コマンドが完了すると、UFW がシステムにインストールされます。以下のような出力が表示され、インストールが成功したことを示します。
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
ufw
0 upgraded, 1 newly installed, 0 to remove and ... not upgraded.
Need to get ...
After this operation, ... of additional disk space will be used.
...
Setting up ufw (...)
...
この時点では、UFW はインストールされていますが、まだアクティブではありません。次のステップでは、有効化する前にルールを設定します。
ufw allow 80 コマンドを使用した HTTP の許可
このステップでは、着信 HTTP トラフィックを許可するためのファイアウォールルールを追加します。デフォルトでは、UFW はすべての着信接続を拒否します。Web サーバーを実行している場合、ユーザーがアクセスできるように明示的にルールを作成する必要があります。HTTP トラフィックはポート 80 を使用します。
ルールは、ufw allow コマンドの後にポート番号またはサービス名を指定して追加できます。
ポート 80 でのトラフィックを許可するために、次のコマンドを実行します。
sudo ufw allow 80
ルールが追加されたことの確認メッセージが表示されます。UFW は IPv4 トラフィックと IPv6 トラフィックの両方にルールを追加するのに十分賢いため、出力には 2 行が表示されます。
Rule added
Rule added (v6)
このルールは設定されましたが、ファイアウォールが有効になるまで適用されません。有効化は次のステップで行います。これは安全な手順であり、ファイアウォールをアクティブ化して誤って自分自身をロックアウトする前に、必要なすべてのルール(例:SSH 用)を設定できるようにします。
ufw enable コマンドを使用したファイアウォールの有効化
このステップでは、ファイアウォールをアクティブ化します。UFW をインストールしルールを追加するだけでは不十分であり、ルールを適用するためにはファイアウォールサービスが実行されている必要があります。
ファイアウォールを有効にする前に、システムから締め出されるのを防ぐために、SSH トラフィックを許可することが重要です。SSH はデフォルトでポート 22 を使用します。
sudo ufw allow ssh
SSH ルールが追加されたことの確認メッセージが表示されます。
Rule added
Rule added (v6)
これで安全に UFW を有効にできます。ufw enable コマンドを使用します。
sudo ufw enable
ファイアウォールがアクティブ化され、システム起動時に自動的に有効になることが出力で確認されます。
Firewall is active and enabled on system startup
これでファイアウォールが稼働し、SSH アクセスの許可を含む設定したルールが適用されます。
ufw status コマンドによるステータスの確認
このステップでは、ファイアウォールのステータスを確認し、アクティブなルールを表示する方法を学びます。これは、設定を確認するために不可欠なコマンドです。
基本的なステータスレポートを確認するには、ufw status コマンドを使用します。
sudo ufw status
出力には、ファイアウォールがアクティブであることと、設定したルールの一覧が表示されます。追加した SSH およびポート 80 のルールが表示されるはずです。
Status: active
To Action From
-- ------ ----
80 ALLOW Anywhere
80 (v6) ALLOW Anywhere (v6)
22 ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
より詳細な表示を行うには、verbose オプションを使用できます。これにより、デフォルトポリシーも表示されます。
sudo ufw status verbose
verbose 出力は、着信、発信、ルーティングされたトラフィックのデフォルトポリシーを含む、より多くのコンテキストを提供します。デフォルトでは、UFW はすべての着信トラフィックを拒否し、すべてのアウトバウンドトラフィックを許可します。
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
80/tcp ALLOW IN Anywhere
80/tcp (v6) ALLOW IN Anywhere (v6)
22/tcp ALLOW IN Anywhere
22/tcp (v6) ALLOW IN Anywhere (v6)
ファイアウォールが意図したとおりに設定されていることを確認するために、定期的にステータスを確認することは良い習慣です。
ufw disable コマンドによるルールの無効化と削除
このステップでは、ファイアウォールを無効化し、既存のルールを削除する方法を学びます。これは、メンテナンス、トラブルシューティング、またはファイアウォールをゼロから再設定する場合に必要になることがあります。
まず、ファイアウォールを無効化します。これにより、UFW によるネットワークトラフィックのフィルタリングが停止します。
sudo ufw disable
出力により、サービスが停止したことが確認されます。
Firewall stopped and disabled on system startup
次に、追加したルールを削除します。ファイアウォールが無効になっている間も、ルールは設定ファイルに保存されています。特定のルールを削除するには、まず ufw status numbered を使用して番号付きで一覧表示します。
sudo ufw status numbered
Status: inactive
ファイアウォールが非アクティブであるため、番号付きルールを確認するために再度有効化します。
sudo ufw enable
sudo ufw status numbered
出力は次のようになります。
Status: active
To Action From
-- ------ ----
[ 1] 80 ALLOW IN Anywhere
[ 2] 80 (v6) ALLOW IN Anywhere (v6)
[ 3] 22 ALLOW IN Anywhere
[ 4] 22 (v6) ALLOW IN Anywhere (v6)
これで、番号を指定してルールを削除できます。ここでは、最初のルール(IPv4 用)を削除します。
sudo ufw delete 1
UFW は確認を求めます。この環境では自動的に処理が続行されます。ルールが削除されたことの確認メッセージが表示されます。
Deleting:
allow 80
Proceed with operation (y|n)?
Rule deleted
最後に、UFW をデフォルトの状態に完全にリセットし、すべてのルールを削除して無効化したい場合は、ufw reset コマンドを使用できます。
sudo ufw reset
このコマンドは、クリーンなファイアウォール設定で最初からやり直す場合に非常に役立ちます。
まとめ
この実験(Lab)の完了おめでとうございます!UFW を使用して Linux システム上でファイアウォールを管理するための基礎を習得しました。
この実験(Lab)では、以下の操作を練習しました。
aptパッケージマネージャを使用した UFW のインストール。ufw allowを使用した特定のトラフィックを許可するルールの追加。ufw enableを使用したファイアウォールの有効化とアクティベーション。ufw statusを使用したファイアウォールのステータスとルールの確認。ufw disableおよびufw deleteを使用したファイアウォールの無効化とルールの削除。
これらの基本コマンドを習得することで、サーバーのセキュリティを強化するための強力なツールを手に入れることができます。ファイアウォールを適切に設定することは、システム管理およびネットワークセキュリティにおける基礎的なスキルです。



