Espai dels administradors: Diferència entre les revisions

De Gwiki
Dreceres ràpides: navegació, cerca
(Sense cicles LOE)
(docmgr)
 
(Hi ha 41 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 
= Publicació noves versions =
 
= Publicació noves versions =
 +
== Neteja ==
 +
* Netejar carpeta feina guardies
 +
* Netejar carpeta images
 +
* Netejar logs
 +
* Eliminar carpeta gassist-server2, plesk, plesk-stat, nbproject
 +
* Eliminar carpeta upload_mails
 +
* Eliminar dades de connect.php i constants.php
 +
* Eliminar dades login google
 +
 
== Gassist lliure ==
 
== Gassist lliure ==
 
* Eliminar carpetes abs*, CCC*, ass_servei*, sort*, ctrl_prof
 
* Eliminar carpetes abs*, CCC*, ass_servei*, sort*, ctrl_prof
* Modificar guard i esborrar  
+
* Eliminar carpeta inf_passa_llista
 +
* Modificar guard i esborrar
 +
* De la carpeta cron eliminar els scripts excepte el de majors de 18 anys
 
* A func/constants, modificar la capçalera de dades sms
 
* A func/constants, modificar la capçalera de dades sms
 +
* Modificar dades acces bases de dades
 
* Obfuscar connect_sms.php
 
* Obfuscar connect_sms.php
 
* login de google
 
* login de google
Línia 9: Línia 21:
 
** index.php - capçalera
 
** index.php - capçalera
 
** logout.php
 
** logout.php
 +
** mobi/index.php
 
* Buidar  
 
* Buidar  
 
** imatges/ de professors i alumnes
 
** imatges/ de professors i alumnes
 
** Els upload de mails professors i alumnes
 
** Els upload de mails professors i alumnes
 
+
** Feina guardies
 
* BBDD
 
* BBDD
 
** Taula config a 0
 
** Taula config a 0
Línia 70: Línia 83:
 
$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
 
$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
 
</pre>
 
</pre>
 +
 +
** Actualitzar el fitxer logout.php amb l'adreça de retorn
 +
** Actualitzar la informació del fitxer mobi/index.php
  
 
= Login amb Google a Gassist =
 
= Login amb Google a Gassist =
Línia 248: Línia 264:
 
</pre>
 
</pre>
  
= Instruccions Càrregues 16/17 =
+
= PostgreSQL =
== Centres només SAGA ==
+
[https://www.digitalocean.com/community/tutorials/how-to-use-roles-and-manage-grant-permissions-in-postgresql-on-a-vps--2 Gestió de permisos des de consola]
=== Centres nous ===
+
== Restaura base de dades ==
En aquest cas
+
Si ja hem creat la base de dades i té assignat l'usuari que l'ha de gestionar, podem utilitzar el fitxer pg_all.sql que té eliminades les comandes de creació i hem de modificar elnom de l'usuari propietari i posar l'actual.
# Es farà una reconstrucció del fitxer xml amb informació d'altres centre, tant si tenen cicles formatius com si no
+
Aquest fitxer es troba a la careta script del server
# Una vegada reconstruït, es fa la càrrega normal fins la de les matèries inclosa i parem la càrrega
+
== Restaura una cópia de seguretat des de consola ==
# Ajustem manualment les matèries/móduls. Podrem modificar matèries per ajustar-ho al nostre pla d'estudis.
+
* Situem la cópia .sql a /var/lib/postgresql
# Respecte als cicles formatius que no s'hagin introduït, haurem de fer la càrrega manual simplificada. (Mira aquest vídeo)
+
* Posem de propietari a postgres
# Una vegada retocat, avisar-me per fer-ne una cópia
+
* passem a usuari postgres: su postgres
# Introduir les franges horàries. (Mira aquest video). Aquesta tasca s'havia de fer igualment
+
* Executem psql baseDeDades < fitxerSQL.sql
  
=== Centres no nous ===
+
== Script per fer cópies  de seguretat ==
==== Amb cicles LOE ====
+
==== Sense cicles LOE ====
+
  
Si no utiltzeu cap generador d'horaris els passos serien
+
* Entrem a root amb sudo -s.
 +
* Fem su postgres i entra en una consola amb prompt sh-4.3$
 +
* Faig psql i ja entrem a la consola de postgres.
  
Si obres el fitxer que adjunto veuràs que és el mateix que m'has enviat, però hi afegit els vostres plans d'estudis del curs passat
+
<pre>
 +
#!/bin/bash
 +
# Aquest script ha de ser executat amb l'usuari postgres
 +
TODAY=`date +%Y-%m-%d`
 +
DUMPFILE="/backups_docmgr/postgresql/docmgrbase_dump_$TODAY.sql"
 +
pg_dump docmgrbase > $DUMPFILE
 +
gzip $DUMPFILE
 +
</pre>
  
Una vegada el tinguis, podem fer dues coses.  
+
= Modificacions a control =
 +
== Gestió de les incidències ==
 +
=== Poder tancar incidencies ===
 +
Per poder tancar incidències des de l'entonn centralitzat, s'ha de
 +
* Afegir els dos fitxers a la carpeta incidencia: gestioIncidencia.php i gestioIncidenciaExe.php:
 +
* Afegir dues entrades als fitxers d'idioma al bloc "Inventario"
 +
* Afegir a la linia 232 de l'index.php
 +
<pre>
 +
        // Afegit Victor. Gestió d'incidències.
 +
        // 20180816
 +
        print("<tr><td align=\"center\" width=50%>"._GESTIO_INCIDENCIA."</td>");
 +
        print("<td align=\"center\" width=25%><a href='./incidencia/gestioIncidencia.php'><img border=0 src=\"./images/incidencia.gif\" title=\"Obrir incidència\">");
 +
        print("<td align=\"center\" width=25%>&nbsp;</td></tr>");       
 +
        // Final afegit 20180816
 +
</pre>
  
* Edites el fitxer obrint-lo amb un editor de text tipus wordpad, no amb un processador de textos, treus i poses matèries fins adequar-lo a la oferta actual (No crec que siguin grans retocs). No cal que eliminis matèries que sobrin, és més important afegir les que manquin.
+
= Plesk =
* Fer la càrrega fins tenir les matèries carregades i fer els retocs en el programa a posteriori
+
== Registrar una BDD plesk a un domini==
 +
# plesk bin database --register nombdd -domain nomDomini -server localhost:3306
  
Prèviament a la càrrega, a l'aplicació heu de
+
# plesk bin database --register-dbuser userdb -domain nomDomini -database 'nomBDD' -type mysql -user-role readWrite -passwd XXXXXXX
  
* Generar el nou curs acadèmic, desmarcar l'anterior com actual i marcar com actual el d'enguany
+
= SSL a totes els aplicacions =
* Revisar els torns
+
== Certificats als plesk ==
* Generar les franges horàries i assigna els 5 dies a cada franja
+
Una vegada descarregats els tres fitxers
 +
== Subdomini de GEISoft a server 2 ==
 +
* Anar "Sitios web i dominios" i al subdomini afectat
 +
* Clicar a Certificados ssl  >> Añadir certificado ssl
 +
* Posar nom amb el format SSL_Centre_1X i carregar els tres fitxers en la secció corresponent
 +
* A l'apartat del subdomini clicar en "Configuració del hosting". Seleccionar el certificat escollit i acceptar
  
Una vegada carregats professors i alumnes, revisar i completar si s'escau, els plans d'estudis
+
== Gassist ==
 +
Ja està forçat l'ssl des de la versió 2.3
 +
== GLPI ==
 +
Al fitxer de configuració d'Apache es pot posar una redirecció de forma que no afectin les actualitzacions
 +
Redirect permanent /glpi https://192.168.1.150/glpi
 +
== moodle ==
 +
Entrant com a administrador.
 +
Anant a Administració del lloc >> Seguretat >> Seguretat https >> Marcar el primer checkbox
 +
== Lime surveys ==
 +
Entrant com administrador
 +
Anant a "Global Settings" podrem configurar que es pugui forçar l'ssl. Una vegada a "Global Settings", podem escollir la pestanya Seguretat i en aquesta pantalla ens permetrà configurar l'ssl
 +
També es pot retocar directament a la base de dades a la taula que conté els paràmetres de configuració
  
Quan entris en el programa d'importació selecciona
+
== control + chgpw ==
* NO utilitzo gestió centralitzada.  
+
Ja està forçat l'ssl des de la versió 2.60
* Segona opció: Nou curs per ja he utilitzat Gassist
+
== docmgr ==
* Puja el fitxer de SAGA
+
=== ssl ===
* A la següent pantalla, NO utilitzo cap eina de generació d'horaris.
+
Posar un .htaccess amb el contingut següent
  
I ja podeu començar el procés
+
AddDefaultCharset utf-8
 +
RewriteEngine On
 +
RewriteCond %{SERVER_PORT} 80
 +
RewriteRule ^(.*)$ https://docmgr.XXXX.cat/$1 [R,L]
  
Punts en els que els centres en ocasions tenen algun problema:
+
i modificar la variable SITE_URL dol fitxer de configuració
* En la pantalla de grups, si voleu que un grup es generi, ha de tenir completats els dos camps, el del torn i el del pla d'estudis
+
  
A partir d'aquest punt ja heu de generar els horaris com el curs passat
+
=== Crear usuari i base de dades ===
 +
root@postgres:~# su postgres
 +
postgres@postgres:/root$ createuser docmgr_serre
 +
postgres@postgres:/root$ createdb docmgr_serre
  
== Centres amb programa d'horaris ==
+
Des de línia de comandes psql...
 +
postgres=# \password usuari - Canviar o establir pa password de l'usuari..... Ja pot accedir a phppgadmin
 +
postgres=# \l - llistar les bases de dades
 +
postgres=# \c mebabdd - Connectar-me a la base de dades
 +
mevabdd=# \dt -- Mostra les taules
  
[https://vimeo.com/183205289 Video explicatiu per crear matèries i móduls manualment]
+
=== Connexió remota des de línia de comandes ===
 +
 +
psql -h ns310295.eu -p XXXX -U docmgruser docmgrdb
  
=== Centres nous ===
+
== Habilitar accès remot ==
==== Amb cicles LOE ====
+
* al fitxer de configuració /etc/postgresql/X.X/main/postgresql.conf afegint des de quines màquines escolta
 +
* al fitxer pg_hba.conf del mateix directori, afegir una línia amb el format
 +
host db user IP mask md5
  
De func_grups_materies , comentar la línia que carrega els plans d'estudis de l'eina d'horaris corresponents
+
==========================
  
========================
+
Al fitxer de configuració d'Apache es pot posar una redirecció de forma que no afectin les actualitzacions
Hola Tomás,
+
Redirect permanent /docmgr https://192.168.1.150/docmgr
  
Podeu fer demà els passos fins a la càrrega de grups. En aquest punt pareu ja que he de veure com podem suplir la informació que no és al SAGA.
+
== Joomla ==
 +
Entrant com administradors, podem anar a "Global Configuration", podem , a continuació, seleccionar la petanya "Server" i en aquesta pantalla podrem configurar l'accés ssl als diferents àmbits. És suficient que ho fem per la secció d'administració
  
Prèviament a la càrrega, a l'aplicació heu de
+
= Errors i possibles solucions =
 +
== Timed out ==
  
* Generar el nou curs acadèmic, desmarcar l'anterior com actual i marcar com actual el d'enguany
+
Server 3 - Al fitxer /etc/apache2/mods_available/fcgid.conf canviar el valor de FcgidIOTimeout
* Revisar els torns
+
* Carrega els plans d'estudis que teniu
+
* Una vegada carregats professors, alumnes i grups PAREU.
+
  
Quan entris en el programa d'importació selecciona
+
== Internal Server error ==
  
* SI/NO, utilitzo gestió centralitzada.
+
Server 4 - Al fitxer /etc/apache2/mods_available/fcgid.conf canviar el valor de FcgidIOTimeout
* Ho tins tot sincronitzat
+
* Primera opció: Nou curs
+
* Puja el fitxer de SAGA
+
* GPUntis/Peñalara
+
* Primera càrrega
+
* Dual ja que teniu LOE i LOGSE
+
* Puja el fitxer de gpuntis/peñalara
+
  
I ja podeu començar el procés
+
== No surten els correus ==
 
+
En dominis al plesk que coincideixen amb dominis externs ( p.e. de google apps for education) per evitar que intenti resoldre en local s'han de fer unes modificacions
Punts en els que els centres en ocasions tenen algun problema:
+
* Al Plesk, dintre de la configuració del domini principal (p. ex: insdemo.cat), s'ha d'anar a "Configuració DNS" i modificar el registre MX que hi ha i afegir 4 més, de manera que quedi com aquests:
 
+
<pre>
* En la pantalla de grups, si voleu que un grup es generi, ha de tenir completats els dos camps, el del torn i el del pla d'estudis
+
insdemo.cat. MX (5) ALT2.ASPMX.L.GOOGLE.COM.
* En la pantalla de las franges horàries, a la que demà no heu d'arribar has de seleccionar a cada franja el torn al que correspon i indicar si alguna de les franjas és esbarjo
+
insdemo.cat. MX (5) ALT1.ASPMX.L.GOOGLE.COM.
 
+
insdemo.cat. MX (10) ASPMX3.GOOGLEMAIL.COM.
==== Sense cicles LOE ====
+
insdemo.cat. MX (10) ASPMX2.GOOGLEMAIL.COM.
 
+
insdemo.cat. MX (0) ASPMX.L.GOOGLE.COM.
===== Sense programa d'horaris =====
+
</pre>
 
+
Després d'aplicar no se li ha de donar a "Aplicar plantilla DNS" o s'esborren els canvi i es carrega la plantilla per defecte.
Si obres el fitxer que m'has enviat i mires el bloc de pla d'estudis veuràs que no hi és. Aquest él el problema que estem tenint. El que farem és que et completaré aquest bloc amb el pla d'estudis d'ESO d'un altre centre.
+
* Després, també al Plesk, dintre del domini, anar a "Configuració del correu" i desmarcar l'opció "Activar el servicio de correo en este dominio".
 
+
Una vegada el tinguis, podem fer dues coses.
+
Edites el fitxer obrint-lo amb un editor de text tipus wordpad, no amb un processador de textos,  treus i poses matèries fins adequar-lo al vostre centre (No crec que siguin grans retocs). No cal que eliminis matèries  que sobrin, és més important afegir les que manquin.
+
Fer la càrrega fins tenir les matèries carregades i fer els retocs en el programa a posteriori
+
Prèviament a la càrrega, a l'aplicació heu de
+
Generar el nou curs acadèmic, desmarcar l'anterior com actual i marcar com actual el d'enguany
+
Revisar els torns
+
Genera les franges horàries i assigna els 5 dies a cada franja
+
Una vegada carregats professors i alumnes, revisar i completar si s'escau, els plans d'estudis
+
Quan entris en el programa d'importació selecciona
+
NO utilitzo gestió centralitzada.
+
Primera opció: Nou curs
+
Puja el fitxer de SAGA
+
A la següent pantalla, NO utilitzo cap eina de generació d'horaris.
+
I ja podeu començar el procés
+
Punts en els que els centres en ocasions tenen algun problema:
+
En la pantalla de grups, si voleu que un grup es generi, ha de tenir completats els dos camps, el del torn i el del pla d'estudis
+
 
+
Una vegada arribats al final, seguim parlant
+
 
+
=== Centres no nous ===
+
==== Amb cicles LOE ====
+
'''Tasques Equip de GEISoft'''
+
 
+
Hem de comprovar si podem completar els cicles LOE a l'exportació de SAGA...
+
* Si el podem completar completament --> No s'ha de fer res
+
* Si el podem completar parcialment --> El centre ha de completar els cicles que falten (video). S'ha de fer una pausa a la càrrega despreś d'introduir matèries. Completar el que falti , i seguir la càrrega
+
 
+
'''Indicacions pel centre'''
+
 
+
* Realitzar la càrrega amb normalitat fins a matèries.  
+
* Completar a l'aplicació els cicles que manquen, si s'escau
+
* Finalitzar la càrrega
+
 
+
==== Sense cicles LOE ====
+
Hola XXXXX,
+
  
La càrrega s'ha de fer amb la informació de tots dos fitxers, el de GPuntis i també el de SAGA. Pensa que del fitxer de SAGA en traiem les dades dels alumnes i les famílies, les dades personals dels professors, i les assignacions dels alumnes als diferents grups. Però per sort, aquesta informació hi és actualment en l'exportació
+
= Actualització global =
  
Prèviament a la càrrega, a l'aplicació heu de
+
Gassist ha d'evolucionar ja cap a mysql > 5.7 i php 7
* Generar el nou curs acadèmic, desmarcar l'anterior com actual i marcar com actual el d'enguany
+
== Mysql >5.7 ==
* Revisar els torns
+
Per veure els modes activats hem de fer la consulta: @@sql_mode;
* '''Una vegada carregats professors i alumnes''', revisar i completar si s'escau, els plans d'estudis
+
  
Quan entris en el programa d'importació selecciona
+
=== Gestió de dates ===
* NO utilitzo gestió centralitzada.
+
S'ha corregit a l'actualització de la versió 2.5.4. És important evitar al programa que  es puguin introduir, per omissió, els valors 0000-00-00 per dates i 00:00:00 per hores ja que mysql 5.7 no ho suporta.
* Segona opció: Nou curs però no és elprimer any
+
* Puja el fitxer de SAGA
+
* GPuntis (triga una estona en apareixer perquè carrega les dates de naixements dels alumns "veterans" )
+
* Primera càrrega
+
* ESO/BAT
+
* Puja el fitxer de gpuntis
+
* I ja podeu començar el procés
+
  
Punts en els que els centres en ocasions tenen algun problema:
+
També podem deshabilitar el mode NO_ZERO_IN_DATE
* En la pantalla de grups, si voleu que un grup es generi, ha de tenir completats els dos camps, el del torn i el del pla d'estudis
+
=== Mode "ONLY_FULL_GROUP_BY" ===
* En la pantalla de las franges horàries, has de seleccionar a cada franja el torn al que correspon i indicar si alguna de les franjas és esbarjo
+
  
La resta de passos no solen donar problemes
+
sudo nano /etc/mysql/my.cnf
 +
Add this to the end of the file
 +
[mysqld] 
 +
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
  
Si quan aneu per la meitat m'ho voleu dir, faré una ullada a veure com va tot
+
sudo service mysql restart to restart MySQL
 +
This will disable ONLY_FULL_GROUP_BY for ALL users

Revisió de 17:50, 13 des 2018

Publicació noves versions

Neteja

  • Netejar carpeta feina guardies
  • Netejar carpeta images
  • Netejar logs
  • Eliminar carpeta gassist-server2, plesk, plesk-stat, nbproject
  • Eliminar carpeta upload_mails
  • Eliminar dades de connect.php i constants.php
  • Eliminar dades login google

Gassist lliure

  • Eliminar carpetes abs*, CCC*, ass_servei*, sort*, ctrl_prof
  • Eliminar carpeta inf_passa_llista
  • Modificar guard i esborrar
  • De la carpeta cron eliminar els scripts excepte el de majors de 18 anys
  • A func/constants, modificar la capçalera de dades sms
  • Modificar dades acces bases de dades
  • Obfuscar connect_sms.php
  • login de google
    • login_google.php - Capçalera
    • index.php - capçalera
    • logout.php
    • mobi/index.php
  • Buidar
    • imatges/ de professors i alumnes
    • Els upload de mails professors i alumnes
    • Feina guardies
  • BBDD
    • Taula config a 0
    • user i pass d'admin i vlino
    • Dates de centre amb X

Gimport

Al server:

  • Re-etiquetar la carpeta gimport i afegir la nova carpeta
  • Pujar-ho
  • Retocar el "Munta el config()" a login-exec.php
  • Esborrar el fitxer config.php
  • Buidar l'upload

Activar Google Login in en instal.lacions lliures

Després d'haver fet l'actualització pertinent, per defecte el servei està deshabilitat. Per habilitarlo has de seguir els següents passos

  • Sol.licitar-nos la creació de credencials. Seguir les instruccions que us passarem per validar el domini
  • Una vegada rebudes les credencials i validat el domini
    • Actualitzar al fitxer login_google.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
	$adrecaRetorn =  'https://www.XXXXXXX.cat/tutoria_goo/index.php?logout=1';
    • Actualitzar el fitxer index.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';

Activar Google Login in en instal.lacions hosting

Després d'haver fet l'actualització pertinent, per defecte el servei està deshabilitat. Per habilitarlo has de seguir els següents passos

  • Sol.licitar-nos la creació de credencials.Si s'escau, seguir les instruccions que us passarem per validar el domini
  • Una vegada rebudes les credencials i validat el domini
    • Actualitzar al fitxer login_google.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
	$adrecaRetorn =  'https://www.XXXXXXX.cat/tutoria_goo/index.php?logout=1';
    • Actualitzar el fitxer index.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
    • Actualitzar el fitxer logout.php amb l'adreça de retorn
    • Actualitzar la informació del fitxer mobi/index.php

Login amb Google a Gassist

Per poder habilitar el login amb google a Gassist hem hagut de seguir els següents passos

Alta a la console developers

Hem de tenir un compte de google per poder-hi accedir

  • Hem de donar d'alta un projecte. En podem crear múltiples.
  • Una vegada creat, li hem de donar nom a "Pantalla de autorización de OAuth"
  • Durant el procés s'haurà de demostrar que som l'administrador del domini vinculat. Planteja diferents formes de demostrar-ho en funció dels diferents nivells d'accés que tinguem al hosting/servidor/domini
  • Una vegada donat d'alta,
    • Crear unes credencials.
    • Quan ens pregunti li hem de respondre "Id de cliente OAuth".
    • A continuació , "Web".
    • Una vegada creades les credencials, clicant a sobre ens dóna una informació que ens farà falta en la gestió de login via google: un id de client, una password secreta, i haurem de completar la URI de redireccionament autoritzat que ha de contenir el fitxer al que cridarà goolgle quan ja hagi validat , o no, l'usuari. Pot trigar uns minuts en estar actiu

Retocs en el programa

  • Afegir mod_login_google a la base de dades amb el valor 1. Per defecte, 0
  • Afegir la carpeta google
  • Afegir login_google.php.
    • Recordar de treure la informació de l'id, secret key i URI de retorn
    • Personalitzar l'adreça de retorn
  • Traspassar la imatge amb el logo de logout amb la "G" de google. es troba a images/icons/icon_exit_red_G.png
  • retocar index.php
    • Afegir a partir de la línia 12
        require_once ('./google/libraries/Google/autoload.php');

	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
        $hosting        = XXXXXX; 

	//incase of logout request, just unset the session var
	if (isset($_GET['logout'])) {
	  unset($_SESSION['access_token']);
	}

	/************************************************
	  Make an API request on behalf of a user. In
	  this case we need to have a valid OAuth 2.0
	  token for the user, so we need to send them
	  through a login flow. To do this we need some
	  information from our API console project.
	 ************************************************/
	$client = new Google_Client();
	$client->setClientId($client_id);
	$client->setClientSecret($client_secret);
	$client->setRedirectUri($redirect_uri);
	$client->addScope("email");
	$client->addScope("profile");

	/************************************************
	  When we create the service here, we pass the
	  client to it. The client then queries the service
	  for the required scopes, and uses that when
	  generating the authentication URL later.
	 ************************************************/
	$service = new Google_Service_Oauth2($client);

	/************************************************
	  If we have a code back from the OAuth 2.0 flow,
	  we need to exchange that with the authenticate()
	  function. We store the resultant access token
	  bundle in the session, and redirect to ourself.
	*/
	  
	if (isset($_GET['code'])) {
	  $client->authenticate($_GET['code']);
	  $_SESSION['access_token'] = $client->getAccessToken();
	  header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
	  exit;
	}

	/************************************************
	  If we have an access token, we can make
	  requests, else we generate an authentication URL.
	 ************************************************/
	if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
	  $client->setAccessToken($_SESSION['access_token']);
	  
	} else {
	  $authUrl = $client->createAuthUrl();
	 }

    • Entre la <tr> de contrasenya i la <tr> de captcha afegir aquestes línies
   <tr>
      <td> </td> 
      <td align="left">
      <?php	
      $modul_login_google = getModulsActius()->mod_login_google;
      if ($modul_login_google)
          {						
	  if (isset($authUrl)){ echo '<a class="login" href="' . $authUrl . '"><img src="./google/images/google-login-button.png" /></a>';}                
	  }
      else
	  {
	  print( '<img src="./google/images/google-login-button.png" />');
	  }
       ?>
       </td>
    </tr>
  • Retocar home.php
    • Després de la funció sortir afegir la funció següent
   function sortirg(idprofessors) {
   var url = './ctrl_prof/ctrl_prof_reg_out_home.php';
			
   if (idprofessors == 0) {
	location.href = './logout.php?google=1'; 
	}
   else {
	$.messager.confirm('Confirmar','VOLS SORTIR DE GASSIST I GOOGLE?',function(r){  
	if (r){
   	     location.href = './logout.php?google=1';
	}
	});
	}
       }

Després de la línia td amb l'icon_key.png substituir

    <td valign="top" align="right" width="40">
    <a href="javascript:void(0)" title="Sortir del sistema" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
    <img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a>
     
    </td>

per

   <?php
   $modul_login_google = getModulsActius()->mod_login_google;
   if (isset($_SESSION['access_token']) && $_SESSION['access_token'] && $modul_login_google) 
	{
        ?>	
	<td valign="top" align="right" width="40">
	<a href="javascript:void(0)" title="Sortir de Gassist" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a> 
	</td>
	<td valign="top" align="right" width="40">   
	<a href="javascript:void(0)" title="Sortir de Gassist i Google" onClick="sortirg(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red_G.png" width="35" height="35" border="0"></a> 
	</td>
	<?php
	}
   else
	{
	?>			
	<td valign="top" align="right" width="40">
        <a href="javascript:void(0)" title="Sortir del sistema" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a>
	 
	</td>				
	<?php	} ?>
  • Retocar el fitxer logout
    • Retocar l'adreça de retorn
    • Substituir el header del final del fitxer per
   $adrecaRetorn =  'https://www.XXXXX.XXX/tutoria/index.php?logout=1';
      if ($_GET['google'] == 1)
	{
	header('Location: https://www.google.com/accounts/Logout?continue=https://appengine.google.com/_ah/logout?continue='.$adrecaRetorn.'');
	}
      else
	{header('Location: index.php');}

PostgreSQL

Gestió de permisos des de consola

Restaura base de dades

Si ja hem creat la base de dades i té assignat l'usuari que l'ha de gestionar, podem utilitzar el fitxer pg_all.sql que té eliminades les comandes de creació i hem de modificar elnom de l'usuari propietari i posar l'actual. Aquest fitxer es troba a la careta script del server

Restaura una cópia de seguretat des de consola

  • Situem la cópia .sql a /var/lib/postgresql
  • Posem de propietari a postgres
  • passem a usuari postgres: su postgres
  • Executem psql baseDeDades < fitxerSQL.sql

Script per fer cópies de seguretat

  • Entrem a root amb sudo -s.
  • Fem su postgres i entra en una consola amb prompt sh-4.3$
  • Faig psql i ja entrem a la consola de postgres.
#!/bin/bash
# Aquest script ha de ser executat amb l'usuari postgres
TODAY=`date +%Y-%m-%d`
DUMPFILE="/backups_docmgr/postgresql/docmgrbase_dump_$TODAY.sql"
pg_dump docmgrbase > $DUMPFILE
gzip $DUMPFILE

Modificacions a control

Gestió de les incidències

Poder tancar incidencies

Per poder tancar incidències des de l'entonn centralitzat, s'ha de

  • Afegir els dos fitxers a la carpeta incidencia: gestioIncidencia.php i gestioIncidenciaExe.php:
  • Afegir dues entrades als fitxers d'idioma al bloc "Inventario"
  • Afegir a la linia 232 de l'index.php
         // Afegit Victor. Gestió d'incidències.
         // 20180816
         print("<tr><td align=\"center\" width=50%>"._GESTIO_INCIDENCIA."</td>");
         print("<td align=\"center\" width=25%><a href='./incidencia/gestioIncidencia.php'><img border=0 src=\"./images/incidencia.gif\" title=\"Obrir incidència\">");
         print("<td align=\"center\" width=25%> </td></tr>");         
         // Final afegit 20180816

Plesk

Registrar una BDD plesk a un domini

# plesk bin database --register nombdd -domain nomDomini -server localhost:3306
# plesk bin database --register-dbuser userdb -domain nomDomini -database 'nomBDD' -type mysql -user-role readWrite -passwd XXXXXXX

SSL a totes els aplicacions

Certificats als plesk

Una vegada descarregats els tres fitxers

Subdomini de GEISoft a server 2

  • Anar "Sitios web i dominios" i al subdomini afectat
  • Clicar a Certificados ssl >> Añadir certificado ssl
  • Posar nom amb el format SSL_Centre_1X i carregar els tres fitxers en la secció corresponent
  • A l'apartat del subdomini clicar en "Configuració del hosting". Seleccionar el certificat escollit i acceptar

Gassist

Ja està forçat l'ssl des de la versió 2.3

GLPI

Al fitxer de configuració d'Apache es pot posar una redirecció de forma que no afectin les actualitzacions

Redirect permanent /glpi https://192.168.1.150/glpi

moodle

Entrant com a administrador. Anant a Administració del lloc >> Seguretat >> Seguretat https >> Marcar el primer checkbox

Lime surveys

Entrant com administrador Anant a "Global Settings" podrem configurar que es pugui forçar l'ssl. Una vegada a "Global Settings", podem escollir la pestanya Seguretat i en aquesta pantalla ens permetrà configurar l'ssl També es pot retocar directament a la base de dades a la taula que conté els paràmetres de configuració

control + chgpw

Ja està forçat l'ssl des de la versió 2.60

docmgr

ssl

Posar un .htaccess amb el contingut següent

AddDefaultCharset utf-8
RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://docmgr.XXXX.cat/$1 [R,L]

i modificar la variable SITE_URL dol fitxer de configuració

Crear usuari i base de dades

root@postgres:~# su postgres
postgres@postgres:/root$ createuser docmgr_serre
postgres@postgres:/root$ createdb docmgr_serre

Des de línia de comandes psql...

postgres=# \password usuari - Canviar o establir pa password de l'usuari..... Ja pot accedir a phppgadmin
postgres=# \l - llistar les bases de dades
postgres=# \c mebabdd - Connectar-me a la base de dades
mevabdd=# \dt -- Mostra les taules

Connexió remota des de línia de comandes

psql -h ns310295.eu -p XXXX -U docmgruser docmgrdb

Habilitar accès remot

  • al fitxer de configuració /etc/postgresql/X.X/main/postgresql.conf afegint des de quines màquines escolta
  • al fitxer pg_hba.conf del mateix directori, afegir una línia amb el format
host 	db 	user	IP mask	md5
==============

Al fitxer de configuració d'Apache es pot posar una redirecció de forma que no afectin les actualitzacions

Redirect permanent /docmgr https://192.168.1.150/docmgr

Joomla

Entrant com administradors, podem anar a "Global Configuration", podem , a continuació, seleccionar la petanya "Server" i en aquesta pantalla podrem configurar l'accés ssl als diferents àmbits. És suficient que ho fem per la secció d'administració

Errors i possibles solucions

Timed out

Server 3 - Al fitxer /etc/apache2/mods_available/fcgid.conf canviar el valor de FcgidIOTimeout

Internal Server error

Server 4 - Al fitxer /etc/apache2/mods_available/fcgid.conf canviar el valor de FcgidIOTimeout

No surten els correus

En dominis al plesk que coincideixen amb dominis externs ( p.e. de google apps for education) per evitar que intenti resoldre en local s'han de fer unes modificacions

  • Al Plesk, dintre de la configuració del domini principal (p. ex: insdemo.cat), s'ha d'anar a "Configuració DNS" i modificar el registre MX que hi ha i afegir 4 més, de manera que quedi com aquests:
	insdemo.cat.	MX (5)	ALT2.ASPMX.L.GOOGLE.COM.
	insdemo.cat.	MX (5)	ALT1.ASPMX.L.GOOGLE.COM.
	insdemo.cat.	MX (10)	ASPMX3.GOOGLEMAIL.COM.
	insdemo.cat.	MX (10)	ASPMX2.GOOGLEMAIL.COM.
	insdemo.cat.	MX (0)	ASPMX.L.GOOGLE.COM.

Després d'aplicar no se li ha de donar a "Aplicar plantilla DNS" o s'esborren els canvi i es carrega la plantilla per defecte.

  • Després, també al Plesk, dintre del domini, anar a "Configuració del correu" i desmarcar l'opció "Activar el servicio de correo en este dominio".

Actualització global

Gassist ha d'evolucionar ja cap a mysql > 5.7 i php 7

Mysql >5.7

Per veure els modes activats hem de fer la consulta: @@sql_mode;

Gestió de dates

S'ha corregit a l'actualització de la versió 2.5.4. És important evitar al programa que es puguin introduir, per omissió, els valors 0000-00-00 per dates i 00:00:00 per hores ja que mysql 5.7 no ho suporta.

També podem deshabilitar el mode NO_ZERO_IN_DATE

Mode "ONLY_FULL_GROUP_BY"

sudo nano /etc/mysql/my.cnf

Add this to the end of the file

[mysqld]  
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

sudo service mysql restart to restart MySQL This will disable ONLY_FULL_GROUP_BY for ALL users