Cherokee es un servidor web ligero y multiplataforma que ofrece un rendimiento rápido. Se puede instalar fácilmente en varios sistemas operativos y ofrece características como soporte para PHP, autenticación básica y digest, balanceo de carga y virtual hosting. Las pruebas de rendimiento muestran que Cherokee utiliza menos recursos que Apache para procesar grandes cantidades de peticiones.
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
Servidor Web Cherokee: rápido, ligero y multiplataforma
1. Servidor Web Cherokee
Leonardo Bernal Bueno
Antonio Madrena Lucenilla
Servicios de Red e Inet. 2º ASIR
IES Gonzalo Nazareno
2 de Diciembre de 2011
2. Introducción
● Cherokee es una alternativa a la hora de
montar un servidor web.
● Al ser multiplataforma lo podemos instalar
en la mayoría de los Sistemas Operativos
existentes y actuales.
● Compartido bajo licencia GNU/Linux.
● Rápido y funcional.
● Fácil instalación y posterior administración.
3. Situación presente
● Se encuentra en la versión 1.2.98 desde el
25 de Mayo de 2011.
● A día de hoy soporta tecnologías como
FastCGI, PHP, CGI, SSL...
● Soporta métodos de autenticación como
PAM, htdigest, htpasswd...
● También se utiliza como balanceador de
carga.
4. Infraestructura
● Cherokee lo hemos configurado en Debian
Squeeze, instalada en una máquina virtual
KVM con 512 Mb de RAM y un Core.
● La instalación de paquetes la hemos
realizado desde los repositorios de Debian.
5. Instalación en Debian Squeeze
● Para la instalación, antes tenemos que
poner el nombre FQDN de la máquina,
modificando el ficher /etc/hosts
10.0.0.200 cherokee.example.com cherokee
● Una vez corregido, instalamos el servidor y
el cliente de MySQL.
#aptitude install mysqlserver
tude in
#aptitude install mysqlclient
6. Instalación
● Una vez instalado MySQL, procedemos a la
instalación de Cherokee.
#aptitude install cherokee
● Ya tenemos nuestro servidor web instalado y
funcionando.
● Para comprobarlo accedemos al navegador
desde cualquier equipo de la red, y ponemos
en la barra de dirección la IP del servidor.
7. Administración de Cherokee
● La configuración de Cherokee se puede
hacer mediante la consola de texto o por la
interfaz gráfica.
● La forma más intuitiva es hacerlo mediante
el navegador web, ya que no es necesario
modificar ficheros de configuración.
● Los ficheros de configuración no son nada
intuitivos, y para administrarlo se debe tener
bastante idea de lo que significa cada
directiva.
8. Administración de Cherokee (II)
● Para la administración gráfica tenemos que
acceder mediante el navegador, y para ello y
desde nuestro servidor, tenemos que
ejecutar el comando siguiente y dejarlo
ejecutándose.
#cherokeeadmin b
● Una vez ejecutado lo dejamos ejecutándose
y accedemos desde un navegador de la
siguiente manera:
http://10.0.0.200:9090
9. Usuario y
password lo
proporciona el
comando
anteriormente
ejecutado
11. Virtual Hosting (consola)
● Desde consola tenemos que crear un
directorio dentro de /var/www (por ejemplo
sitio1) con un mensaje de bienvenida.
● Asignamos los permisos necesarios:
#chown R wwwdata:wwwdata sitio1
● Creamos los directorios sites-available y
sites-enable y en el primero el fichero con la
configuración deseada.
● Una vez terminado creamos un enlace a
sites-enable y reiniciamos el servicio.
12. Virtual Hosting (gráfica)
● Accedemos a la pestaña vServers y le
damos a añadir un nuevo servidor.
– Nombre: www.vserver.com
– Raiz de documentos: /var/www
– Índices de directorios: vserver/index.html
● Guardamos los cambios y reiniciamos el
servicio.
14. Autenticación con Basic
● Para éste tipo de autenticación, accedemos
en la interfaz gráfica a la pestaña vServers, y
seleccionando uno de los sitios creados
anteriormente, pulsamos en Administración
de Reglas.
● En la siguiente ventana seleccionamos la
pestaña Seguridad.
● En el menú desplegable de Mecanismos de
autenticación seleccionamos la opción “por
fichero htpasswd”.
15. Autenticación con Basic (II)
● Se nos abre una lista, la cual tenemos que
completar de la siguiente manera.
16. Autenticación con Basic (III)
● Para crear el fichero con los usuarios y
contraseñas se usa el siguiente comando:
#htpasswd c fichero.txt usuario1
● Una vez creado el fichero se ejecuta el
comando sin la opción “-c” para añadir otro
usuario.
#htpasswd fichero.txt usuario2
17. Autenticación con Digest
● Con digest hay que seleccionar la opción
htdigest.
● Tenemos que rellenar, al igual que con el
método basic, una lista de opciones.
● Para crear el archivo de los usuarios
tenemos que usar el comando htdigest.
#htdigest -c fichero.txt dominio usuario1
#htdigest fichero.txt dominio usuario2
19. Autenticación PAM
● En el mismo lugar donde se elige la
autenticación de digest y basic, tenemos la
opción PAM.
● Para que el servidor pueda reconocer los
usuarios del sistema tenemos que añadir el
fochero shadow al grupo www-data.
#adduser www-data shadow
● La configuración a seguir es la siguiente.
21. Ejecución de Scripts PHP
● Para ello tenemos que instalar el paquete
de php:
#aptitude install php5 php5cgi php5mysql
● Ahora tenemos que editar el fichero
/etc/php5/cgi/php.ini y descomentar
la línea siguiente:
cgi.fix_pathinfo=1
● Reiniciamos el servidor web cherokee
/etc/init.d/cherokee restart
22. Ejecución de Scripts PHP (II)
● A continuación entramos en la consola de
administración.
● Seleccionamos Default y entramos la
pestaña vServers y a continuación en la
pestaña comportamiento.
● Ahora damos al botón Rule Management y
ponemos el soporte de Gzip a Activado.
● Creamos un nuevo comportamiento.
● Seleccionamos Lenguajes > PHP.
23. Ejecución de Scripts PHP (III)
● Damos a añadir y después Crear.
● Tenemos que poner el NO FINAL en FINAL
pulsando sobre él.
● Permitimos Gzip.
● Reiniciamos el servicio.
25. Estudio Comparativo
● Comparación entre Cherokee - Apache
● Con ayuda del comando ab hemos hecho
peticiones a los servidores, que tienen
instalados un gestor de contenidos
wordpress.
● Ambos son equipos con las mismas
características. Una CPU de un núcleo, 512
Mb de RAM y 8 Gb de disco duro.
28. Estudio comparativo (IV)
● En las pruebas de rendimiento de memoria
hemos comprobado que Cherokee utiliza
menos recursos que Apache.
● La razón es que cherokee lo hace todo
desde un único proceso que se abre en
hebras, al contrario que apache que son
varios que se desglosan en varios
subprocesos.
29. Alternativas posibles
● Una alternativa, es Apache.
● Apache, hasta el momento es el más
utilizado, a pesar de ser más lento
resolviendo peticiones.
● Otros servidores webs son:
– Apache
– Internet Information Server (IIS)
– Tomcat (de Apache)
30. Recomendación
● Cherokee-project
● Documentación HowToForge.com
● Google
● Si ha quedado alguna duda, puedes pedir el
documento PDF donde queda más
detallado cada uno de los pasos.