Ubuntu 17.04: UFWでファイアウォール制御


Table of Contents

1 UFWのインストール

ufwパッケージをインストールします。

$ sudo apt install -y ufw$ sudo systemctl enable ufw$ sudo systemctl restart ufw

2 ロギング

ロギングを有効化することで/var/log/ufw.logにログが残ります。

$ sudo ufw logging on

ロギングを無効化するには以下を実行します。

$ sudo ufw logging off

3 ルールの追加

ufw allowでポートを指定してポート開放します。

$ sudo ufw allow 22/tcp

/etc/servicesのサービス名も指定できます。

$ sudo ufw allow ssh

各種アプリケーション向けのポートを記述した設定ファイルが用意されています。sambaのように複数のポートを使うサービスもあるので、こちらを利用すると良いでしょう。

$ ls /etc/ufw/applications.d/cups openssh-server samba$ cat /etc/ufw/applications.d/openssh-server[OpenSSH]title=Secure shell server, an rshd replacementdescription=OpenSSH is a free implementation of the Secure Shellprotocol.ports=22/tcp

この記事では設定ファイルを使用します。

$ sudo ufw allow OpenSSH

同様に特定のポートを拒否する場合はufw denyを使います。

$ sudo ufw deny <port>

4 ルールの表示

ufw statusで現在の許可・拒否したポートの一覧が表示されます。

$ sudo ufw statusStatus: activeTo Action From– —— —-OpenSSH ALLOW AnywhereOpenSSH (v6) ALLOW Anywhere (v6)

5 ルールの削除

ufw deleteで許可・拒否したポートを削除します。

$ sudo ufw delete allow <port>$ sudo ufw delete deny <port>

6 UFWの有効化

有効化すると許可したポート以外は拒否されるようになります。OpenSSHを許可していない場合、以降のSSHセッションは拒否されるので注意が必要です。

$ yes | sudo ufw enable

yesコマンドで以下の応答に答えています。

Command may disrupt existing ssh connections. Proceed with operation (y|n)?

7 gufwでGUIでファイアウォール制御

gufwはGUIでufwを実行します。

$ sudo apt install -y gufw

gufw起動時にユーザのパスワードを求められます。

0001_Authentication.png

gufwが起動します。すでにufwを有効にしているのでStatusはONになっています。

0002_gufw.png

Rulesのタブを表示して、画面下部の”+”を押してルールを追加します。PreconfiguredのタブのApplicationから許可するアプリケーションのルールを選択します。SAMBAの場合は137,138/udpと139,445/tcpが許可されます。Simpleのタブからだとポート番号を指定した許可が可能です。

0003_AddAFirewallRule.png

Android | Linux | SDL - Narrow Escape