![如何让非特权用户使用 rsh 进行连接?](https://linux22.com/image/128462/%E5%A6%82%E4%BD%95%E8%AE%A9%E9%9D%9E%E7%89%B9%E6%9D%83%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%20rsh%20%E8%BF%9B%E8%A1%8C%E8%BF%9E%E6%8E%A5%EF%BC%9F.png)
我有两台使用 Red Hat 7.4 的主机,HostA 和 HostB。
rsh-server 和 rsh 软件包都安装在两者中。
在两台主机上,rsh 守护程序均已激活,命令rsh,rlogin,rexec
已添加到/etc/securetty
、和/etc/hosts.equiv
处。HostA
HostB
从主机A,使用root,当我运行时rsh hostb
,无需询问密码即可成功连接。
从主机A,对于任何其他用户,给出错误:rcmd: socket: Permission denied
。
从主机B,使用root,当我运行时rsh hosta
,无需询问密码即可成功连接。
从主机B与任何其他用户成功连接,无需询问密码。
我已经尝试添加设置位 : chmod +a $(which rsh)
,但没有效果。 SELINUX 在两台主机上均被禁用。
两台主机上的防火墙均已禁用。
答案1
我解决了这个问题。
但不幸的是我不明白为什么会发生这种情况。
当我在 hostA 运行时:
# getcap /bin/rsh
他们什么也不返回。
在 hostB 他们返回:
getcap /bin/rsh
/bin/rsh = cap_net_bind_service+ep
我只是删除软件包并重新安装yum
,然后他们就获得了权限。
但为什么一开始会出现这种情况呢?第一次安装时缺少什么?诡异的。