Autor Tema: Portal de Publicaciones en un Diaguita en Intranet (aportes UNMdP, UNSL y UNVM)  (Leído 971 veces)

0 Usuarios y 1 Visitante están viendo este tema.

gmolinauskas

  • Toba
  • *
  • Mensajes: 69
    • Ver Perfil
  • Institución: Universidad Nacional de Quilmes
  • Nombre y apellido: Gabriel Molinauskas
  • Sistema: Toba, Mapuche, Pilaga, Diaguita
Hola,  en el comité había planteado el problema respecto a la publicación de convocatorias en el portal que trae Diaguita  cuando tenemos el sistema  en Intranet.

Un técnico de una universidad nos había planteado  tener una instancia de Diaguita con usuario postgres de sólo consulta que apunte a la base de producción y en un servidor con acceso externo.  Me parece una solución bastante coherente a pesar que hay que mantener dos instancias. 

Me habían comentado que otras universidades establecieron algunas reglas de apache para la publicación,  no creo que esa sea una solución que nos sirva ya que el servidor de  nuestra aplicación no tiene acceso a la red externa, igualmente me gustaría saber como lo configuraron.

Cualquier información que nos puedan mencionar al respecto  nos va a venir bien. 

Saludos y gracias!

Gabriel

« Última Modificación: mayo 31, 2018, 02:02:14 pm por mdeganis »

diegotait

  • Newbie
  • *
  • Mensajes: 48
    • Ver Perfil
    • Email
  • Institución: UNMDP
  • Nombre y apellido: Diego Tait
  • Sistema: SIU-Pilagá, SIU-Diaguita, ComDoc, SIU-Wichi, SIU-Datawarehouse, SIU-Comechingones
Re: Portal de Publicaciones en un Diaguita en Intranet
« Respuesta #1 : julio 05, 2017, 03:23:11 pm »
Hola Grabriel, en nuestra universidad tenemos preparado para cuando esté el OK de las autoridades la salida del portal público, incluso siendo el servidor de la red interna (ip privada). Lo que tenemos acá es un proxy reverso con NGNX. (aunque también se puede hacer con apache).

El tema es asi: Vos tenes por un lado el servidor del Diaguita, en la intranet, con una ip privada, y por otro lado un servidor con IP pública donde le configuras un proxy reverso (recibe las peticiones desde la nube, y se las reenvia a la IP interna, y hace lo inverso para las respuestas desde el server interno).

Además tenemos algunas reglas adicionales que si alguien que está viendo el portal, e intenta acceder a la aplicación (por ejemplo accediendo sin parametros al 'aplicacion.php') directamente lo echa para otro lado.

Contá conmigo para lo que necesites de ayuda.

Saludos

Diego

gmolinauskas

  • Toba
  • *
  • Mensajes: 69
    • Ver Perfil
  • Institución: Universidad Nacional de Quilmes
  • Nombre y apellido: Gabriel Molinauskas
  • Sistema: Toba, Mapuche, Pilaga, Diaguita
Re: Portal de Publicaciones en un Diaguita en Intranet
« Respuesta #2 : julio 05, 2017, 03:34:48 pm »
Hola Diego!  esta muy buena esa solución,   seguramente te voy estar consultando algún que otro detalle.   Saludos y gracias!

Gabriel
« Última Modificación: julio 06, 2017, 10:01:59 am por mdeganis »

Carlos Ruiz

  • General
  • *
  • Mensajes: 11
    • Ver Perfil
  • Institución: UNSL
  • Nombre y apellido: Carlos Ruiz
  • Sistema: Pilaga - Diaguita - Wichi - O3 - Arai
  • Teléfono laboral: 0266-4520300 int. 5121
  • Utilizo algun sistéma del SIU: Sí
Re: Portal de Publicaciones en un Diaguita en Intranet
« Respuesta #3 : julio 06, 2017, 09:01:45 am »
Hola buenos días, en nuestra universidad tenemos actualmente 2 instancias de Diaguita corriendo, la que tiene acceso desde el exterior se conecta con un usuario de postgres de solo lectura y la otra apunta a producción.

Diego como son las reglas adicionales que tiene para hacer los que planteas de: ...si alguien que está viendo el portal, e intenta acceder a la aplicación (por ejemplo accediendo sin parametros al 'aplicacion.php') directamente lo echa para otro lado.

Nosotros tambien usamos un proxy reverso nginx.

Saludos.

« Última Modificación: julio 06, 2017, 10:02:07 am por mdeganis »

diegotait

  • Newbie
  • *
  • Mensajes: 48
    • Ver Perfil
    • Email
  • Institución: UNMDP
  • Nombre y apellido: Diego Tait
  • Sistema: SIU-Pilagá, SIU-Diaguita, ComDoc, SIU-Wichi, SIU-Datawarehouse, SIU-Comechingones
