Outils pour utilisateurs

Outils du site


kb:linux:apache2:reverse_proxy_avec_https

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
kb:linux:apache2:reverse_proxy_avec_https [2017/05/24 14:34] beukb:linux:apache2:reverse_proxy_avec_https [2020/03/30 11:47] (Version actuelle) beu
Ligne 1: Ligne 1:
 ======Reverse Proxy avec HTTPS====== ======Reverse Proxy avec HTTPS======
 +====Principe====
  
 +Si vous souhaitez héberger sous une même IP plusieurs services WEB qui sont soit incompatibles entre eux (versions de PHP par exemple), ou bien que certains services sont critiques, il est peut être préférables de séparer ces services WEB dans des machines distinctes.
 +
 +L'objectif est d'avoir un Apache2 qui recevra toutes les requêtes HTTP et HTTPS et qui fera du proxy vers les autres machines via leur nom de domaines local (ou par leur adresses IP).
  
 ====Installation et Configuration==== ====Installation et Configuration====
  
-  apt-get install apache2+Il faut évidemment installer Apache2 pour effectuer la manipulation
  
-  a2enmod proxy +<code> 
-  a2enmod proxy_http +# apt-get install apache2 
-  a2enmod rewrite +</code>
-  a2enmod ssl+
  
-  a2dissite 000-default.conf +Puis activer les mods Apache2 pour effectuer le Reverse Proxy et le HTTPS
-  a2dissite default-tls.conf+
  
-  nano /etc/apache2/site-available/monsite.conf+<code> 
 +# a2enmod proxy 
 +# a2enmod proxy_http 
 +# a2enmod rewrite 
 +# a2enmod ssl 
 +# a2enmod headers 
 +</code> 
 + 
 +Puis on désactive les sites par défaut 
 + 
 +<code> 
 +# a2dissite 000-default.conf 
 +# a2dissite default-tls.conf 
 +</code> 
 + 
 +Puis il reste juste à créer la configuration du site 
 + 
 +<code> 
 +nano /etc/apache2/site-available/monsite.conf 
 +</code>
  
 +Et rentré ceci avec les modifications adéquates
 <code> <code>
 <VirtualHost *:443> <VirtualHost *:443>
   
  #########GENERAL#########  #########GENERAL#########
- ServerName wiki.virtit.fr + ServerName domain.tld
- Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;" +
- +
  
  ###########SSL###########  ###########SSL###########
Ligne 29: Ligne 49:
  
  # Les clefs du serveur :  # Les clefs du serveur :
- SSLCertificateFile /etc/letsencrypt/live/wiki.virtit.fr/fullchain.pem + SSLCertificateFile /path/to/key/fullchain.pem 
- SSLCertificateKeyFile /etc/letsencrypt/live/wiki.virtit.fr/privkey.pem+ SSLCertificateKeyFile /path/to/key/privkey.pem
  
  # On autorise TLSv1.2, on rejette les autres  # On autorise TLSv1.2, on rejette les autres
  SSLProtocol -all +TLSv1.2  SSLProtocol -all +TLSv1.2
  
- # On autorise uniquement les clefs de cryptage longue (high).+ # On autorise uniquement les algos de chiffrement élevé (high).
  SSLCipherSuite HIGH:!kRSA:!kDHr:!kDHd:!kSRP:!aNULL:!3DES:!MD5  SSLCipherSuite HIGH:!kRSA:!kDHr:!kDHd:!kSRP:!aNULL:!3DES:!MD5
  
 +        # On fournit l'entête HSTS 
 + Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
   
  ##########PROXY##########  ##########PROXY##########
Ligne 50: Ligne 72:
  ProxyRequests Off  ProxyRequests Off
  ProxyPreserveHost On  ProxyPreserveHost On
- ProxyPass / http://wiki.virtit.lan/ + ProxyPass / http://domain.lan/ 
- ProxyPassReverse / http://wiki.virtit.lan/ + ProxyPassReverse / http://domain.lan/ 
- RewriteRule ^/(.*) http://wiki.virtit.lan/$1 [P,L]+ RewriteRule ^/(.*) http://domain.lan/$1 [P,L]
  </IfModule>  </IfModule>
  </IfModule>  </IfModule>
Ligne 63: Ligne 85:
   
  ###########LOG###########  ###########LOG###########
- ErrorLog /var/log/apache2/wiki.tld-error.log+ ErrorLog /var/log/apache2/domain.tld-error.log
  LogLevel warn  LogLevel warn
- CustomLog /var/log/apache2/wiki.tld-access.log combined+ CustomLog /var/log/apache2/domain.tld-access.log combined
   
 </VirtualHost> </VirtualHost>
Ligne 72: Ligne 94:
 <VirtualHost *:80> <VirtualHost *:80>
   
- ServerName wiki.virtit.fr+ ServerName domain.tld
  
  <IfModule mod_rewrite.c>  <IfModule mod_rewrite.c>
Ligne 80: Ligne 102:
  </IfModule>  </IfModule>
  
- Redirect permanent / https://wiki.virtit.fr/+ Redirect permanent / https://domain.tld/
  
  ###########LOG###########  ###########LOG###########
- ErrorLog /var/log/apache2/wiki.tld-error.log+ ErrorLog /var/log/apache2/domain.tld-error.log
  LogLevel warn  LogLevel warn
- CustomLog /var/log/apache2/wiki.tld-access.log combined+ CustomLog /var/log/apache2/domain.tld-access.log combined
  
 </VirtualHost> </VirtualHost>
Ligne 91: Ligne 113:
 </code> </code>
  
 +Il suffira d'acitiver le site 
 +
 +<code>
 +# a2ensite monsite.conf
 +</code>
 +
 +puis de relancer apache2
 +
 +<code>
 +# service apache2 restart
 +</code>
  
 +Et le tour est joué!
kb/linux/apache2/reverse_proxy_avec_https.1495636474.txt.gz · Dernière modification : 2017/12/09 00:19 (modification externe)