Linux用のユーザーレベルのセキュリティを備えたネットワークファイルシステム


8

サーバーとクライアント間のファイル共有を有効にしたいのですが、どちらもLinuxです。クライアントユーザーにはroot権限があるため、NFSv4のようにマシンの信頼に依存したくありません。SMB(SAMBA)以外のオプションは何ですか?OpenAFSはユーザーレベルの認証とアクセスをサポートしていますか?マウントされたWebDAV / ftp / sshfsの使用は、LANにはばかげているようです。


あなたは彼らがサーバーへのルートアクセスを持っているのか、それとも自分のクライアントマシンを持っているのですか?
wag2639 2010年

回答:


14

私は完全に理解しているとは思いません:

「クライアントユーザーはroot権限を持っているため、NFSv4のようにマシンの信頼に依存したくありません。」

クライアントユーザーがクライアントのroot権限を持ち、ホストにrootを持たせたくない場合は、「no_root_squash」オプションを使用しないでください。また、サーバーからクライアントへのリスクを軽減するために、setuidを無効にするなどのこともできます。

NFSv4でkerberosを使用するオプションもあります。このリンクを参照してください

つまり、言い換えると、NFSv4は、少しでも必要なセキュリティを提供できるかもしれません...(スケーラブルですか?)..どこでもsshfsを使用しています。それでもあなたが望むものではないかもしれませんが、私はすぐにそれをあきらめません。


たとえば、2つのプロジェクト/ joeisworkingと/ mattisworkingがあります。スカッシュルートを実行しても、彼のワークステーションのマットはジョーのマットにアクセスできます。
Konrads、2010年

2
@Konrads:Brandt氏が述べたように、ケルベロスを使用する場合はそうではありません。mattが自分のワークステーションにルートを持つ場合でも、JoeのTGTを取得することはできません。
janneb 2010年

KonradsはNFSの構成方法がわからないか、以前はネットワークの構成が不十分だったことがあると思います。NFSは非常に安全で、質問で説明されていることを正確に実行できます。NFSv4は(適切に構成されていない場合)安全なネットワークファイルシステムの1つ(ほとんどではないにしても)の1つであると私は主張します。
Chris S

3

Kerberosでは、kdcサーバーのみが認証トークンを付与します。クライアントマシン自体はホストとしてのみ認証でき(つまり、一致するnfs / client-hostname @ REALMプリンシパルにキータブを与える場合)、それはそれにnfsサーバーと通信する権利を与えるだけです。認証できるのはユーザーであり、nfsサーバーはユーザーに自分のファイルへのアクセスを許可するだけです。sec = krb5pを使用すると、サーバーはスヌーピングと変更も防止します。

rootであることは、ユーザーに不適切な特権を与えることにはなりません。彼らがより多くのファイルにアクセスする唯一の方法は、お互いのマシンをハッキングし、nfsサーバーまたはkdcをハッキングすることです。Kerberosを使用するNFSv4は、セキュリティ要件によく適合します。

セキュリティモデルの詳細は次のとおりです。

デプロイメントを見ている場合は、debian / ubuntu中心のチュートリアルをいくつか示します。LDAPを使用しない簡単なセットアップを選択しました。これらのディストリビューションにはdebconfベースの構成があり、そこにいくらかの方法があります。

私の追加:des-cbc-crc enctypeを指定する必要はありませんが、通信プロトコルがストリーム暗号化にdes-cbc-crcを使用できるように、krb5.confでallow_weak_cryptoを指定する必要があります。これは2.6.35カーネルでは不要になります。

アプライアンスのようなものを見ている場合は、FreeIPAがあります。


これは興味深いですが、これまでのところ、NFSv4にはサーバー間認証しかなく、エクスポートされたボリュームをマウントするシステムが権限を整理する責任があることを理解しました(squash_root_fsは例外です)。ドキュメントへのリンクをいくつか提供できますか?
Konrads、2010年

2

sshfsはその方法です。クライアント上:

sshfs -o idmap=user,workaround=rename user@server:/home/user/share /home/user/share

sshと同じ権限... sshを使用しているため!いいことは、sshdがインストールされ、適切に実行されていることを前提として、サーバー上で何かに触れる必要がないことです。他の提案のようなパフォーマンスはないかもしれませんが、それは非常に簡単です。


0

sambaは実際、最善の策のように聞こえます。sambaにはunix拡張機能があるため、Linuxでas cifsを使用してマウントすると、適切なunixアクセス権が表示されます。それがあなたの制約にとって最良の選択肢になると思います。それがうまくいかない場合、sshfsはピンチで使用できますが、sambaほど優れたパフォーマンスやOSへの統合がありません。


0

OpenAFSはユーザーレベルの認証とアクセスをサポートしていますか?

はい、OpenAFSはここでの要件を満たすように聞こえますが、Kerberized NFSv4もそうです。これらの環境の両方で、クライアントを「信頼」する必要はありません。アクセス制御はサーバーによって実施されます。以前のバージョンのNFSでは、クライアントを効果的に「信頼」する必要がありましたが、Kerberized NFSv4では必要ありません。OpenAFSは「信頼された」クライアントを要求したことがなく、認証とセキュリティをKerberosに依存しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.