Hola Carlos, para poder solucionar ese inconveniente, hice lo siguiente:

- NO HICE UN proxy_pass DEL RAIZ DE LA APLICACIÓN diaguita. Eso derivaría TODO el trafico a la aplicación, que es justamente lo que permite abrir la pantalla de logueo al sistema... En lugar de hacer eso, hice los proxy_pass para cada subdirectorio, es decir un proxy_pass para diaguita/skins, otro para diaguita/css, etc...

- Para la aplicación en sí, hice una definición directamente al archivo "aplicacion.php" (y no al directorio) donde me aseguro que las URI TENGAN el código numérico (ID) de las únicas 2 operaciones que consume: 110000003 y 100000024. Si no tiene alguna de esas dos IDs, lo echo para otro lado.

(se complica un poco los condicionales IF cuando son mas de uno como en este caso, pero le encontré la vuelta... También hay algunas definiciones mas en la configuración, pero lo principal es esto que te comenté)

Adjunto al mensaje ,el archivo de configuración (detallado con los cambios que tenés que hacer para implementarlo).

Saludos!

Carlos Ruiz

  • General
  • *
  • Mensajes: 11
    • Ver Perfil
  • Institución: UNSL
  • Nombre y apellido: Carlos Ruiz
  • Sistema: Pilaga - Diaguita - Wichi - O3 - Arai
  • Teléfono laboral: 0266-4520300 int. 5121
  • Utilizo algun sistéma del SIU: Sí
Hola Diego.

Muchas gracias por el ejemplo que subiste, te comento que lo modifique algunas cosas que tenemos distinto en el nginx  y actualmente esta en producción.
Cambios necesarios para la descarga de los documentos asociados.:

  • Agregue los códigos numérico (ID) 100000039 y 29000009
  • Agregar
    location /diaguita/temp {
                    proxy_set_header  Host  $host;
                    proxy_set_header  X-Real-IP  $remote_addr;
                    proxy_set_header  X-Forwarded-For  $remote_addr;
                    proxy_pass http://XX.XX.XX.XX:80/diaguita/temp;  #IP Y PUERTO QUE CORRESPONDA
                    }

Saludos.
« Última Modificación: agosto 02, 2017, 12:02:28 pm por Carlos Ruiz »

jmmoreira

  • Moderador Global
  • *****
  • Mensajes: 444
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Juan Manuel Moreira
  • Sistema: Diaguita
  • Teléfono laboral: 011 5217-3101
Buenas Chicos!!!
Muchas gracias por el Aporte Gaby, Diego y Carlos!!!!
Saludos!!!.
Juan Manuel.

mventura

  • Newbie
  • *
  • Mensajes: 18
    • Ver Perfil
  • Institución: Universidad Nacional de Villa María
  • Nombre y apellido: Matías Gabriel Ventura
  • Sistema: Guaraní; Diaguita
Saludos, Comunidad. En la UNVM usamos Apache como proxy con la siguiente configuración:

# CONFIG PARA Diaguita 2.5.0
# Para usar nuesta config hay que habilitar mod_proxy y mod_macro
# sudo a2enmod proxy
# sudo a2enmod macro

<Macro MacroDiaguita ${HostExt} ${ipInterna} ${DirDiaguita} ${DirToba}>
<VirtualHost *:80>
    ProxyPreserveHost On
    ProxyRequests Off
    RewriteEngine  on
    RewriteCond %{QUERY_STRING} (.*(?:^|&))(ai=diaguita(?:\|\||\%7C\%7C))(110000003|100000024|29000009|100000039)((?:&|$).*)
    RewriteRule ^(${DirDiaguita}aplicacion.php)$  ${ipInterna}$1?%1%2%3%4  [P]
    ProxyPassMatch ^(${DirDiaguita}(?:toba|skins|img|css|temp|js|rest).*)$ "${ipInterna}$1"   
    ProxyPassMatch ^(${DirToba}(?:toba|skins|img|css|temp|js|rest).*)$ "${ipInterna}$1"
    #PARA LA APP LA URL CONFIGURADA EN DIAGUITA DEBE SER SIN LA / AL FINAL
    ProxyPassReverse "/" "${ipInterna}:80"

    ServerName ${HostExt}
    CustomLog /var/log/apache2/diaguita-access.log combined
    ErrorLog /var/log/apache2/diaguita-error.log
</VirtualHost>
</Macro>
Use MacroDiaguita DOMINIO http://IP_INTERNA /diaguita/ /toba_diaguita/
UndefMacro MacroDiaguita

En la penúltima línea, solo hay que reemplazar DOMINIO con el dominio público del servidor proxy e IP_INTERNA con la dirección IP de la máquina en la LAN. Cabe destacar que esta configuración está diseñada para Diaguita 2.5.0 con la configuración de URLs predefinida.