Diferencia entre revisiones de «SIU-Arai/arai2ejemplo»

De SIU
Saltar a: navegación, buscar
Línea 87: Línea 87:
 
<syntaxhighlight lang="apache" enclose="div">
 
<syntaxhighlight lang="apache" enclose="div">
 
<VirtualHost *:80>
 
<VirtualHost *:80>
ServerName registry.local.siu
+
  ServerName registry.local.siu
Include ../sites-available/registry.alias.conf
+
  Include ../sites-available/registry.alias.conf
 +
  ErrorLog ${APACHE_LOG_DIR}/error.log
 +
  Custom ${APACHE_LOG_DIR}/access.log combined
 
</VirtualHost>
 
</VirtualHost>
 
</syntaxhighlight>
 
</syntaxhighlight>
Línea 263: Línea 265:
 
     Include /home/usuario/siu/usuarios/instalacion/toba.conf
 
     Include /home/usuario/siu/usuarios/instalacion/toba.conf
 
     Include /home/usuario/siu/usuarios/instalacion/idp.conf
 
     Include /home/usuario/siu/usuarios/instalacion/idp.conf
 +
    ErrorLog ${APACHE_LOG_DIR}/error.log
 +
    Custom ${APACHE_LOG_DIR}/access.log combined
 
</VirtualHost>
 
</VirtualHost>
  
Línea 278: Línea 282:
 
./bin/arai-cli registry:sync
 
./bin/arai-cli registry:sync
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== HASTA ACA ==
 
  
 
== Arai-Huarpe ==
 
== Arai-Huarpe ==
Línea 285: Línea 287:
 
Es similar a las instalaciones anteriores.
 
Es similar a las instalaciones anteriores.
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
cd /usr/local/siu
 
 
git clone -b master https://hub.siu.edu.ar/siu-arai/huarpe-core.git huarpe
 
git clone -b master https://hub.siu.edu.ar/siu-arai/huarpe-core.git huarpe
 
cd huarpe
 
cd huarpe
Línea 308: Línea 309:
  
 
###### CONFIG DE SIU-HUARPE ######
 
###### CONFIG DE SIU-HUARPE ######
HUARPE_PATH=/usr/local/siu/huarpe
+
HUARPE_PATH=/home/usuario/siu/huarpe
HUARPE_URL=https://huarpe.local.siu
+
HUARPE_URL=http://huarpe.local.siu
HUARPE_URL_PORT=443
+
HUARPE_URL_PORT=80
 
HUARPE_SESSION_NAME=huarpe
 
HUARPE_SESSION_NAME=huarpe
 
HUARPE_SESSION_HANDLER="native_file"
 
HUARPE_SESSION_HANDLER="native_file"
 
#HUARPE_MEMCACHED_HOST=127.0.0.1
 
#HUARPE_MEMCACHED_HOST=127.0.0.1
 
#HUARPE_MEMCACHED_PORT=11211
 
#HUARPE_MEMCACHED_PORT=11211
HUARPE_CERT_FILE=/certs/huarpe-cli.cert.pem
 
HUARPE_KEY_FILE=/certs/huarpe-cli.key.pem
 
 
#HUARPE_TOKEN=unt0k3n-al3at0r1o-s39ur0?
 
#HUARPE_TOKEN=unt0k3n-al3at0r1o-s39ur0?
 
#HUARPE_PROXY=127.0.0.1
 
#HUARPE_PROXY=127.0.0.1
 
HUARPE_LOG_HANDLER="error_log"
 
HUARPE_LOG_HANDLER="error_log"
 
HUARPE_LOG_LEVEL="WARNING"
 
HUARPE_LOG_LEVEL="WARNING"
 +
 +
### Cuando huarpe consuma servicios rest lo va a hacer con esta configuración
 +
HUARPE_CLIENTE_AUTH=basic
 +
HUARPE_CLIENTE_USUARIO=huarpe
 +
HUARPE_CLIENTE_CLAVE=huarpe_pass
  
 
###### CONFIG BRANDING ######
 
