編集部からのお知らせ
New! 記事まとめ「ISMAP-LIU」
話題の記事まとめ「通信障害と社会リスク」

Linuxのファイアウォールを「Uncomplicated Firewall」で簡単設定--「GUFW」でGUIも利用

Jack Wallen (Special to ZDNet.com) 翻訳校正: 編集部

2022-06-09 07:45

 筆者が1997年に「Linux」を使い始めたとき、組み込みのファイアウォールを使いこなすことは、誰でもできることではなかった。実際に、それはかなり複雑な作業だった。1998年頃から、システムのセキュリティを管理したいのであれば、iptables(「Netfilter」パケットフィルタリングシステムを操作するための一連のコマンド)を習得することが必須になった。

 例えば、すべての着信セキュアシェル(SSH)トラフィックを許可する場合は、以下のようなコマンドを実行する。

sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

 Linux OSをマスターするだけでなく、複雑なセキュリティシステムの管理に関する詳細も学習する時間があるのなら、それでも全く問題はない。公平を期すために言っておくと、筆者は実際に時間をかけてそれらのことを習得し、最終的にiptablesを使用して、システムのセキュリティを管理できるようになった。

 しかし、忙しくなればなるほど、iptablesを使いこなすのに必要な習熟度を維持するのが難しくなっていった。時間が経つにつれて、さまざまなものへのアクセスが容易になり、一部のLinuxディストリビューション開発者は、より簡単なシステムが必要であることに気づき始めた。「Ubuntu」ディストリビューション(バージョン12.04辺り)で、そうしたアクセスしやすいLinuxファイアウォールの1つが登場した。そのファイアウォールには、「Uncomplicated Firewall」(複雑でないファイアウォール)という適切な名前が付けられている。

 Uncomplicated Firewall(UFW)は、iptablesのフロントエンドであり、シンプルさを重視している。iptablesと比較すると、UFWは、公園をのんびり散歩するようなものであり、誰でも扱うことが可能だ。

 本記事では、UFWの基本を紹介し、UFWによって、Linuxシステムのファイアウォールの管理がいかに簡単になるかを解説する。

 UFWについて知っておくべきことが2つある。

  • UFWはコマンドラインツールである。
  • UFWをさらに使いやすくするGUIツールが存在する。

UFWのコマンドラインの基本

 UFWのコマンドは実際には非常に単純である。ここでも、SSHを使用する例を紹介する。具体的には、ほかのシステムがSSH(ポート22でリッスンする)を使って自分のマシンにアクセスすることを許可したいとしよう。

 まず、UFWが有効になっていることを確認する必要がある。意外なことに、UFWはデフォルトで有効になっていない。ターミナルウィンドウを開いて、以下のコマンドを実行し、それを確認してみよう。

sudo ufw status

 おそらく、以下のメッセージが表示されるはずだ。

Status: inactive

 どうすればUFWを有効にできるのだろうか。以下のコマンドを実行するといい。

sudo ufw enable

 以下のような出力(「ファイアウォールは有効であり、システム起動時に有効化される」を意味する)が表示されるはずだ。

Firewall is active and enabled on system startup

 おめでとう。これでファイアウォールが有効になった。

 UFWの基本的な使用方法は、以下のような感じだ。

sudo ufw ARGUMENT SERVICE

 ARGUMENT(引数)はallow、deny、reject、limit、status、show、reset、reload、enable、disableのいずれかであり、SERVICE(サービス)はユーザーが使用したいサービス(SSHやHTTPなど)だ。

 次に、システムへのSSHトラフィックを許可する必要がある。信じられないかもしれないが、それは以下の簡単なコマンドで実行可能だ。

sudo ufw allow ssh

 以下のように、ポート番号を使用してコマンドを実行することもできる。

sudo ufw allow 22

 ポート2022でSSHを実行する場合、コマンドは以下のようになる。

sudo ufw allow 2022

 サーバーで作業していて、HTTPトラフィックの通過を許可する必要がある場合、コマンドは以下のようになる。

sudo ufw allow http

 もう少し高度な機能を見てみよう。

 UFWの美点の1つは、高度な知識がなくても、高度な機能を使用できることだ。例えば、ネットワーク上の特定のIPアドレスからのSSHトラフィックだけを許可したいとしよう。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]