我有两台服务器:一台CentOS 5.8和一台Solaris 10.两台服务器都通过PBIS-Open连接到我的工作场所AD域。 用户将login到Linux服务器并运行一个通过RSH向solaris服务器发出命令的应用程序。 一些命令也在linux服务器上运行,所以都需要。 由于这些服务器正在被用于(专有的GE软件)应用程序,Linux服务器上的软件需要能够代表用户向solaris服务器发出rsh命令(用户只需运行一个脚本,剩下的就是自动)。
但是,rsh不适用于域用户。 它确实为本地用户工作,所以我相信我有正确的两台服务器之间必要的信任设置。 但是,我可以作为一个域用户从linux服务器rlogin到solaris服务器。 SSH的工作也(我希望我可以使用它)。
一些相关信息:
通过rlogin:
[user@linux~]$ rlogin solaris connect to address 192.168.1.2 port 543: Connection refused Trying krb4 rlogin... connect to address 192.168.1.2 port 543: Connection refused trying normal rlogin (/usr/bin/rlogin) Sun Microsystems Inc. SunOS 5.10 Generic January 2005 solaris%
通过rsh:
[user@linux ~]$ rsh solaris ls connect to address 192.168.1.2 port 544: Connection refused Trying krb4 rsh... connect to address 192.168.1.2 port 544: Connection refused trying normal rsh (/usr/bin/rsh) permission denied. [user@linux ~]$
solaris上/etc/pam.conf的相关代码片段:
# # rlogin service (explicit because of pam_rhost_auth) # rlogin auth sufficient pam_rhosts_auth.so.1 rlogin auth requisite pam_lsass.so set_default_repository rlogin auth requisite pam_lsass.so smartcard_prompt try_first_pass rlogin auth requisite pam_authtok_get.so.1 try_first_pass rlogin auth sufficient pam_lsass.so try_first_pass rlogin auth required pam_dhkeys.so.1 rlogin auth required pam_unix_cred.so.1 rlogin auth required pam_unix_auth.so.1 # # Kerberized rlogin service # krlogin auth required pam_unix_cred.so.1 krlogin auth required pam_krb5.so.1 # # rsh service (explicit because of pam_rhost_auth, # and pam_unix_auth for meaningful pam_setcred) # rsh auth sufficient pam_rhosts_auth.so.1 rsh auth required pam_unix_cred.so.1 # # Kerberized rsh service # krsh auth required pam_unix_cred.so.1 krsh auth required pam_krb5.so.1 #
我没有真正看到任何有用的系统日志,似乎与失败的login尝试直接相关。 在失败的尝试期间,我在linux上的solaris& /var/log/messages上添加了-f'd /var/adm/messages ,没有显示出来。 也许我需要做别的事情?
我明白你的痛苦与rsh 。 我们的软件在工作中使用terminal客户端通过telnet连接到数据库系统(因为它具有特定的terminal仿真器和客户端软件,所以它需要telnet)。 世界充满了这种(愚蠢)的东西。
但是,如果您的应用程序需要执行的是运行命令,那么您可以通过ssh (通过键自动login)逃脱。 因此,在您的示例中, ssh solaris ls将返回到Linux计算机上的用户,这是在Solaris计算机上在主dir上运行ls的结果。 我认为这是你正在试图用rsh来完成的。