###### CONFIG BRANDING ######
Línea 326: Línea 330:
 
HUARPE_NOMBRE_INSTITUCION="Institución"
 
HUARPE_NOMBRE_INSTITUCION="Institución"
  
###### CONFIG DE SIU-ARAI: REGISTRY ######
+
##### CONFIG ARAI-REGISTRY #####
 
ARAI_REGISTRY_URL=http://registry.local.siu/arai-registry
 
ARAI_REGISTRY_URL=http://registry.local.siu/arai-registry
 
ARAI_REGISTRY_USER=user
 
ARAI_REGISTRY_USER=user
Línea 338: Línea 342:
 
Si no sale ninguna alerta, procedemos a instalar.
 
Si no sale ninguna alerta, procedemos a instalar.
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
sudo ./bin/instalador proyecto:instalar
+
bin/instalador proyecto:instalar
 
</syntaxhighlight>
 
</syntaxhighlight>
 
En Synfony es necesario dumpear los estilos y los JS con el siguiente comando.
 
En Synfony es necesario dumpear los estilos y los JS con el siguiente comando.
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
./bin/console assetic:dump --no-debug --env=prod
+
bin/console assetic:dump --no-debug --env=prod
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Una vez instalado, modificamos los permisos de los archivos de la instalación con el comando
 
Una vez instalado, modificamos los permisos de los archivos de la instalación con el comando
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
sudo ./bin/instalador permisos:simple
+
sudo bin/instalador permisos:simple
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
=== Configuración apache ===
 
=== Configuración apache ===
Lo mismo que con Registry o Usuarios, como tengo toda la plataforma instalada en un mismo servidor, debo usar el '''ServerName huarpe.local.siu'''.
+
Archivo /etc/apache/sites-enabled/huarpe.conf
En lugar de hacer un vinculo con alias.conf como dice la documentación, usé un include dentro del tag VirtualHost. Así me quedo el archivo /etc/apache/sites-enabled/huarpe.conf
 
  
 
<syntaxhighlight lang="apache" enclose="div">
 
<syntaxhighlight lang="apache" enclose="div">
 
<VirtualHost *:80>
 
<VirtualHost *:80>
 
ServerName huarpe.local.siu
 
ServerName huarpe.local.siu
Redirect permanent / https://huarpe.local.siu:443/
+
        Include /home/usuario/siu/huarpe/app/config/alias.conf
</VirtualHost>
+
        ErrorLog ${APACHE_LOG_DIR}/error.log
 
+
        Custom ${APACHE_LOG_DIR}/access.log combined
<VirtualHost *:443>
 
 
 
ServerName huarpe.local.siu
 
SSLEngine on
 
SSLCertificateFile /certs/huarpe.local.siu.cert.pem
 
SSLCertificateKeyFile /certs/huarpe.local.siu.key.pem
 
 
 
Include /usr/local/siu/huarpe/app/config/alias.conf
 
 
 
 
</VirtualHost>
 
</VirtualHost>
 
</syntaxhighlight>
 
</syntaxhighlight>
Línea 373: Línea 367:
 
Reiniciamos apache, antes de verificar la instalación, debemos sincronizar con Registry.
 
Reiniciamos apache, antes de verificar la instalación, debemos sincronizar con Registry.
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
./bin/arai-cli registry:add --maintainer-email  jpiazza@siu.edu.ar --maintainer jpiazza http://registry.local.siu/arai-registry
+
bin/arai-cli registry:add --maintainer-email  jpiazza@siu.edu.ar --maintainer jpiazza http://registry.local.siu/arai-registry
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Luego sincronizar
 
Luego sincronizar
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
./bin/arai-cli registry:sync
+
bin/arai-cli registry:sync
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
Hay que limpiar la cache y actualizar los permisos
 
