Linux/Unix ベースのオペレーティング システム (Raspberry Pi の場合の Raspbian OS など) では、多くのファイアウォール ソリューションを利用できます。これらのファイアウォール ソリューションは、さまざまなソースからのパケットをフィルタリングし、正当なパケットのみがシステムに入るのを許可するために、その下に IP テーブルを持っています。 IP テーブルはデフォルトで Raspberry Pi にインストールされていますが、セットアップされていません。デフォルトの IP テーブルを設定するのは少し面倒です。そのため、ufw のセットアップと使用が非常に簡単な代替ツールである Uncomplicited Fire Wall (UFW) を使用します。
以下に ufw コマンドの例をいくつか示します。
ufw コマンドの例
1. ufw を有効にします:
# ufw enable
2. ufw を無効にします:
# ufw disable
3. ufw ルールとその番号を表示:
# ufw status numbered
4. サービスを識別するコメントを使用して、このホストのポート 5432 で着信トラフィックを許可します。
# ufw allow 5432 comment "Service"
5. ポート 22 で、192.168.0.4 からこのホストの任意のアドレスへの TCP トラフィックのみを許可します:
# ufw allow proto tcp from 192.168.0.4 to any port 22
6. このホストのポート 80 でトラフィックを拒否します:
7. 範囲 8412:8500 のポートへのすべての UDP トラフィックを拒否します:
# ufw deny proto udp from any to any port 8412:8500
8. 特定のルールを削除します。ルール番号は `ufw status numbered` コマンドから取得できます:
# ufw delete rule_number
9. UFW のステータスを確認します:
# ufw status
10. SSH を許可する新しいルールを追加します。
# ufw allow ssh
11. または、ポート番号を使用して特定のポートを開くこともできます:
# ufw allow 22
12. HTTP (ポート 80) 経由の TCP トラフィックのみを許可する:
# ufw allow http/tcp
13.着信 FTP トラフィックを拒否する:
# ufw deny ftp
14. ファイアウォールを開始する前に、追加されたすべてのルールを確認してください:
# ufw show added
15. 追加されたルールの番号付きリストを取得します:
# ufw status numbered
16. ポート範囲を指定して、範囲内のすべてのポートを許可することもできます:
# ufw allow 1050:5000/tcp
17. 特定の IP アドレスのすべてのポートを開きたい場合は、次のコマンドを使用します:
# ufw allow from 10.0.2.100
18 または、次のようにサブネット全体を許可することもできます:
# ufw allow from 10.0.2.0/24
19. 特定の IP アドレスに対して特定のポートを許可または拒否することもできます:
# ufw allow from 10.0.2.100 to any port 2222 # ufw deny from 10.0.2.100 to any port 5223
20. 前述のルールでプロトコルを指定するには、次のコマンドを使用します:
# ufw deny from 10.0.2.100 proto tcp to any port 5223
21. ルールの削除:
# ufw delete allow ftp
22.番号を指定してルールを削除します:
# ufw status numbered # ufw delete 2
23. 特定の番号に新しいルールを追加します:
# ufw insert 1 allow 5222/tcp # Inserts a rule at number 1
24. 送信 FTP 接続を拒否する場合は、次のコマンドを使用できます:
# ufw reject out ftp
25. UFW はアプリケーション プロファイルもサポートします。すべてのアプリケーション プロファイルを表示するには、次のコマンドを使用します:
# ufw app list
26. 次のコマンドを使用して、アプリ プロファイルに関する詳細情報を取得します。
# ufw app info OpenSSH
27. 次のようにアプリケーション プロファイルを許可します。
# ufw allow OpenSSH
28. 次のコマンドを使用して、ufw ログ レベルを [off|low|medium|high|full] に設定します。
# ufw logging medium
29. show パラメータを使用してファイアウォール レポートを表示します。
# ufw show added # list of rules added # ufw show raw # show complete firewall
30 ufw をデフォルト状態にリセットします (すべてのルールは UFW によってバックアップされます):
# ufw reset