Question : a problem with rcmd and rexec  routines

My linux application need a way of starting its remote server on the same platform.
rcmd and rexec are for me the answer to the need, but
then a problem arises.

For the rcmd I'm providing the necessary arguments
perfectly :
   For a try on single machine using a looping TCP
   connection (i.e to 127.0.0.1 with localhost as the
   hostname).  
   
    char **ahost;
    *host=(char *)malloc(30);
    strcpy(*host,"localhost");
    rcmd(**ahost,514,"root","spy","mkdir new",0)
   
The execution of this compiled version of these codes
give as error message: Permission Dinied.

showing that The authentication failed.

for the case of rexec I try with a similar demo with
port number 512 but this
time the error message is
-> :localhost.localdomain: connection refused. (which appears after a long waiting )

My question is :
--------------
  Is there some special configurations
practices needed by the server (rshd and rexecd)of these two routines.
Or is there any special way to use this two routines? If
yes can u please tell me the minimum necessary
requirements that must checked before having a successful
usage of this two routines.
steps
 







 

  ahost,rport,locuser,ruser



Answer : a problem with rcmd and rexec  routines

1. Forget about rcmd, rsh, rexec, rlogin, and even telnet. use ssh instead. Any decent Linux or UNIX distribution has it. You will have to use

system("ssh ruser@host remote command");

This normally requires you to enter a password. To avoid it generate with ssh-keygen a keypair, and install the public key on the remote machine and the private key on the machine starting ssh. See the ssh documentation for more details.

2. If you still insist on using the horribly insecure rcmd/rexec, make sure that rexec is enabled on the remote machine in /etc/inetd.conf, and is not filtered by the firewall.
3. Applications that start their servers on remote machines are a very bad habit.

----
Radu-Adrian Feurdean
Brainbench Linux MVP
Random Solutions  
 
programming4us programming4us