Ubuntu Server 22.04 LTS ufw ファイアウォール

Ubuntu

ufw有効/無効

Ubuntu標準ファイルウォールufwを設定します

ufw状態確認

ufw status コマンドで状態を確認できます。

active有効
inactive無効
$ sudo ufw status
Status: inactive
$ sudo ufw status
Status: active

ufw起動/停止

自動起動の有効/無効も同時に設定されます。
sudo ufw enable
sudo ufw disable

起動

$ sudo ufw disable
Firewall stopped and disabled on system startup

ufw設定の再読み込み

$ sudo ufw reload
Firewall reloaded

SSHで接続している場合

$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

SSHで接続している場合は「コマンドにより既存の ssh 接続が中断される場合があります。操作を続行しますか? 」と聞かれるので、SSHのポート設定をしていればyを入力してEnterで起動します。
SSHのポート設定がしてなければ、先にポート設定をします。

【IPv4でTCPの22ポート開放】
新しいルールが追加された時

$ sudo ufw allow proto tcp to 0.0.0.0/0 port 22
Rules updated

updatedではなく、addedとなる場合もあります。

$ sudo ufw allow proto tcp to 0.0.0.0/0 port 22
Rule added

既に解放済みの場合はスキップされます。

$ sudo ufw allow proto tcp to 0.0.0.0/0 port 22
Skipping adding existing rule

【IPv6でTCPの22ポート開放】

$ sudo ufw allow proto tcp to ::/0 port 22
Rules updated

停止

$ sudo ufw disable
Firewall stopped and disabled on system startup

ufw ルールの追加・削除

設定の反映

ルールの追加・削除を行った後は、反映させるために再読み込みが必要です。

$ sudo ufw reload
Firewall reloaded

ルールの追加

TCP/UDP 両方のポート開放

【IPv4とIPv6】
ufw allow <ポート番号>

$ sudo ufw allow 80
Rule added
Rule added (v6)
$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
80                         ALLOW       Anywhere
80 (v6)                    ALLOW       Anywhere (v6)

【IPv4】
sudo ufw allow to 0.0.0.0/0 port <ポート番号>

$ sudo ufw allow to 0.0.0.0/0 port 80
Rule added

【IPv6】
sudo ufw allow to ::/0 port <ポート番号>

$ sudo ufw allow to ::/0 port 80
Rule added (v6)

TCP のポート開放

【IPv4とIPv6】
ufw allow <ポート番号>/tcp

$ sudo ufw allow 80/tcp
Rule added
Rule added (v6)
$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
80/tcp                     ALLOW       Anywhere
80/tcp (v6)                ALLOW       Anywhere (v6)

【IPv4】
sudo ufw allow proto tcp to 0.0.0.0/0 port <ポート番号>

$ sudo ufw allow proto tcp to 0.0.0.0/0 port 80
Rule added

【IPv6】
sudo ufw allow proto tcp to ::/0 port <ポート番号>

$ sudo ufw allow proto tcp to ::/0 port 80
Rule added (v6)

UDP のポート開放

【IPv4とIPv6】
ufw allow <ポート番号>/udp

$ sudo ufw allow 80/udp
Rule added
Rule added (v6)
$ sudo ufw status
Status: active

To                         Action      From
--                         ------      ----
80/udp                     ALLOW       Anywhere
80/udp (v6)                ALLOW       Anywhere (v6)

【IPv4】
sudo ufw allow proto udp to 0.0.0.0/0 port <ポート番号>

$ sudo ufw allow proto udp to 0.0.0.0/0 port 80
Rule added

【IPv6】
sudo ufw allow proto udp to ::/0 port <ポート番号>

$ sudo ufw allow proto udp to ::/0 port 80
Rule added (v6)

ルールの削除

ufw status numberedでルール一覧に番号が表示されます。
ufw delete <ルール番号>

3番目のルール 22/tcp (v6) を削除してみます。

$ sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 22/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 4] 80 (v6)                    ALLOW IN    Anywhere (v6)

$ sudo ufw delete 3
Deleting:
 allow 22/tcp
Proceed with operation (y|n)? y
Rule deleted (v6)

削除されたか確認します。

$ sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 80 (v6)                    ALLOW IN    Anywhere (v6)

TCPウェルノウンポート一覧(抜粋)

プロトコルポート番号
FTP(data)20
FTP(control)21
SSH22
Telnet23
SMTP25
HTTP80
POP3110
HTTPS443
SMTPS465
FTPS(data)989
FTPS(control)990
POP3S995

コメント

タイトルとURLをコピーしました