RPC身份验证错误

Mar*_*uzz 9 authentication rpc

上周我使用RPC并且可以正常运行我的RPC服务器程序.但是,今天我尝试再次启动它,我收到此错误:

无法注册服务:RPC:身份验证错误; 为什么=客户端凭证太弱无法注册(X_PROG,X_VERS,udp)

谁能告诉我这个错误的原因是什么?

rpcinfo给了我这个:

   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
Run Code Online (Sandbox Code Playgroud)

奇怪的是,过去一周我甚至没有使用过这款电脑.是否有任何应该运行的服务?

希望你能帮助我.Grtz Stefan

小智 14

此错误链接到rpcbind,因此您应该像这样停止服务portmap:

sudo -i service portmap stop
Run Code Online (Sandbox Code Playgroud)

然后

sudo -i rpcbind -i -w
Run Code Online (Sandbox Code Playgroud)

在最后启动服务portmap:

sudo -i service portmap start
Run Code Online (Sandbox Code Playgroud)

  • 值得一提的是 -i 是“不安全”模式,因此允许任何主机对注册程序进行 RPC。(来自手册:“出于安全原因,rpcbind 通常仅接受来自环回接口的这些请求。对于使用 rpc 库的早期版本编译的程序并且不使用环回接口发出这些请求,此更改是必要的。”) (2认同)