Hay que limpiar la cache y actualizar los permisos
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
./bin/console cache:clear --env=prod
+
sudo bin/console cache:clear --env=prod
sudo ./bin/instalador permisos:simple  
+
sudo bin/instalador permisos:simple -n
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Línea 392: Línea 386:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Para verificar que la instalación se realizo con éxito de debe ingresar en https://huarpe.local.siu/
+
Para verificar que la instalación se realizo con éxito de debe ingresar en http://huarpe.local.siu/
  
 
Si todo salio bien, tenemos instalada la plataforma ARAI lista para ser usada en nuestro servidor.
 
Si todo salio bien, tenemos instalada la plataforma ARAI lista para ser usada en nuestro servidor.

Revisión del 17:32 16 abr 2018

Siu-arai iso.png

Ejemplo paso a paso

Para este caso voy a usar una instalación de Debian Jessie

El objetivo es tener una instalación funcionando de la paltaforma SIU-Arai que luego sirva para integrar otros sistemas toba.

Lo primero que defino es en que URL va a vivir cada sistemas, en mi caso lo tengo funcionando dentro de una intranet y los DNS que quedaron así

URLs
Araí-Registry http://registry.local.siu
Araí-Usuarios http://usuarios.local.siu
Araí-Huarpe http://huarpe.local.siu

Instalación Arai-Registy

Creamos la carpeta /home/usuario/siu y no posicionamos ahí Clonamos el proyecto

git clone -b master https://hub.siu.edu.ar/siu-arai/arai-registry.git registry

Utilizamos GitFlow, la última versión estable del proyecto es apuntada por el branch master y por cada versión que se saca se crea un tag.

Dentro del directorio del proyecto encontramos el archivo "doc/INSTALACION MANUAL.md", la idea es seguir las instrucciones que encontramos en este archivo.

cd registry
composer install --no-dev

Configuramos las variables de entorno que va a usar el instalador, los valores que puse son válidos para mi instalación, deberán modificarlos según las necesidades de cada universidad.

cp templates/arai-registry.env.dist arai-registry.env
nano arai-registry.env

arai-registry.env

# config de la aplicacion
ARAI_REGISTRY_ALIAS="/arai-registry"
ARAI_REGISTRY_USER="user"
ARAI_REGISTRY_PASS="pass"

# config de la base de datos
ARAI_REGISTRY_DB_HOST="172.27.31.114"
ARAI_REGISTRY_DB_PORT="7432"
ARAI_REGISTRY_DB_DBNAME="siu_registry"
ARAI_REGISTRY_DB_USERNAME="postgres"
ARAI_REGISTRY_DB_PASSWORD="postgres"
ARAI_REGISTRY_DB_SCHEMA="registry"
ARAI_REGISTRY_DB_ENCODING="UTF8"

###### CONFIG DE LOGS ######
ARAI_REGISTRY_LOG_HANDLER="errorlog"
ARAI_REGISTRY_LOG_LEVEL="WARNING"

# config del instalador
INSTALADOR_TIMEOUT="360"

Una vez editado, verificamos que la configuración sea correcta

bin/instalador proyecto:verificar

Si no sale ninguna alerta, procedemos a instalar. Si sale la alerta de que no existe la base de datos especificada, se puede crear agregando la opción --crear-db al siguiente comando.

bin/instalador proyecto:instalar
sudo ln -s ~/registry/config/alias.conf /etc/apache2/sites-available/registry.alias.conf

Una vez instalado, modificamos los permisos de los archivos de la instalación con el comando

sudo ./bin/instalador permisos:simple

Luego configuramos Apache.

Así me quedo el archivo /etc/apache/sites-enabled/registry.conf

<VirtualHost *:80>
   ServerName registry.local.siu
   Include ../sites-available/registry.alias.conf
   ErrorLog ${APACHE_LOG_DIR}/error.log
   Custom ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Con todo esto, para verificar que todo funcione reiniciamos Apache y ejecutamos

curl --user user:pass http://registry.local.siu/arai-registry/rest/packages/1

Si la salida es:

{
    "error": 404,
    "mensaje": "404 Not Found",
    "descripcion": "El paquete solicitado no existe"
}

