Consigna: Sistema de transferencia de ficheros pesados
Versión 1.0 (soporte LDAP) (27/nov/2007)
Versión 1.1 (adaptación a UPV/EHU) (21/oct/2008)
Versión 1.2 (cambios menores) (3/feb/2015)
------------------------------------------------------

Lea y siga estas instrucciones para conseguir que el sistema de consigna
funcione.

0. Descripción del árbol de directorios de consigna

 Los directorios que presenta consigna pueden contener diversos ficheros
 y conviene conocer la utilidad de cada ubicación.

  "db/"
	En él se guardará la base de datos de ficheros en formato
	Berkeley DB 1.x . Esta BBDD puede ser consultada con el script que hay 
	en el directorio raíz (dump_db.php) o modificada (deletefile.php).
  "files/"
  	Es el directorio en el que se copiarán los ficheros subidos a
	consigna. Se puede configurar cualquier otra ruta (es
	configurable, véanse apartados de configuración).
  "public_html/"
  	Contiene los ficheros que deben ser accesibles por el servidor
	web. El resto de ficheros no se recomienda que sean accesibles.
  "logs/"
  	Almacena registros (logs) de actividades.
  "scripts/"
	Scripts para manipular consigna:
	- garbagecollector.php: script encargado de la limpieza periodica
	- dumpdb.php: script para volcar el contenido de la BD
	- deletefile.php: script para borrar un fichero determinado de consigna.
  "lock/"
    Directorio utilizado por garbage-collector 

1. Configurar rutas

 Las rutas a los ficheros de la aplicación deben ser configuradas en el
 fichero public_html/config/conf.php. 

 Concretamente, las opciones relativas a rutas son las siguientes:
 	
	* $GLOBALS["home_dir"] : Ruta al directorio de ficheros de
	  consigna. El usuario bajo el que corre el servidor web debe
	  tener permisos de escritura y lectura.
	  
	  Se puede usar el subdirectorio 'files/' dentro de la ruta de
	  consigna, y es aconsejable que este directorio no sea
	  accesible directamente desde una URL.

	  La ruta debe escribirse sin barra ('/') al final.

	* $GLOBALS["subredes"] : array con las subredes permitidas para descargar 
	  cualquier fichero.

	* $GLOBALS["dbfile"] : Ruta al fichero de base de datos. Debe
	  tener permisos de lectura y escritura para el usuario del
	  servidor web.

	* $GLOBALS["logfile"] : Ruta al fichero de registros. Debe tener
	  permisos de lectura y escritura para el usuario del servidor
	  web.

	* $GLOBALS["urlnossl"] : Url del script de consiga cuando no se
	  accede por SSL. 
	* $GLOBALS["urlssl"] :	Url del script de consigna cuando se 
	  accede por SSL (solo cuando se validado contra LDAP).

2. Configurar tamaño máximo ocupado por los ficheros de consigna

 La opción $GLOBALS["quota"] dentro del fichero conf.php permite
 establecer el tamaño máximo _en bytes_ que usará consigna para todos
 sus ficheros.

3. Borrado de ficheros cada cierto tiempo

 Es recomendable que los ficheros con cierta antigüedad vayan siendo
 borrados. Esta tarea se puede automatizar con el script
 'garbage-collector.php' que se encuentra en el directorio raíz de consigna.

 La configuración de este script se hace a través del fichero general
 de configuración. La única opción de configuración específica para este
 script es $[GLOBALS]["dias"] que indica el número de días que permanecerán
 en consigna los ficheros.

 Luego bastará con configurar una entrada en crontab que ejecute
 periódicamente este script:

   # Borrado de ficheros  a los 5 minutos de cada hora
   05 * * * *   /ruta-script-php  /ruta_a_consigna/scripts/garbage-collector.php

4. Autenticación mediante LDAP

 tfconsigna tiene la opción de autenticar contra LDAP. Para ello, basta con
 activar la opción $GLOBALS['usarldap'] en el fichero conf.php.

 Una vez activa, y configuradas las opciones relativas a LDAP, los usuarios
 que se autentiquen (arriba a la derecha) podrán descargar todos los
 ficheros, y cualquier fichero que envíen a la consigna podrá ser descargado
 desde todas las IPs.
