Linuxにはパケット・フィルターが組み込まれているが、その設定は初心者にとっては少々厄介だ。だが、Ubuntuの Uncomplicated Firewall (UFW)を使えば、初心者でも簡単かつ安全に設定することができる。
パケット・フィルタリングを有効化/無効化するコマンドは、UFWでは、「sudo ufw enable」または「sudo ufw disable」とする。先頭にsudoコマンドが付いているのは、OSがUbuntuで、UFWコマンドをrootで実行する必要があるからだ。デフォルト・ポリシーを設定するコマンドは「sudo ufw default」で、引数はallowまたはdenyのいずれかとする。具体的には、デフォルトとしてすべての流入パケットを許容するなら、「sudo ufw default allow」とする。この場合、安全性はきわめて低くなるが、広範なサービスが利用できる。逆に、デフォルトとしてすべての流入パケットを阻止するなら、「sudo ufw default deny」とする。この場合、サービスを利用するにはそのサービスがフィルターを通れるように設定する必要がある。
パケット・フィルタリングは管理者の指示により特定のサービスを許容または拒否する機能だ。Linuxシステムの場合、設定には通常iptablesが使われるが、UFWのルールの構文はiptablesに比べてはるかに簡単で、必要な情報を与えるだけで済む。たとえば、プロトコルを許容または拒否するという最も単純な例では、次のようにプロトコル定義を指定するだけだ。
sudo ufw allow 80/tcp sudo ufw deny 21/tcp
1番目の例は、ポート80上のTCPトラフィック(通常HTTPが使用する)を許容する。2番目の例は、ポート21上のTCPトラフィック(通常FTPが使用する)を拒否する。
しかし、システム管理者でない人にとって、ポート番号とプロトコル名でルールを指定しなければならないとすれば、UFWはとても「uncomplicated(素人向き)」とは言えないだろう。そこで、名前でサービスを指定することもできるようになっている。
sudo ufw deny smtp sudo ufw allow ssh
なお、ファイル/etc/servicesに、サービスとその公式ポート番号(インターネット・プロトコルの名前と番号を管理しているIANAが割り当てた番号)の一覧がある。