es que la instalación funcionó correctamente.

Con registry instalado procedemos a instalar Usuarios

Arai-Usuarios

Nos posicionamos en ~/siu y clonamos el proyecto

git clone -b master https://hub.siu.edu.ar/siu-arai/arai-usuarios.git usuarios
cd usuarios

Para instalar seguimos la documentación del archivo doc/INSTALACION_MANUAL.md

composer install --no-dev

Si no se cuenta con certificados para el IDp SAML, se pueden generar con el siguiente comando

bin/instalador instalacion:generar-certs-idp -d /home/usuario/siu/usuarios/config/certs_idp -n

Donde -d especifica el directorio donde quedarán las claves (pública y PRIVADA). Este directorio se debe agregar en las variables del Instalador llamadas ARAI_USUARIOS_IDP_KEY_FILE y ARAI_USUARIOS_IDP_CERT_FILE.

Configuramos las variables de entorno que va a usar el instalador, los valores que puse son válidos para mi instalación, deberán modificarlos según las necesidades de cada universidad. Para la configuración de LDAP se asume un servidor que ya está funcionando y configurado. Existen documentación específica sobre este tema en el archivo INSTALACION_MANUAL.md La variable TOBA_USUARIO debe contener el mismo usuarios administrado del LDAP.

cp templates/arai-usuarios.env.dist arai-usuarios.env
nano arai-usuarios.env

arai-usuarios.env.dist

###### CONFIG DEL INSTALADR ######
#INSTALADOR_TIMEOUT="360"
ENTORNO_PRODUCCION="1"

###### VARIABLES GLOBALES DEL ARCHIVO ######
ARAI_USUARIOS_DIR=/home/usuario/siu/usuarios

###### CONFIG DE TOBA ######
TOBA_URL_BASE="https://usuarios.local.siu"
#TOBA_URL_PORT="443"
TOBA_USUARIO="admin"
TOBA_PASSWORD="admin1234"
TOBA_INSTALACION_DIR="${ARAI_USUARIOS_DIR}/instalacion"
TOBA_PROYECTO_DIR="${ARAI_USUARIOS_DIR}/gestion"
TOBA_ALIAS_PROYECTO="/gestion"
TOBA_ALIAS_NUCLEO="/toba_gestion"
#TOBA_ID_DESARROLLADOR=0
#TOBA_SESSION_NAME="ARAI_SESSID"

###### CONFIG DE BASE DE DATOS DE NEGOCIO ######
PROYECTO_DB_HOST="172.27.31.114"
PROYECTO_DB_PORT="7432"
PROYECTO_DB_DBNAME="siu_usuarios"
PROYECTO_DB_USERNAME="postgres"
PROYECTO_DB_PASSWORD="postgres"
PROYECTO_DB_SCHEMA="usuarios"
PROYECTO_DB_ENCODING="LATIN1"

###### CONFIG DE BASE DE DATOS DE TOBA. #####
######## DEFINIR SI SE QUIERE UTILIZAR UNA BASE DISTINTA A LA DE NEGOCIO
#TOBA_DB_HOST="localhost"
#TOBA_DB_PORT="5432"
#TOBA_DB_DBNAME="instalador"
#TOBA_DB_USERNAME="postgres"
#TOBA_DB_PASSWORD="postgres"
#TOBA_DB_SCHEMA="public"

##### CONFIG IDM #####
ARAI_USUARIOS_URL_IDP=http://usuarios.local.siu/idp
## Deberá setearse si el sistema corre detrás de un proxy reverso
#ARAI_USUARIOS_PROXY_URL_IDP=http://url.arai-usuarios:80/idp
ARAI_USUARIOS_URL_PERFIL=http://huarpe.local.siu/perfil
ARAI_USUARIOS_URL_INSTITUCION=http://siu.edu.ar

ARAI_USUARIOS_SIGLA_INSTITUCION=SIGLA
ARAI_USUARIOS_EMAIL_SOPORTE=mail.soporte@institucion.edu.ar

