web-dev-qa-db-ja.com

ユーザーごとにマウントする

私は小さなnfsネットワークを担当しており、ログインするユーザーに応じて異なるマウントを実行するようにマシンを設定したいと思います。これは可能ですか?

たとえば、ユーザーAがログインする場合は、/ home/usersのみを表示し、ユーザーBがログインする場合は、/ home/usersと/ home/penguinsを表示します。

グループのアクセス許可を使用してこれを実行できることはわかっていますが、セキュリティを強化するために、/ home/penguinsをユーザーAのすべてのログインにマウントできない場合は興味があります。

5
felipa

libpam-mountを見てください。基本的にユーザーセッションのマウントタスクを実行します(マウントポイントフォルダーが統計化されている場合、自動マウントはマウントします)。

プロジェクトページから:

このモジュールは、多くのユーザーがログオンでき、サーバーから/ home全体を静的にマウントすることがセキュリティである(セミ)ディスクレスステーションなど、ユーザーがログイン時にマウントし、ログアウト時にアンマウントする中央ファイルサーバーを備えた環境を対象としています。リスク、または/ etc/fstabにすべての可能なボリュームをリストすることは実行可能ではありません。

通常、LDAPからロードされたマウントテーブル、またはあなたの場合はやや錆びたNISでautofsを使用することをお勧めします。ただし、権限に依存するのではなく、特定の複数のユーザー向けにマウントしないことが重要であるため、autofsは適していません(ほとんどの場合可能ですが)。

また、輸出を増やしないだけでは安全対策にはならないことを指摘したい。

1
Hannes

ログインの概念があまり明確に定義されていないため、質問はあまり明確に定義されていません。ユーザーはいつでもプロセスを開始および停止できます(例:cronから)。複数のユーザーが同時にログオンする可能性があります-その場合、どのマウントを有効にする必要がありますか?

本当に必要なのは、異なるユーザーとして実行されているプロセスが、それらのプロセスが同時に実行されている場合でも、異なるファイルシステムのマウントを確認することだと思います。

Linuxは bindfs でこれを行うことができます。

  1. 問題のユーザーにアクセスを許可せずに、すべてのファイルシステムをどこかに(ユーザーに依存せずに)マウントします
  2. bindfsを使用して、ユーザーがアクセスする場所に再マウントします(ユーザー依存)
1
reinierpost

Autofsからのautomountの使用を検討してください http://www.autofs.org/

Ubuntuでこれを設定する簡単な方法は次のとおりです。

apt-get install nfs-common autofs

追加 /home /etc/auto.homeから/etc/auto.master
追加 * nfsserver:/share/&から/etc/auto.home

0
Tuim

自動マウントは必要ありません。 fstabで関連する行を設定するだけで、問題のマウントをユーザーがマウントできるようになります(fstabのuserオプション)。次に、各ユーザーの~/.profileを編集して、そこにマウントコマンドを追加します。そうすれば、ユーザーがログインするたびに、正しいドライブがマウントされます。

自動マウントを使用する場合は、マウントが各ユーザーのホームディレクトリにマウントされるように設定できます。次に、ユーザーがログインして$ HOMEにアクセスすると、autofsはドライブ、パーティション、またはマウントしているものをマウントします。

0
terdon