一部のWebサイトへのアクセスを異なるユーザーに制限する


4

Debianベースのシステム上。スーパーユーザーとして、私はいくつかのWebサイトへのアクセスを制限する必要がありますが、ユーザーに固有のものです。たとえば、user1の場合はabc.com、user2の場合はxyz.comです。

/ etc / hostsファイルを試しました。のような行を追加する

127.0.0.1 abc.com

私が欲しいものをします。ただし、hostsファイルは1つしかないため、すべてのユーザーに適用されます。私がこれまでに学んだ限りでは、異なるユーザー用にhostsファイルを設定することは不可能です。これを行う他の方法はありますか?



回答:


1

ユーザーがローカルにログインしている場合は、iptablesを使用できます。

iptables -A OUTPUT -o EXTERNAL_IF -m owner --uid-owner USERNAME -d DESTINATION_WEB -j REJECT

ここで、

  • EXTERNAL_IFはインターネットにバインドされたインターフェースの名前です(例:eth0)
  • USERNAMEは制限付きユーザーのログインIDです
  • DESTINATION_WEBは、送信先WebサイトのDNS名またはIPアドレスです。多くのWebサイト(ブロガーなど)をホストするサイト、または複数のパブリックIPを持つサイト(Googleなど)に注意してください。

スクリプトを使って端末からEXTERNAL_IF情報を取得する方法を知っていますか。
Mustafa Orkun Acar

これを試して: ip r | grep ^default | sed 's/.* dev \([a-z0-9]*\).*/\1/'
Gheesh

-2

あなたも起動しようとすることができます このような小さな文字 ブラウザを再起動してユーザに通知するさまざまなユーザのために。それは彼らのウェブブラウザのタイトルに基づいていくつかのウェブサイトに制限します。


スーパーユーザーへようこそ - 答えは単なるリンクではなく自己完結型であることを期待しています - あなた自身のブログを考えると、あなたはあなたの答えの重要な部分を含むようにあなたの答えを編集できますか?
Journeyman Geek
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.