##### CONFIG SEGURIDAD ####
SEGURIDAD_ALGORITMO_PASS=crypt
SEGURIDAD_LARGO_PASS=8
SEGURIDAD_INFO_PASS='El password debe tener al menos 8 caracteres, entre letras mayúsculas, minúsculas, números y símbolos, no pudiendo repetir caracteres adyacentes'
SEGURIDAD_DURACION_DIAS_PASS=120
SEGURIDAD_RECAPTCHA_SITIO=6Fd_pQwTAAAAAOEqJz6KJmkjsrXcdXrAjWQYggZf
SEGURIDAD_RECAPTCHA_CLAVE=6Fd_pQwTAAAAAOEqJz6KJmkjsrXcdXrAjWQYggZf
SEGURIDAD_INTENTOS_RECAPTCHA=3

##### CONFIG IDP #####
ARAI_USUARIOS_IDP_KEY_FILE=${ARAI_USUARIOS_DIR}/config/certs_idp/certificado_idp.crt
ARAI_USUARIOS_IDP_CERT_FILE=${ARAI_USUARIOS_DIR}/config/certs_idp/certificado_idp.key
#ARAI_USUARIOS_IDP_LOG_LEVEL='WARNING'
#ARAI_USUARIOS_IDP_LOG_HANDLER='errorlog'

##### CONFIG MAIL RECOVERY ####
MAIL_RECOVERY_SUBJECT='Recuperar contraseña SIU-Arai'
MAIL_RECOVERY_FROM='noreply@institucion.edu.ar'
MAIL_RECOVERY_REPLYTO='noreply@institucion.edu.ar'
MAIL_RECOVERY_FROMNAME='Institución'

##### CONFIG LDAP #####
ARAI_USUARIOS_LDAP_HOST=172.27.31.114
ARAI_USUARIOS_LDAP_PORT=7389
ARAI_USUARIOS_LDAP_TLS=0
ARAI_USUARIOS_LDAP_METHOD=user
ARAI_USUARIOS_LDAP_BINDUSER="cn=admin,dc=siu,dc=cin,dc=edu"
ARAI_USUARIOS_LDAP_BINDPASS=admin
ARAI_USUARIOS_LDAP_SEARCHBASE="dc=siu,dc=cin,dc=edu"

###### CONFIG ENVIO MAILS (SMTP) ######
SMTP_ENTRADA="arai-usuarios"
SMTP_HELO="mail.unx.edu.ar"
SMTP_HOST="smtp.googlemail.com"
SMTP_PORT=587
SMTP_FROM ="yo@midominio.com"
SMTP_SEGURIDAD ="ssl|tls"
SMTP_AUTH ="1"
SMTP_USUARIO ="usuario"
SMTP_CLAVE ="pass"

##### CONFIG API REST #####
REST_SERVIDOR_AUTH=basic

##### CONFIG ARAI-REGISTRY #####
ARAI_REGISTRY_URL=http://registry.local.siu/arai-registry
ARAI_REGISTRY_USER=user
ARAI_REGISTRY_PASS=pass

Una vez editado, verificamos que la configuración sea correcta

bin/instalador proyecto:verificar -n

Si no sale ninguna alerta, procedemos a instalar.

bin/instalador proyecto:instalar

Una vez instalado, modificamos los permisos de los archivos de la instalación con el comando

sudo bin/instalador permisos:simple

Cambiamos el modo mantenimiento

bin/instalador instalacion:modo-mantenimiento --sin-mantenimiento -n

Luego configuramos Apache. Archivo /etc/apache/sites-enabled/usuarios.conf

<VirtualHost *:80>
    ServerName usuarios.local.siu
    Include /home/usuario/siu/usuarios/instalacion/toba.conf
    Include /home/usuario/siu/usuarios/instalacion/idp.conf
    ErrorLog ${APACHE_LOG_DIR}/error.log
    Custom ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Reiniciamos Apache y todo debería funcionar, para verificar entramos en la URL definida para usuarios, en mi caso http://usuarios.local.siu/gestion

