2012-04-29 12 views
-1

NFSの場合、ファイルシステムがクライアントマシンにマウントされると、クライアントのユーザー名がアクセスの認証に使用されます(つまり、ローカルクライアントのユーザーAはファイルシステムのユーザーAとみなされます)。Unix NFSセキュリティジレンマ:all_squashマウントまたはユーザ認証の代替手段はありますか?

問題:クライアント上のローカルルートは誰でもsuとして、ファイルシステム上の誰かのファイルにアクセスできます。

ファイルシステムがすべてのユーザに対して読み取り専用になっている場合は、all_squashでマウントするためにシステムをエクスポートすると問題が解決されます。

しかし、システムを読み書き可能にしたいのですが、システムを特定のクライアントマシンにのみエクスポートしたいのですが?

この問題を解決する他の方法や代替方法はありますか?おそらく異なるファイルシステムや認証方法を使用していますか?基本的には、アクセスが許可される前に(つまり、クライアントマシンのユーザー名だけではなく)ファイルシステムの実際のユーザーとしてユーザーを真に認証する必要があります。

+0

認証のために[NFS use Kerberos](http://wiki.debian.org/NFS/Kerberos)のチケットを作成できます。 – Flexo

+0

まあ、Kerberosは依然としてrootユーザーとして信頼できるホストに基づいており、他のユーザーのTGTを盗んで自分のものとして使用することができます。信頼できるホストに基づくNFSとKerberos保護それにもかかわらず、ケルベロスはあなたをミッド・イン・イン攻撃から守ります。 – kofemann

答えて

0

各クライアントの特定のユーザー名のみを許可するように/ etc/exportsファイルを構成しないのはなぜですか?例:

/home/user1 -mapall=user1 user1.host.machine 

IPスプーフィングを停止するためにKerberosを追加できます。

+0

ありがとうジョナサン!私はそれを試してみましょう。 – user1364550

+0

しかし、それは各ユーザーのすべてのクライアントに関する知識が必要です(100人のユーザーがいて、各ユーザーに5台のマシンがある場合、/ etc/exportsには500人のクライアントがあります) – user1364550

+0

うーん、/ etc/exportsは大規模な管理を目的としています。あなたのシステムの/ etc/exportsを生成するスクリプトを得ることは可能ですか? – Jonathan

0

あなたはnfsの代わりにsshfsを使うことができます。これは不正なスプーフィングのユーザの問題を処理するはずです。

関連する問題