学校関連の仕事をするときに使う学習アカウントを作成しました。目的は、ソーシャルメディアやニュースウェブサイトなど、私の通常のアカウントの気を散らすものを取り除くことです。
知っている /etc/hosts
は、特定のドメインへのアクセスをブロックするように編集できますが、これはすべてのユーザーが対象であり、フォーカスするたびに管理者を変更するために管理者を切り替えたり切り替えたりする必要はありません。
特定のユーザーまたはグループに対してこれらのドメインをブロックする方法はありますか?
iptables
を使用して、ネットワークアクセスを制限できます。モジュールipt_owner
を使用すると、ユーザーIDでネットワークパケットを照合できます。次のようなコマンド
iptables -A OUTPUT -m owner --uid-owner mike --dst www.google.com -j DROP
ユーザーマイクがwww.google.comにアクセスすることを禁止します。
Iptablesは実際にはホスト名ではなくIPで機能するため、www.google.comのIPごとに1つずつ、いくつかのルールが作成されます。欠点は、iptablesを使用してドメイン全体を制限できないことです。制限するホスト名ごとに、そのコマンドを繰り返す必要があります。
警告:iptables
を初めて使用する場合は、苦労するかもしれません...;)