jueves, 16 de febrero de 2012

CHerokee, autentificación digest



    Terminando con cherokee, os traigo autenticación digest. Esta autenticación es igual que la utilizada en Apache, es más, necesitamos instalar las apache2-utils.
# aptitude install apache2-utils

    Una vez tenemos instalada estas herramientas, pasamos a crear el archivo donde se encuentran los reinos, usuarios y claves de usuarios.
# mkdir /claves
# htdigest -c /claves/digest.txt cherokee juanlu
Adding password for juanlu in realm cherokee.
New password:
# chown -R www-data.www-data /claves

    Con esto ya tenemos nuestro archivo creado con un reino, usuario y una clave. Si queremos añadir otro usuario, al igual que en apache, el comando va sin la opción -c, la cual se utiliza la primera vez para crear un usuario.

    La contraseña se la aplicaremos a un virtualhost, el cual he hecho anteriormente. Así que para configurar la contraseña nos vamos a el administrador web de cherokee y nos vamos a la pestaña vServers. En esta pestaña picamos sobre el virtualhost que queramos, nos vamos a la pestaña Comportamiento y le damos a Rule Management. Esta es la ventana que manejamos para añadir el php.

 
    Ahora tenemos que seleccionar la regla por defecto e irnos a la pestaña Seguridad. En esta pestaña seleccionamos el método de autenticación, Fichero Htdigest, y el metodo, digest. También tenemos que poner donde se encuentra el fichero con la contraseña, /claves/digest.txt y el reino, cherokee. Por ultimo le damos a guardar y reiniciamos cherokee.

 

   Ahora si intentamos entrar en el virtualhost, nos pide usuario y contraseña.
 

lunes, 6 de febrero de 2012

Cherokee, ejecución de scripts PHP.


   Para ejecutar PHP en cherokee, lo primero sera instalar phpcgi, no puede ser php normal ya que cherokee es multi hilos por defecto, en verdad es una mezcla, por lo que no se puede utilizar php normal.
# apt-get install php5-cgi


   Tras esto tenemos que modificar el fichero /etc/php5/cgi/php.ini y tenemos que descomentar la linea que dice:
# cgi.fix_pathinfo=1


    Tras esto nos metemos en el virtual host que queramos y nos vamos a el apartado de Comportamiento. Una vez en este apartado le damos a “Rule Management”.


    Ahora para que nuestro sitio pueda interpretar php, tenemos que darle primero a Nuevo.

    Esto nos abrirá una ventana, donde en el lateral izquierdo tenemos varias opciones, pues nos vamos a el apartado Lenguajes y seleccionamos PHP. Tras esto le damos a Añadir.

    Y nos saldrá otra ventana a la que le daremos a crear.

    Tras esto se nos añade en el panel de la izquierda una nueva opción. En esta opción si nos vamos a la pestaña Gestor, podemos elegir que tipo de gestor queremos (FastCGI, CGI...) yo puse FastCGI, que es el mas rápido.

   Tras estos pasos le damos a Guardar y reinicio Forzado.

    A mi a lo primero me saltaba error en los permisos, así que me fui a la pestaña Seguridad y en la opción de Permitir desde, puse 0.0.0.0/0.0.0.0. Tras esto, guarde y reinicie.

 
    Para comprobar, que todo funciona bien me cree el siguiente archivo:
# cat /var/www/info.php
<?php phpinfo(); ?>

    Y aquí esta el resultado.