rab@ssc-vax.UUCP (Robert A. Birgenheier) (06/30/89)
Please excuse the cross-posting. I talked recently with someone who was having problems trying to connect from a pc to an Apollo via TCP/IP FTP. Here are the particulars: Compaq 286 logged on to a Novell LAN (Micom)-Interlan TCP/IP gateway on the server (NP600 card) remote host is Apollo (DN160?, I think) He can sucessfully Telnet to the Apollo, can FTP to Administrator's account on Apollo, but when trying to FTP to a user's account is told 'can't set to home directory' or something like that. Anyone out there with any help/suggestions? Please email or direct postings to comp.dcom.lans. I think that is the appropriate group for continued discussion. -- Robert Birgenheier uw-beaver!ssc-vax!rab Lefebvre Belebvre
GBOPOLY1@NUSVM.BITNET (fclim) (07/01/89)
> From: rab%ssc-vax%fluke.uucp@beaver.cs.washington.edu > (Robert A. Birgenheier) > Organization: Boeing Aerospace Corp., Seattle WA > Subject: PC to Apollo FTP > Message-Id: <2767@ssc-vax.UUCP> > > I talked recently with someone who was having problems trying to > connect from a pc to an Apollo via TCP/IP FTP. Here are the > particulars: > > Compaq 286 logged on to a Novell LAN > (Micom)-Interlan TCP/IP gateway on the server (NP600 card) > remote host is Apollo (DN160?, I think) > > He can sucessfully Telnet to the Apollo, can FTP to Administrator's > account on Apollo, but when trying to FTP to a user's account is told > can't set to home directory' or something like that. Anyone out there > with any help/suggestions? I'm going to open my mouth again and let all know I am a fool. I think (ie I'm *not* sure) the problem lie with the process-uid of the /etc/rc process. Ftpd is the deamon (server) that handles incoming ftp calls. If the login is successful, it will setuid(3) to the user-id you specified with the FTP user command. It will also setgid(3) to the group and chdir(2) to the home directory of that user. The group and home directory info is obtained from /etc/passwd. But, ftpd can only setuid(), setgud() and chdir() only if ftpd was run by root. ftpd is run on a demand-basis by inetd which is started by /etc/rc. If /etc/rc is run by root, then inetd and ftpd will inherit the root process-uid. (run "ps lag" and look under the UID column). /etc/rc is run by /etc/run_rc which is spoofed off by `node_data/startup.xxx. The process-uid of /etc/run_rc is %.server. To make /etc/rc have root process-uid, do % chown root /etc/rc % chmod 4755 /etc/rc I hope this works. fclim --- gbopoly1 % nusvm.bitnet @ cunyvm.cuny.edu computer centre singapore polytechnic dover road singapore 0513.