in reply to Change UID of executing POE TCP server

You can drop privilidges by assigning to $<, $>, $( and $), which stand for the UID, EUID, GID and EGID of the program. You could also use POSIX::setuid and POSIX::setgid.

You may want to check out the perlsec and perlvar manual pages, the POSIX module, Stevens' Advanced Programming in the UNIX environment, and the relevant manuals on your system.

Abigail

Replies are listed 'Best First'.
Re: Re: Change UID of executing POE TCP server
by narse (Pilgrim) on Jun 25, 2003 at 02:19 UTC
    Thanks both, I'll look into doing this. (forgot to login before i posted)
      Or you could just use a higher port like say... 8080 or was it 8008, and that way you wouldn't even need to launch your server task as root. Any one here remember what port EOTL mud used? My fav back in the day.

        To complement that, run a port-forwarder on port 23 from tcpserver or inetd. netcat is particularly good for this sort of thing.

        The only disadvantage is that you'll lose the incoming IP address of your clients.