Назад | Перейти на главную страницу

RSH между серверами не работает

У меня два сервера: один CentOS 5.8 и один Solaris 10. Оба подключены к моему рабочему домену AD через PBIS-Open. Пользователь войдет на сервер Linux и запустит приложение, которое выдает команды через RSH на сервер solaris. Некоторые команды также выполняются на сервере Linux, поэтому необходимы обе. Из-за приложения, для которого используются эти серверы (проприетарное программное обеспечение GE), программное обеспечение на сервере Linux должно иметь возможность выдавать rsh команды на сервер solaris от имени пользователя (пользователь просто запускает сценарий, а все остальное выполняется автоматически).

Однако rsh не работает для пользователей домена. Он работает для локального пользователя, поэтому я считаю, что у меня есть правильные настройки доверия между двумя серверами. Однако я могу rlogin как пользователь домена с сервера Linux на сервер 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 ~]$ 

соответствующий фрагмент из /etc/pam.conf на Solaris:

#
# 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
# 

Я не нашел ничего полезного ни в одном системном журнале, что, кажется, напрямую связано с неудачной попыткой входа в систему. Я tail -f/var/adm/messages на solaris & /var/log/messages на Linux во время неудачных попыток, и ничего не появляется. Может мне нужно заняться чем-то еще?

Я понимаю твою боль с rsh. Наше программное обеспечение на работе подключается к системе базы данных с помощью терминального клиента через telnet (и ему нужен telnet, поскольку он имеет специальный эмулятор терминала и клиентское программное обеспечение). В мире полно таких (глупых) вещей.

Однако, если все, что нужно вашему приложению, - это запускать команды, вам может сойти с рук ssh (с автоматическим входом с ключами). Итак, с вашими примерами, ssh solaris ls вернется к пользователю на машине Linux, результат выполнения ls в домашнем каталоге на машине Solaris. Я предполагаю, что это все, что вы пытаетесь достичь с помощью rsh.