[Zope] How to install Zope server in RedHat Linux 6.1

J Cameron Cooper jccooper@jcameroncooper.com
Tue, 06 May 2003 09:29:05 -0500


>
>
>z2 Startup exception
>Trackback (unnermost last):
>File /usr/local/zweb/Zope-2.6.1.-linux2-x86/z2.py,line
>840 in?
>SystemExit: A user was not specified to setuid to; fix
>this to start as root (see doc/SETUID>txt)
>
>I read setUID.txt file but 
>     python z2.py -u root
>     python zpasswd.py inituser 
>                             ...
>  has an error.
>
>How can I install Zope server in Red hat Linux 6.1.
>  
>
F.A.Q. (not that there's one to read, but the list archives are full of 
this very discussion.)

You cannot run Zope as root. That is such a disatrous security decision 
that Zope simply won't allow it.

But what about priveledged ports (like 80)? Well, you can start Zope as 
root to bind to a low port and will then drop to a normal user before it 
starts listening to the network.

So if you want to run on port 80, you have to tell Zope what user to 
drop into (with -u) after it is started as root. The best way to do this 
is to edit the start script (start.sh). You'll also have to do the 
various permission gymnastics specified in SETUID.txt.

The better way, however, is to start (and run) Zope as a normal user (I 
use 'zope') and if you want to be on port 80 for web-browser convenience 
use Apache and some rewrite rules to do it. The list archives are 
stuffed full of this procedure too.

Note that above I'm only talking system users, those that can get a 
shell on your machine. Zope users, and all the tools thereto, are 
completely out of this picture, having nothing to do with nothing.

          --jcc