我需要能够使用 rsh(请不要因为安全性而责备我,在这个特定情况下这与安全性无关)以 root 身份登录到 RHEL 6 服务器,而无需输入密码。我的设置程序在 RHEL 5.x 中运行良好,但在 RHEL 6 中不起作用。我怀疑这与 PAM 有关,但我对如何使用 PAM 不熟悉。有人能帮我吗?
/etc/pam.d/rsh
auth required pam_rhosts.so
auth required pam_nologin.so
account include common-account
password include common-password
session required pam_loginuid.so
session include common-session
/etc/pam.d/rlogin
auth required pam_nologin.so
auth [user_unknown=ignore success=ok ignore=ignore auth_err=die default=bad] pam_securetty.so
auth sufficient pam_rhosts.so
auth include common-auth
auth required pam_mail.so
account include common-account
password include common-password
session required pam_loginuid.so
session include common-session
谢谢!
答案1
当你编辑时,/etc/pam.d/rlogin
顶部会显示:
# For root login to succeed here with pam_securetty, "rlogin" must be
# listed in /etc/securetty.
添加rlogin
完毕后/etc/securetty
,远程登录无需密码。
我也发现了这个PAM 工作原理说明有用。
答案2
我可能又提起一个老问题了,但是因为我也在为这个问题而苦恼,所以我想发布一下我解决这个问题的方法。
看起来由于某种原因,RHEL6 上的 pam_rhosts.so 不允许 root,因此auth sufficient pam_rhosts.so
在该行后面/etc/pam.d/rlogin
我添加了:
auth sufficient pam_rootok.so
这可能是也可能不是“正确”的方法,但至少似乎能起到作用。
答案3
我也遇到了同样的问题。这两个命令使其正常工作:
# chkconfig rsh on
# service xinetd restart
答案4
J.Newman 的解决方案对我有用。对于其他 r 服务,例如 rsh 和 rexec,也需要对相关文件进行此更改,并结合以下条目(可能不存在或可能未设置为充分):auth adequate pam_rhosts.so