2012-10-28 8 views
8

Letzte Woche verwendete ich RPC und konnte mein RPC-Server-Programm problemlos ausführen. Aber heute habe ich versucht, es wieder zu starten und ich erhalte diese Störung:RPC-Authentifizierungsfehler

Cannot register service: RPC: Authentication error; why = Client credential too weak unable to register (X_PROG, X_VERS, udp)

Kann jemand mir sagen, was die Ursache dieses Fehlers sein kann?

rpcinfo gibt mir dies:

program version netid  address    service owner 
    100000 4 tcp6  ::.0.111    portmapper superuser 
    100000 3 tcp6  ::.0.111    portmapper superuser 
    100000 4 udp6  ::.0.111    portmapper superuser 
    100000 3 udp6  ::.0.111    portmapper superuser 
    100000 4 tcp  0.0.0.0.0.111   portmapper superuser 
    100000 3 tcp  0.0.0.0.0.111   portmapper superuser 
    100000 2 tcp  0.0.0.0.0.111   portmapper superuser 
    100000 4 udp  0.0.0.0.0.111   portmapper superuser 
    100000 3 udp  0.0.0.0.0.111   portmapper superuser 
    100000 2 udp  0.0.0.0.0.111   portmapper superuser 
    100000 4 local  /run/rpcbind.sock  portmapper superuser 
    100000 3 local  /run/rpcbind.sock  portmapper superuser 

Die seltsame Sache ist, dass ich nicht einmal die letzte Woche dieses Stück im Einsatz. Gibt es irgendwelche Dienste, die ausgeführt werden sollten?

Ich hoffe, Sie können mir helfen. Grtz Stefan

Antwort

13

dieser Fehler rpcbind verbunden sind, so sollten Sie Service Portmap wie folgt stoppen:

sudo -i service portmap stop 

dann

sudo -i rpcbind -i -w 

am Ende Startservice portmap:

sudo -i service portmap start 
+1

Es ist vielleicht erwähnenswert-i ist "Unsicher" -Modus und ermöglicht daher jedem Host, RPCs zu registrierten Programmen zu machen. (Aus dem Handbuch: "Normalerweise akzeptiert rpcbind diese Anfragen nur aus Sicherheitsgründen aus der Loopback-Schnittstelle. Diese Änderung ist für Programme erforderlich, die mit früheren Versionen der rpc-Bibliothek kompiliert wurden und diese Anfragen nicht über die Loopback-Schnittstelle stellen.") – eregon

3

Die Änderung unter Ubuntu12.04 persistent machen (unter der Annahme Auswirkungen auf die Sicherheit der laufenden rpcbind mit -i sind irrelevant):

echo 'OPTIONS="-w -i"' | sudo tee /etc/default/rpcbind 
sudo service portmap restart 
0

Keine der hier bisher funktionierte gut für mich auf der Debian Squeeze Wheezy Upgrade vorgestellten Lösungen.

In meinem Fall musste ich nur alle Vorkommen von "portmapper" (oder "portmap", nicht mehr sicher) in /etc/hosts.allow durch "rpcbind" ersetzen. Das war alles. (Ansonsten konnte ypbind keine Verbindung zu rpcbind über localhost herstellen.)

2

Ich weiß, dass dies ein älterer Thread ist, aber Google findet ihn unter den Top 3 Ergebnissen und die Leute entdecken immernoch den nfs Service Fehler. Selbst die RHN-Korrektur von Red Hat hat nicht funktioniert.

Ab Dezember 2013 auf einem RHEL 6.4 (x64) und gepatcht ab November 2013, war die einzige Lösung, die Berechtigungen für die Konfigurationsdateien tcp_wrapper zu ändern. Da wir die Box ziemlich stark gesichert hatten, hatten wir 640 Rechte auf /etc/hosts.allow und /etc/hosts.deny, beide im Besitz von root: root. Wir haben versucht, diesen Dateien unterschiedliche Gruppenbesitz zu geben. Nichts hat das Problem korrigiert, als nfs gestartet wurde.

Sobald wir die Dauerwellen auf "out-of-the-box" zurückgesetzt haben (644), wurde der nfs (rquotad) -Dienst wie erwartet gestartet. Oder wenn wir die hosts.allow/deny komplett aus dem Weg geschafft haben.

Was für ein Schmerz, der herauszufinden war. Die selinux-Protokolle hätten vielleicht geholfen, wenn ich früher nachgesehen hätte.

Wenn wir Selinux im Erzwingungsmodus verlassen hätten, wäre das KEIN Problem. Ich muss diese Theorie noch testen.

Viel Glück.

0

Dies passiert auch, wenn iptables verwendet wird und es UDP-Verbindungen für localhost blockiert. Ist heute hier reingekommen. Iptables gestoppt, Verbindungen begannen zu arbeiten.

Sie müssen die Regeln herausfinden, die es kaputt gemacht haben.

0

denke ich, dass es erwähnenswert ist, dass, wenn Sie sehen Fehler wie:

0-rpc-service: Could not register with portmap 

es in Beziehung gesetzt werden können, um Dateien zu hosts.allow und hosts.deny gesetzt und fehlende Berechtigungen für localhost in der Datei hosts.allow .

Ich hatte diese Art von Problem mit der Einstellung NFS mit GlusterFS. mit Registrierung Service

ALL: 127.0.0.1 : ALLOW 

und Problem mit portmap ging arbeiten und alles ist:

In meiner /etc/hosts.allow-Datei habe ich hinzugefügt.

Hinweis: mit GlusterFS erinnere mich an den glusterd Service

/etc/init.d/glusterd restart 
0

Ich erhielt einen Fehler wie so weiter rhel7 neu zu starten:

ypserv: Cannot register service: RPC: Authentication error; why = Client credential too weak 

wenn ypbind starten. Ich habe alles versucht, einschließlich der bis rpcbind oben. Am Ende als XTaran erwähnte Änderung /etc/hosts. Erlaube das Hinzufügen dieser Zeile:

rpcbind: 127.0.0.1 

arbeitete für mich.

0

Und noch eine Lösung: CentOS 7.3 Ausgabe

Neben rpcbind hatte ich auch mountd in /etc/hosts.allow zu ermöglichen:

rpcbind : ALL : allow 
mountd : ALL : allow 

Das bin ich schließlich erlaubt, nicht nur Führe rpcinfo aus, aber showmount und mount ebenfalls.