回答:
いいえ、ufwを使用してWebサーバー上の特定のページへのアクセスのみをブロックすることはできません。
ufwは、Linuxカーネルに組み込まれてiptables
いるnetfilterファイアウォールを制御するためのフロントエンドです。これは通常のファイアウォールです。これを使用して、ヘッダーに基づいてパケットをフィルタリングできます。
IPアドレスとポートはパケットのヘッダーに含まれていますが、取得されているWebドキュメントは含まれていません。代わりに、この情報は、接続がすでに確立された後、パケットの本文で送信されます。
おそらくご存じのとおり、特定のWebサイトへのアクセスをブロックすることは可能です(通常、ブロックを回避するのは非常に簡単です)。特定のページをブロックしながら、同じサーバー。しかし、あなたが尋ねたことに対処するために:ufwはこれを行いません。
を使用して、サーバー上のポートへのアクセスをブロックできますufw
。man ufw
多数の例がありますが、有効になっているとすると、次のようになります。
sudo ufw deny out to <<ip address>> port 80
私は自分のサーバーに対してこれをテストしたところ、うまくいきました。SSLにはポート443が使用されるため、ブロックも必要になる場合があることに注意してください。
これにより、このサーバーのポート80全体がブロックされることに注意してください。
サブフォルダーに基づいてフィルター処理を開始する場合(一部のパスは許可し、他のパスは許可しない)、要求をプロキシするものが必要になります。ファイアウォールはコンテンツを調べず、接続を調べます。ファイアウォールにとって、/ subfolderに対する要求は/ a-different-subfolderに対する要求と同じです。
したがって、探しているのは、トラフィックの一部を壊すことにねじ込むことができる透過プロキシです。ペアレンタルコントロールソフトウェアは、迅速なセットアップに最適です。dansguardian
確かに人気があったようなものは探検に値すると思います。詳細については、wikiを参照してください。