这个问题似乎已经被问过很多次了,但其他答案不知何故不适用于我。
基本上我只是设置了一个新的 NFSv4 服务器,我面临着服务器和客户端之间 UID 和 GID 不匹配的经典问题。但是,在我的场景中,同步 /etc/passwd 和 /etc/group 是不可行的。请注意,我在两台机器上都有相同的用户(与此问题相反)。
因此,我正在研究 idmap:根据一些消息来源,似乎 NFSv4 发送用户名(与 NFSv3 发送 UID/GID 的行为相反),而 idmap 的作用是将这些用户名转换为服务器 UID/GID。
但是,这在我的情况下似乎不起作用(下面的设置详细信息),我认为这是非常标准的(几乎只从 repo 安装了 NFS)。
我错过了什么吗?有没有办法在不设置 LDAP 或 Kerberos 的情况下完成这项工作?
服务器设置
服务器已Ubuntu 16.04
安装和两个用户。
user1@server:~$ id user1
uid=1000(user1) gid=1000(user1) groups=1000(user1),27(sudo)
user1@server:~$ id user2
uid=1001(user2) gid=1001(user2) groups=1001(user2)
Run Code Online (Sandbox Code Playgroud)
NFS 从 repo 安装并配置为导出测试文件夹。
user1@server:~$ sudo apt-get install nfs-kernel-server
user1@server:~$ sudo cat /proc/fs/nfsd/versions
+2 +3 +4 +4.1 +4.2
user1@server:~$ ls -ld /srv/nfs/test/
drwxrwxrwx 2 nobody nogroup 4096 nov 2 …
Run Code Online (Sandbox Code Playgroud) 很长一段时间以来(现在一个多月),我在 apache 日志中看到如下所示的行:
180.76.15.138 - - [24/Jun/2015:16:13:34 -0400] "GET /manual/de/mod/module-dict.html HTTP/1.1" 403 396 "-" "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)"
180.76.15.159 - - [24/Jun/2015:16:28:34 -0400] "GET /manual/es/mod/mod_cache_disk.html HTTP/1.1" 403 399 "-" "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)"
66.249.75.86 - - [24/Jun/2015:16:18:01 -0400] "GET /manual/es/programs/apachectl.html HTTP/1.1" 403 436 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
[Wed Jun 24 16:13:34.430884 2015] [access_compat:error] [pid 5059] [client 180.76.15.138:58811] AH01797: client denied by server configuration: /usr/share/doc/apache2-doc/manual/de/mod/module-dict.html
[Wed Jun 24 16:18:01.037146 2015] [access_compat:error] [pid 2791] [client 66.249.75.86:56362] AH01797: client denied by server …
Run Code Online (Sandbox Code Playgroud)