Ich habe seit einigen Tagen versucht, die LDAP-Authentifizierung und NFS-exportierte Home-Verzeichnisse unter CentOS 6 zum Laufen zu bringen. Ich bin an dem Punkt angelangt, dass ich mich jetzt mit dem Benutzernamen und dem Kennwort in LDAP am Clientcomputer anmelden kann. Auf dem Client werden / home und / opt in der fstab über NFS bereitgestellt. Jede Datei in / opt und / home gehört jedoch nobody:nobody
(uid: 99, gid: 99) auf dem Client.
Meine UID und GID scheinen jedoch richtig eingestellt zu sein:
-bash-4.1$ id
uid=3000(myusername) gid=3000(employees) groups=3000(employees)
Was kann ich noch überprüfen? Hier sind einige der Konfigurationsdateien auf meinem Client:
/etc/nsswitch.conf
passwd: files sss
shadow: files sss
group: files sss
hosts: files dns
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
netgroup: files sss
publickey: nisplus
automount: files ldap
aliases: files nisplus
/etc/sssd/sssd.conf
[sssd]
config_file_version = 2
services = nss, pam
domains = default
[nss]
[pam]
[domain/default]
auth_provider = ldap
ldap_id_use_start_tls = True
chpass_provider = ldap
cache_credentials = True
krb5_realm = EXAMPLE.COM
ldap_search_base = dc=mycompany,dc=com
id_provider = ldap
ldap_uri = ldaps://server.subdomain.mycompany.com
krb5_kdcip = kerberos.example.com
ldap_tls_cacertdir = /etc/openldap/cacerts
# Configure client certificate auth.
ldap_tls_cert = /etc/openldap/cacerts/client.pem
ldap_tls_key = /etc/openldap/cacerts/client.pem
ldap_tls_reqcert = demand
/ etc / fstab
/dev/mapper/vg_main-lv_root / ext4 defaults 1 1
UUID=4e43a15d-4dc0-4836-8fa6-c3445fde756c /boot ext4 defaults 1 2
/dev/mapper/vg_main-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
storage1:/nas/home /home nfs soft,intr,rsize=8192,wsize=8192
storage1:/nas/opt /opt nfs soft,intr,rsize=8192,wsize=8192
authconfig Ausgabe:
[root@test1 ~]# authconfig --test
caching is disabled
nss_files is always enabled
nss_compat is disabled
nss_db is disabled
nss_hesiod is disabled
hesiod LHS = ""
hesiod RHS = ""
nss_ldap is enabled
LDAP+TLS is enabled
LDAP server = "ldaps://server.subdomain.mycompany.com"
LDAP base DN = "dc=mycompany,dc=com"
nss_nis is disabled
NIS server = ""
NIS domain = ""
nss_nisplus is disabled
nss_winbind is disabled
SMB workgroup = ""
SMB servers = ""
SMB security = "user"
SMB realm = ""
Winbind template shell = "/bin/false"
SMB idmap uid = "16777216-33554431"
SMB idmap gid = "16777216-33554431"
nss_sss is disabled by default
nss_wins is disabled
nss_mdns4_minimal is disabled
DNS preference over NSS or WINS is disabled
pam_unix is always enabled
shadow passwords are enabled
password hashing algorithm is sha512
pam_krb5 is disabled
krb5 realm = "EXAMPLE.COM"
krb5 realm via dns is disabled
krb5 kdc = "kerberos.example.com"
krb5 kdc via dns is disabled
krb5 admin server = "kerberos.example.com"
pam_ldap is enabled
LDAP+TLS is enabled
LDAP server = "ldaps://server.subdomain.mycompany.com"
LDAP base DN = "dc=mycompany,dc=com"
LDAP schema = "rfc2307"
pam_pkcs11 is disabled
use only smartcard for login is disabled
smartcard module = ""
smartcard removal action = ""
pam_fprintd is enabled
pam_winbind is disabled
SMB workgroup = ""
SMB servers = ""
SMB security = "user"
SMB realm = ""
pam_sss is disabled by default
credential caching in SSSD is enabled
SSSD use instead of legacy services if possible is enabled
pam_cracklib is enabled (try_first_pass retry=3 type=)
pam_passwdqc is disabled ()
pam_access is disabled ()
pam_mkhomedir or pam_oddjob_mkhomedir is enabled ()
Always authorize local users is enabled ()
Authenticate system accounts against network services is disabled
Antworten:
Ein Hinweis für Google-Sucher: Wir hatten das gleiche Problem, bei dem der NFS-Mount die Benutzer-IDs nicht korrekt zuordnete, unabhängig davon, was wir getan haben.
Das Problem war, dass idmapd die falschen IDs aus der fehlerhaften Konfiguration zwischengespeichert hatte und keine Korrektur der Konfiguration sie sortieren würde.
Der Befehl für Centos, dies zu beheben, war nfsidmap -c (Cache löschen).
Hoffentlich hilft dies einem verzweifelten Sucher.
quelle
Gelöst!
Ich habe diese Zeile
/var/log/messages
auf meinem NFS-Server bemerkt, als ich versuchte, einen Export vom Remote-Client bereitzustellen:Dies veranlasste mich, die ersten Zeilen von
/etc/idmapd.conf
:Ich habe dann
Domain=subdomain.mycompany.com
unter der auskommentierten Zeile "Domain" hinzugefügt . Gespeichert, beendet und dann lief/etc/init.d/rpcidmapd restart
und/etc/init.d/nfs restart
.quelle
Ich habe einen Blog-Beitrag gefunden, der Ihr Problem beheben könnte: http://whacked.net/2006/07/26/nfsv4nfs-mapid-nobody-domain/, den ich im folgenden Forum-Beitrag gefunden habe: https: //www.centos. org / modules / newbb / viewtopic.php? topic_id = 32977
quelle
Läuft auf Ihrem NFS-Server zufällig Centos / RHEL 5?
In diesem Fall wird NFSv3 exportiert. NFSv4 ist jetzt die Standardeinstellung für Centos6 (und die neuesten Ubuntu-Varianten).
Die schnelle Lösung besteht darin, "vers = 3" in den Einhängeoptionen in / etc / fstab hinzuzufügen.
z.B
//10.0.0.1:/home / home nfs Standardeinstellungen, vers = 3, rw, noatime 0 0
quelle
Alles, was "niemandem" zugeordnet ist, klingt so, als ob all_squash aktiviert ist.
Schauen Sie sich an:
http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-nfs-server-config-exports.html
und stellen Sie sicher, dass die Datei / etc / export des NFS-Servers die UIDs nicht unbeabsichtigt unterdrückt. "no_all_squash" soll die Standardeinstellung sein, aber Sie können versuchen, es explizit festzulegen und zu sehen, was passiert.
quelle
mount storage1:/nas/opt /mnt/test
gibt mir auf dem Standalone-Client immer noch das Problem "Niemand", aber der gleiche Befehl auf dem NFS-Server funktioniert ohne Probleme. Ich wünschte, ich wüsste, ob dies ein NFS- oder SSSD / NSS-Problem ist.Die Lösung für mich besteht darin, sicherzustellen, dass der DNS-Eintrag für den lokalen Computer vorhanden ist. Hilft auch, wenn der Reverse-Lookup-Datensatz ebenfalls vorhanden ist. Infolgedessen wurde der Benutzer und die Gruppe von niemandem durch root ersetzt. Wie einfach ist das?!? PS: Denken Sie daran, den lokalen Computer neu zu starten, sobald die DNS-Einträge erstellt wurden.
quelle