# Redirige automatiquement tout le trafic http vers https # (Ne pas autoriser le trafic en claire) # Remplacer "mon-medshake.fr" par le domaine utilisé ServerName mon-medsahke.fr ServerAdmin admin@mon-medshake.fr RedirectMatch permanent ^(.*)$ https://mon-medshake.fr$1 ServerAdmin admin@mon-medshake.fr # Même si la connexion à l'instance ne se fait qu'au travers du VPN # il faut continuer d'utiliser https car certaines fonctionnalités # comme l'utilisation de la caméra par le navigateur web (utilisé # par "Phonecapture") ne fonctionneront pas sur via http (mesure # de sécurité implémentée dans les navigateurs web). SSLEngine On # Cet exemple utilise le certificat bidon fourni par le paquet # "ca-certificates" un certificat généré par Easy-RSA peut # avantageusement le remplacer SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key # Emplacement des fichier html public de l'installation MedShake EHR/EDC DocumentRoot /var/www/medshake/EHR/public_html/ DirectoryIndex index.php # Fichier de log dédié avec un format compatible avec le lecteur de log intégré # à Medshake CookieName apacheLogUserID # /!\ le domaine doit être préfixé d'un point CookieDomain .mon-medshake.fr Define MEDSHAKEEHRLOGFILE /var/log/apache2/access_medshake.log SetEnv MEDSHAKEEHRLOGFILE ${MEDSHAKEEHRLOGFILE} LogFormat "%{%Y-%m-%d %H:%M:%S}t %{c}a %r %{Cookie}n" usertrack SetEnvIf Request_URI "\.png$|\.gif$|\.jpg$|\.svg$|\.js$|\.css$|\.map$|\.ico$|\.woff2" do_not_log CustomLog ${MEDSHAKEEHRLOGFILE} usertrack env=!do_not_log # Des règles de réécriture d'urls sont nécessaires(voir le public_html/.htaccess) # On s'assure que le module est bien chargé RewriteEngine On # N'autorise que le membre du réseau du VPN à accéder aux fichiers se trouvant # dans ce dossier SetEnv MEDSHAKEEHRPATH /var/www/medshake/EHR/ Require IP 10.32.64.0/24 Options FollowSymLinks AllowOverride all # Accès aux url commençant par /phonecapture/ et /pubic/ autorisé aussi pour les # clients du réseau local (utilisation phone capture et signature des documents) # /!\ Replacer l'addresse ci-dessous par celle de votre réseau local Require ip 192.168.1.0/24 Require IP 10.32.64.0/24 # Autorise l'accès aux assets (js, css et images) et pages de maintenance # autorisés aussi pour les clients du réseau local # Ces ressources peuvent êtres mises en cache Header setifempty Cache-Control "must-revalidate" # Fixe un bug présent dans le version de apache utilisé dans Debian 10(2.4.38) # qui gènère une entête http Etag mal formée et empéche un retour 304 # quand la ressource est en cache. # voir https://bz.apache.org/bugzilla/show_bug.cgi?id=45023#c22 RequestHeader edit "If-None-Match" '^"((.*)-gzip)"$' '"$1", "$2"' Require ip 192.168.1.0/24 Require IP 10.32.64.0/24 # Bloque les accès aux fichiers composer (juste c'est plus propre) Require all denied