Con todo esto funcionando el siguiente paso es agregar Usuarios a Registry y sincronizarlos. Según esta instalación para agregar Usuarios al entorno hacemos

./bin/arai-cli registry:add --maintainer-email  jpiazza@siu.edu.ar --maintainer jpiazza http://registry.local.siu/arai-registry

y para sincronizarlo

./bin/arai-cli registry:sync

Arai-Huarpe

Es similar a las instalaciones anteriores.

git clone -b master https://hub.siu.edu.ar/siu-arai/huarpe-core.git huarpe
cd huarpe

Para instalar seguimos la documentación del archivo doc/INSTALACION_MANUAL.md

composer install --no-dev

Configuramos las variables de entorno que va a usar el instalador, los valores que puse son válidos para mi instalación, deberán modificarlos según las necesidades de cada universidad.

cp templates/huarpe.env.dist huarpe.env
nano huarpe.env

huarpe.env

###### CONFIG DEL INSTALADR ######
#INSTALADOR_TIMEOUT="360"
ENTORNO_PRODUCCION=1

###### CONFIG DE SIU-HUARPE ######
HUARPE_PATH=/home/usuario/siu/huarpe
HUARPE_URL=http://huarpe.local.siu
HUARPE_URL_PORT=80
HUARPE_SESSION_NAME=huarpe
HUARPE_SESSION_HANDLER="native_file"
#HUARPE_MEMCACHED_HOST=127.0.0.1
#HUARPE_MEMCACHED_PORT=11211
#HUARPE_TOKEN=unt0k3n-al3at0r1o-s39ur0?
#HUARPE_PROXY=127.0.0.1
HUARPE_LOG_HANDLER="error_log"
HUARPE_LOG_LEVEL="WARNING"

### Cuando huarpe consuma servicios rest lo va a hacer con esta configuración
HUARPE_CLIENTE_AUTH=basic
HUARPE_CLIENTE_USUARIO=huarpe
HUARPE_CLIENTE_CLAVE=huarpe_pass

###### CONFIG BRANDING ######
#HUARPE_PATH_LOGO="/path/al/logo.png"
HUARPE_NOMBRE_INSTITUCION="Institución"

##### CONFIG ARAI-REGISTRY #####
ARAI_REGISTRY_URL=http://registry.local.siu/arai-registry
ARAI_REGISTRY_USER=user
ARAI_REGISTRY_PASS=pass

Una vez editado, verificamos que la configuración sea correcta

./bin/instalador proyecto:verificar

Si no sale ninguna alerta, procedemos a instalar.

bin/instalador proyecto:instalar

En Synfony es necesario dumpear los estilos y los JS con el siguiente comando.

bin/console assetic:dump --no-debug --env=prod

Una vez instalado, modificamos los permisos de los archivos de la instalación con el comando

sudo bin/instalador permisos:simple

Configuración apache

Archivo /etc/apache/sites-enabled/huarpe.conf

<VirtualHost *:80>
        ServerName huarpe.local.siu
        Include /home/usuario/siu/huarpe/app/config/alias.conf
        ErrorLog ${APACHE_LOG_DIR}/error.log
        Custom ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Reiniciamos apache, antes de verificar la instalación, debemos sincronizar con Registry.

bin/arai-cli registry:add --maintainer-email  jpiazza@siu.edu.ar --maintainer jpiazza http://registry.local.siu/arai-registry

Luego sincronizar

bin/arai-cli registry:sync

Hay que limpiar la cache y actualizar los permisos

sudo bin/console cache:clear --env=prod
sudo bin/instalador permisos:simple -n

En Usuarios resincronizar para que se actualice con la nueva instalación

cd /usr/local/siu/usuarios
./bin/arai-cli registry:sync

Para verificar que la instalación se realizo con éxito de debe ingresar en http://huarpe.local.siu/

Si todo salio bien, tenemos instalada la plataforma ARAI lista para ser usada en nuestro servidor.