Esup-Signature

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Afin de publier esup-signature de manière securisée, il est possible de mettre un frontal Apache à l'aide du module mod_proxy.
Installer préalablement Apache2

Bloc de code
languagepowershell
themeRDark
sudo apt update
sudo apt install apache2

Pour ce faire installer apache puis activer le mod_proxy :

Bloc de code
languagepowershell
themeRDark
a2enmod proxy proxy_http proxy_ajp

Donne : 
Enabling module proxy.
Considering dependency proxy for proxy_http:
Module proxy already enabled
Enabling module proxy_http.
Considering dependency proxy for proxy_ajp:
Module proxy already enabled
Enabling module proxy_ajp.
To activate the new configuration, you need to run:
systemctl restart apache2

Redémarre Apache pour prendre en compte les changements : 

Bloc de code
languagepowershell
themeRDark
systemctl restart apache2


Voici maintenant un exemple de configuration apache qui va rediriger les requetes http vers https puis faire proxy vers l'application esup-signature

Bloc de code
languagetext
themeRDark
<VirtualHost *:80>
	ServerName esup-signature.univ-ville.fr
	ServerAlias esup-signature
	ServerAdmin  system@univ-ville.fr
	ServerSignature Off

	RewriteEngine On
	RewriteRule ^(.*) https://esup-signature-demo.univ-rouenville.fr$1 [L,R]
</VirtualHost>

<VirtualHost *:443>
    ServerName esup-signature.univ-rouenville.fr
    ServerAlias esup-signature
    ServerAdmin  systeme@univ-rouenville.fr
    ServerSignature Off

    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/crt
    SSLCertificateKeyFile /etc/pki/tls/private/key
    SSLCertificateChainFile /etc/pki/tls/certs/cacert
    SSLverifyclient none  

	ProxyPreserveHost On

    #ProxyPass / ajp://localhost:6009/ ttl=10 timeout=3600 loadfactor=100 retry=1
	# ou
    ProxyPass / http://localhost:8080/ ttl=10 timeout=3600 loadfactor=100 retry=1
	# avec proxy http (et non ajp), il faut ajouter le X Forward
    RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}
    RequestHeader set "X-Forwarded-SSL" expr=%{HTTPS}
    ProxyPreserveHost On
  </VirtualHost>

...

Info

Pour gérer plus facilement les sources sur le serveur d'exploitation il est conseillé d'utiliser git.

Le dépôt d'origine d'esup-signature se trouve sur github https://github.com/EsupPortail/esup-signature. Le dépôt fonctionne ainsi :

  • la branche "master" contient le code de la dernière release
  • la branche "test" contient les commits compris entre la dernière et la prochaine release

Des tags sont créés pour chaque version importante du code voir : Change log , https://github.com/EsupPortail/esup-signature/tags

Clonage

Comme expliqué dans la documentation d'installation, il est préférable de cloner le dépôt git sur le serveur qui héberge esup-signature. Pour cela on commence par faire :

...

Bloc de code
languagebash
themeRDark
git tag --sort=-v:refname | head -n 10

(--sort=-v:refname permet de lister dans l'ordre de version de tag la plus récente en premier, head -n 10= pour n'avoir que les 10 derniers tag)

Il faut de plus s'assurer que toutes les modifications de code ont bien été sauvegardées ("commitées") :

...

Remarque

Pour que le système d'archivage soit activé, il faut mettre le paramètre enable-scheduled-cleanup à true
Assurez-vous également d'avoir bien installé l'extension postgresql-contrib dans la partie installation de la BDD : PostgreSQL

Les demandes restent consultables depuis esup-signature qui fait, alors, la passerelle avec l'espace d'archivage.

( Après archivage, si l'utilisateur supprime complètement la demande depuis l'interface d'ESUP-Signature, le document ne sera plus visible depuis l'interface, mais il reste disponible dans l'espace d'archivage. )

Pour consulter la taille de la base depuis la console psql :

...

Bloc de code
languagesql
themeRDark
psql esupsignature;
VACUUM FULL;

Pour voir ce qui se déroule vous pouvez rendre VACUUM plus verbeux :

Bloc de code
languagesql
themeRDark
VACUUM FULL VERBOSE;