LoginSignup
0
2

More than 1 year has passed since last update.

Linuxのファイヤーウォールについて

Posted at

環境

Ubuntu20.4

内容

Linuxでファイヤーウォールを導入する場合、現在では、firewalldを利用する場合が多いようです。

CentOS6までは、ファイヤーウォールツールにiptablesがプレインストールされていましたが、CentOS7からは、firewalldがプレインストールされています。CentOS7には、iptablesはプレインストールされていません。CentOS7からはfirewalldが推奨されるようになっています。つまり、iptablesは既にレガシーとなりつつあります。これから使うのであれば、firewalldを使う方がモダンということになります。CentOS7でも、iptablesを動かしたい場合は、インストールすることはできるようになってます。

Ubuntuの場合は、iptablesもfirewalldもプレインストールされていません。Ubuntuで使いたい場合は、aptを使って、共に、インストールすることができます。

Ubuntuには、代わりに、ufwというファイヤーウォールツールがプレインストールされています。ufwは、iptablesのラッパーで、iptablesの簡易版として位置づけられています。iptablesを使うには敷居が高い場合は、代わりに、ufwを使うとことができます。基本的な設定だけで運用する分には、ufwで十分だと思います。

Firewalld、iptablesですが、それぞれ、別ツールのように思われますが、Firewalldも、iptablesもNetfilterにアクセスするための管理インターフェースであります。Netfilterとは、Linuxカーネル内に存在するサブシステムのことです。Firewalld、iptablesともに、設定した内容は、Netfilterの設定ファイルに書き込まれています。

Ubuntuでufwが本当にプレインストールされているのか、確認することができます。ufwのサービスを確認して、表示されればインストールされています。下記のどちらのコマンドを使ってもOKです。

$service --status-all | grep ufw

$systemctl status ufw.service

ufwのステータスを表示するコマンドです。デフォルトでufwのサービスは起動されるようになっていますが、ufw自体の設定は行っていないため、ufwは有効になっていません。有効になっていれば、ステータスはactiveと表示されます。

$sudo ufw status
Status: inactive

ufwを使わないのであれば、サービスを無効化しておいた方がいいかと思います。少しでもメモリの負荷が軽減されるためです。

ufwサービスを無効化する

ufwサービスを停止します。

$systemctl stop ufw.service

ステータスを確認して、サービスが停止したことを確認します。

$systemctl status ufw.service

サービスが有効化になっているか無効化になっているかを確認します。現時点ではまだ有効化になっています。サービスを停止しても、サービスが有効化されていれば、次回OSを起動したときに、自動起動されることになります。

$systemctl is-enabled ufw.service
enabled

次回から、サービスが自動起動しないように、サービスを無効化します。ルート権限で実行しないと、update-rc.d: error: Permission denied と表示されます。

$sudo systemctl disable ufw.service

サービスを表示して、無効化されていればOKです。

systemctl is-enabled ufw.service
disable
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2