web-dev-qa-db-ja.com

rootは、NFSを介して共有されているユーザーのホームフォルダーにアクセスできません

NFS共有をエクスポートするローカルサーバーがあり、ネットワーク内のLinuxホームフォルダーの親ディレクトリとして使用されます。ユーザーはLDAP(同じサーバー上で実行)を介して認証します。

認証は正常に機能し、共有上のホームフォルダーは、ユーザーがクライアントマシンにログインした後も適切に機能します。

ただし、1つの問題があります。それは、クライアントのrootユーザーがユーザーフォルダーにアクセスできないことです。 rootはユーザーのフォルダーに書き込めないため、Sudo apt-getのような単純なものでもエラーが発生するため、これは問題です。

問題は、NFSサーバーのホームフォルダーのアクセス許可が0700であるため、ユーザー自身だけがアクセスできることだと思いました。そのため、この権限を0770に変更しました。また、サーバー上のユーザーフォルダーのグループ所有権を0、つまりルートに設定しました。 0はクライアントマシン上のrootのグループIDでもあるため、これは機能するはずだと思いました。

残念ながら、それでも問題は解決しませんでしたが、rootはまだユーザーのフォルダーにアクセスできません。

root@Mule:/home/users# ll
total 28
drwxr-xr-x  7 team      team  4096 Aug 20 14:18 ./
drwxr-xr-x  3 root      root  4096 Oct 29 10:43 ../
drwxrwx--- 30 mfb       root  4096 Jan 30 17:49 mfb/
root@Mule:/home/users# 
root@Mule:/home/users# cd mfb
bash: cd: mfb: Permission denied
root@Mule:/home/users# 
root@Mule:/home/users# ll mfb
ls: cannot open directory mfb: Permission denied
root@Mule:/home/users# 
root@Mule:/home/users# whoami
root
root@Mule:/home/users# 
root@Mule:/home/users# mount | grep users
bison:/media/profiles on /home/users type nfs (rw,hard,intr,addr=192.168.0.2)
root@Mule:/home/users# 

私はここでアイデアがありません。 rootがクライアントのユーザーホームフォルダ(この例ではmfb)にアクセスできるようにする方法についての提案はありますか?

2
Team AIGD

exportsのマニュアルページから:

多くの場合、NFSサーバー上のファイルにアクセスするときに、クライアントマシンのrootユーザーもrootとして扱われることは望ましくありません。この目的のために、uid 0は通常、別のID、いわゆる匿名または誰もいないuidにマップされます。この操作モード(「ルートスカッシング」と呼ばれる)はデフォルトであり、no_root_squashでオフにすることができます。

3
sciurus

nFSマウントがどのようにエクスポートされているかを確認する必要があります。 「root_squash」が有効になっている可能性があります。

ドキュメントから:root_squash —リモートで接続されたrootユーザーがroot権限を持つことを防ぎ、ユーザーnfsnobodyのユーザーIDを割り当てます。

no_root_squashオプションは、ルートスカッシングをオフにします

詳細はこちら: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-nfs-server-config-exports.html

1
Paul

エクスポートでno_root_squashを設定する必要があります。それ以外の場合、rootユーザーによるアクセスは匿名ユーザー(通常は誰も)にマップされます。

0
Michael Hampton