エレクトロニクス

LinuxでUFWを使ったネットワークセキュリティの強化

Linuxシステムを安全に運用する上で、外部からの不正アクセスを防ぐためのファイアウォール設定は非常に重要です。UbuntuなどのディストリビューションにはUFW(Uncomplicated Firewall)という簡易的なファイアウォール管理ツールが標準搭載されており、iptablesの複雑な設定を意識せずに利用できます。本記事ではUFWを使ってネットワークセキュリティを強化する方法について、基末的な使い方から御布設定まで解説します。まずはUFWがインストールされているかを確認し、必要に応じて実操します。たとえばUbuntuの場合はsudo apt install ufwでインストールできます。次に、UFWの現在の状態を確認するためにsudo ufw statusを実行します。このコマンドで“inactive”と表示された場合は、まだ有効化されていないことを意味します。UFWを有効にするにはsudo ufw enableを実行します。これにより、標準的なポリシーが適用され、拒否ルールがないときはすべての着信が拒否されるようになります。サービスごとに許可したいポートを追加することで必要な通信だけを通すことができます。例えば、SSHサービスを許可するにsudo ufw allow sshと入力します。HTTPサーバーの場合はsudo ufw allow 80やsudo ufw allow http。最後に、UFWの設定は定期的に見直しを行うことが大切です。サービスの追加や構成変更に伴って開けるべきポートや遮断すべきトラフィックが変化するため、放置していると穴だらけの状態になりかねません。定期的にルールを確認し、不要になった例外や古い許可設定を削除することで、防御壁を最新の状態に保てます。また、複数のサーバーを管理している場合はAnsibleなどの自動化ツールを利用して設定を一元管理し、全環境で指定できます。特定のIPアドレスやサブネットに制限をかけることも可能です。たとえば、内部ネットワークからのみSSHを許可したい場合はsudo ufw allow from 192.168.1.0/24 to any port 22とします。また、不要なポートを拒否する際はsudo ufw deny 23のように指定し、Telnetなど古いプロトコルへのアクセスをブロックします。UFWはプロファイル模能を持っており、アプリケーションごとに定義されたポートの集合を簡単に適用できます。sudo ufw app listで利用可能なプロファイルを確認し、sudo ufw allow “Apache Full”のように名前で許可することもできます。さらに、UFWではログ模能を有効にすることで、ファイアウォールがどのようなパケットを導入したか確認できます。sudo ufw logging onとすると、syslogにログが記録され、トラブルシューティングに役立ちます。より厳格なセキュリティが求められる環境では、デフォルトのポリシーを変更して、送信トラフィックも制限することが可能です。sudo ufw default deny outgoingを実行すると、明示的に許可された通信以外はすべて拒否されるため、内側から外部への不要な接続を阻止できます。この場合、必要な外部サービスへのポートを通時許可する必要があるので、システムの要件を十分に理解した上で設定を行いましょう。最後に、設定内容を確認する習慣を身につけることも重要です。新しいルールを適用したらsudo ufw status numberedでルールを番号付きで確認し、不要なルールがあればsudo ufw delete 番号で削除します。UFWはシンプルでありながら柔軟な設定ができるため、小規模サーバーから個人のPCまで広い場面で活用できます

  • この記事を書いた人

たけぞう

熊谷に住みながら都内のIT企業でエンジニアをしています。ガジェットやアウトドア用品についてレビューをしていきます。 趣味はスポーツジムでトレーニングやジョギングをすることです。

-エレクトロニクス