はじめに
インターネットのセキュリティが日々脅かされる中、サーバーの防御策としてファイアウォールの設定は欠かせません。Ubuntuでは、ufw
(Uncomplicated Firewall)を使って簡単にファイアウォールを管理することができます。
この記事では、ufwを使ったファイアウォールの設定方法をわかりやすく解説します。
ファイアウォールの基本
ファイアウォールは、不正アクセスからシステムを守るために非常に重要です。特定のトラフィックをブロックまたは許可することで、システムの安全を保ちます。
ファイアウォールの設定はオペレーティングシステム(OS)で行うこともできますが、ネットワーク機器で設定することも可能です。
ファイアウォールの設定場所の選択
ファイアウォールをネットワーク機器で設定する場合、ネットワークの入口で一括してトラフィックを管理できるため、効率的です。
この設定方法を選ぶ際は、OSにおけるファイアウォール機能を無効にすることも検討すると良いでしょう。これにより、システムリソースの節約と設定の簡略化が可能になります。
ファイアウォールを設定する意味
ファイアウォールを設定することにより、外部からの不正なアクセスや攻撃を防ぐことができます。
特に公開サーバーでは、許可された通信のみを通過させることが重要です。ネットワーク機器にファイアウォールを設定することで、全体のネットワークセキュリティを強化し、個々のシステムに対する圧力を軽減することができます。
ファイアウォールの設定基準
- WEBサーバーの場合: プロトコル(HTTPやHTTPSなど)に基づいて通信を許可する設定が一般的です。
- 社内サーバーの場合: 通信する相手が限定されている場合は、特定のIPアドレスからのアクセスのみを許可する設定が効果的です。
ufwを使ったファイアウォールの設定手順
設定はrootユーザーで行ってください
ufwを有効にする:
ufw enable
このコマンドは、ufwを有効化し、システム起動時に自動でファイアウォールが起動するように設定します。無効にしたい場合は、enableをdisableにするとよいです。
ufwの有効を確認する:
systemctl status ufw ● ufw.service - Uncomplicated firewall Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enabled) Active: active (exited) since Tue 2024-04-30 09:33:42 UTC; 1 day 2h ago Docs: man:ufw(8) Main PID: 1122 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 4666) Memory: 0B CPU: 0 CGroup: /system.slice/ufw.service
systemctl status ufwを実行することで確認できます。Active: activeであればufwが有効化されています
設定の追加:
ufw allow [プロトコルorポート番号] ufw allow from [IPアドレス] ufw allow from [IPアドレス] to any port [ポート番号]
1つ目はプロトコルレベルの許可方法です。例えば、HTTP通信を許可するには、ufw allow http
または sudo ufw allow 80
と入力します。
2つ目はIPアドレスレベルの許可方法です。指定されたIPアドレスからのすべてのトラフィックを許可します。特定のポートに限定する場合は、以下のように指定します。
3つ目はプロトコルとIPアドレスのかけ合わせです。例えば、特定のIPアドレスからのSSH(ポート22)へのアクセスのみを許可する場合は、ufw allow from 192.168.1.1 to any port 22
となります。
設定の削除:
ufw delete allow [プロトコルorポート番号] ufw delete allow from [IPアドレス] ufw delete allow from [IPアドレス] to any port [ポート番号]
これにより、既に設定されたルールを削除することができます。
設定の確認:
ufw status verbose
このコマンドで現在のufwの設定状態とルールが詳細に表示されます。
まとめ
ufwはその名の通り”Uncomplicated Firewall”であり、Ubuntu上でファイアウォールを簡単に設定・管理することができます。適切な設定を施すことで、サーバーのセキュリティを強化し、安全なネットワーク環境を維持することが可能です。サーバーの用途に合わせて適切なルールを設定し、常に最新のセキュリティ対策を心掛けましょう。