私は、1 つの目的のみを果たす Raspberry Pi を構築する予定です。
- 開いているポートは1つだけです
- 誰でもこのポートに接続できるはずです
- このポートをリッスンしているアプリケーションにはルート権限がありません
- ルーティングは行われません。つまり、このRaspberry Pi経由でアクセスできる他のPCはありません。
- アウトバウンド接続はありません。つまり、Raspberry Pi は他の PC にアクティブに接続しません。
- 他のポートが開いていないことを確認するためにポートスキャンを実行します
では、このデバイスでファイアウォールを実行する必要があるのでしょうか?
答え1
まあ、パブリック ネットワークを使用している場合は、(もちろん既存の) netfilter ファイアウォールを設定することをお勧めします。
つまり、ICMP などの他のトラフィック タイプをブロックします。さらに、ほとんどのポート/システム スキャナーは、あらゆる種類のエラー応答 (「ポートに到達できません」) などによってシステム タイプを検出するため、攻撃対象領域が確実に減少します。目標は、システムに関する情報の漏洩をできるだけ少なくすることです。
さらに、ICMP 応答 (「ping」) は、積極的にブロックしない限り返されます。これも望ましくないと思います (少なくとも私はそう思います)。
答え2
ファイアウォールの仕事はLinux上のnetfilter/iptablesによって行われます
したがって、ファイアウォールは、iptables 構成によってすべての着信 TCP 接続をドロップすることになります。(発信接続もブロックされる可能性があります。)
個人的には、このようなファイアウォール構成は作成しません。実行されているサーバー アプリケーションが 1 つだけであることがわかっている場合、ファイアウォール構成は必要ありません。
走る
netstat -ltw
TCP 接続をリッスンしているアプリケーションが 1 つだけあるかどうかを確認します。削除したいプリインストールされたサーバー アプリケーションがいくつかある可能性があります。
-l means listen
-t means tcp
-w means raw (will show the ping server)
バインド IP アドレスも確認する必要があります。同じ LAN 内のクライアントのみを受け入れ、インターネット (そうです、インターネット) からのクライアントを無視したい場合があります。