Hoy veremos los serivicos que vamos a instalar en este servidor.
– Lo típico: FTP y Finger, corriendo con inetd.
– Acceso por telnet o SSH (ver más abajo).
– DynDNS-Updater, usando mi programa (ver sección de software). Eejecutándose cada día a una determinada hora.
– Servidor WWW: thttpd.
En realidad ya había probado Apache como servidor de WWW, pero he decidido pasar a otros servidores más ligeros, que está claro que son menos potentes (y menos seguros) que el rey-de-los-servidores Apache, pero la ventaja es que el aumento de velocidad supongo que se notará en un Quadra a 25MHZ…
El servidor web que había pensado instalar primeramente era cherokee, un servidor español, más rápido que Apache y que me habían recomendado. El problema es que require POSIX threads (pthreads), que no vienen instaladas de «serie» en NetBSD/mac68k; y como quería probar algo rápido instalé thttpd, que también sabía que era muy rápido, bastante seguro y que había visto en funcionamiento en algunos servidores.
Antes de empezar a configurar el servidor, lo primero era añadir un grupo de usuarios los cuales puedan «escribir» en el directorio de webs, y además el usuario sobre el que corra el daemon httpd también pertenecerá a este group (no quería correr el servidor como «root»):
Ahora añadimos el usuario «www» que pertenecerá al grupo «www»:
radon# passwd www
Modificamos el «/etc/group» para añadir al grupo «www» aquellos usuarios que puedan escribir en el dir. de webs:
Creamos el directorio donde estarán las webs, y el «cgi-bin»:
radon# chgrp www /www
radon# chown www /www
radon# chmod 775 /www
radon# ls -dl /www
radon# mkdir /www/cgi-bin
radon# chgrp www /www/cgi-bin
radon# chown www /www/cgi-bin
radon# chmod 775 /www/cgi-bin
Ahora nos hacemos con el servidor, en mi caso la última versión era la thttpd-2.25b:
Después configuramos, compilamos e instalamos el servidor:
radon# cd thttpd-2.25b
radon# ./configure && make && make install
Después hice el shell-script que lanzará el servidor.
Las opciones que he usado son:
/usr/local/sbin/thttpd -p 80 -d /www -u www -c «cgi-bin/*» -l /home/www/logs/actual
Con un man thttpd se ven todas. Básicamente hace que escuche en el puerto 80, le dice que la web está en «/www», que lo arranque como usuario «www» (despues de hacer algunas cosas como root), y que los CGIs son todos los que hay en la carpeta cgi-bin (hay que reiniciar el servidor cuando ponemos uno nuevo); y que el log lo haga por ejemplo en /home/www/logs/actual.
Ese documento lo guardo en:
En el mismo directorio también he hecho un daemonwatcher.sh que contiene lo siguiente:
pgrep thttpd > /dev/null 2> /dev/null
if [ «$?» = «1» ]
then
echo «thttpd is not active at `date`. Starting…» >> /root/soft/thttpd/LOG
/root/soft/thttpd/thttpd.sh
else
echo «thttpd is active at `date`» >> /root/soft/thttpd/LOG
fi
Eso se ejecuta con «cron» cada hora. Más abajo pondré mi archivo crontab.
Very nice! I’m putting you at my favourits.
very informative site. good job.
hey! i liked your site very much!