0

次の方法で Linux 共有スペースをセットアップしたいと考えています。1 人のユーザーが admin を呼び出して、他のすべてのユーザーのホーム ディレクトリにアクセスできるようにしたいと考えています。ユーザーA、B、C、D、Eを作成し、ホームフォルダー(および必要に応じて/ tmp /)以外の他のフォルダーを表示しないようにしたい。
他のファイルを表示できるようにしたくありません。これを使用して、ホームフォルダー内のファイルを表示/編集するだけでログインできるユーザーを作成できるようにします(またはファイルをscpでファイルに保存します)

どうすればいいですか?私の最初の考えは、グループを作成してそのグループにすべて入れることでしたが、お互いのファイルを表示できるようにしたくありません。/home/* のフォルダーは、所有者のみが読み取り、書き込み、実行できることに気付きました。

[test2@XXX home]$ pwd
/home
[test2@XXX home]$ ll
drwx------  3 test2       test2        4096 Mar  7 18:54 test2

これは十分な権限ですか?
たとえば、 /home/A/ 内のファイルは次のとおりです。

[test2@XXX~]$ pwd
/home/test2
[test2@XXX~]$ ll
total 4
drwxrwxr-x 2 test2 test2 4096 Mar  7 18:54 testdir
-rw-rw-r-- 1 test2 test2    0 Mar  7 18:54 testfile

ユーザー B はこれらのファイルに書き込めませんか? もしそうなら、ユーザー管理者がこれらすべての /home/ フォルダーを表示できるようにするために何をする必要がありますか?

4

1 に答える 1

0

まず最初に、ユーザー A、B、C、D、E のすべてのホーム ディレクトリに対して rwx 権限を持つ "Admin" ユーザーが必要です。ここでは、"Admin" ユーザーがrootではないと仮定しています。

この機能を実現するには、このリンクを参照してください。

ここで、ユーザー A、B、C、D、E のいずれにも互いのファイルを表示させたくありませんが、他のユーザーとファイルを共有するためにホーム ディレクトリ ( /home/user ) にパブリックフォルダーが存在します。他のユーザーがこのパブリック フォルダにアクセスする場合は、ワールドの実行ビットをホーム ディレクトリに設定する必要があります。

他のユーザーがホーム フォルダーにアクセスすることを許可する必要がない場合 (他の人間やWeb サーバーのwww-dataなどのユーザー)、chmod o-rwx "$HOME" (" から読み取り/書き込み/実行を削除する"デフォルトのパーミッションは 750 であるため、chmod 750 "$HOME"と同等です)。それ以外の場合は、umask 設定も変更して、新しく作成されたファイルがデフォルトでワールドの読み取り許可を取得しないようにする必要があります。

システム全体の構成については、/etc/profileを編集します。ユーザーごとの設定は~/.profileで構成できます。すべてのユーザーに同じポリシーを適用したいので、/etc/profileファイルを編集して次の行を追加します。

ウマスク 027

シェルを使用している場合を除き、これらの変更を適用するには再ログインする必要があります。その場合、シェルでumask 027を実行できます。

既存のアクセス許可を修正するには、他のアクセス許可から読み取り/書き込み/実行アクセス許可を削除する必要があります。

chmod -R o-rwx ~

~/Publicフォルダーを全員と共有する場合は、次のコマンドを実行します。

  • chmod o+x ~ -全員がディレクトリを降りることを許可します ( x )。ただし、ディレクトリの一覧は取得できません ( rは追加しないでください)。

  • ~/Public -type f -exec chmod o+r {} \; を検索します。- ~/Public内のファイルを誰でも読めるようにする

  • 検索 ~/Public -type d -exec chmod o+rx {} \; - 全員がディレクトリに降りて、その内容を一覧表示できるようにする
于 2013-03-08T06:25:14.353 に答える