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
pratique:informatique:apache [26/10/2024 20:18] – [Vhost] Zatalyzpratique:informatique:apache [26/10/2024 21:47] (Version actuelle) – [Options propre au proxy] Zatalyz
Ligne 118: Ligne 118:
 <WRAP center round tip 60%> <WRAP center round tip 60%>
 Ici on utilise les macros, ce qui réduit un peu le nombre de trucs à répéter. Il faut activer le module correspondant :  Ici on utilise les macros, ce qui réduit un peu le nombre de trucs à répéter. Il faut activer le module correspondant : 
-  sudo a2enmod macro+ sudo a2enmod macro
 </WRAP> </WRAP>
  
Ligne 130: Ligne 130:
 <Macro common_config_80 $domain> <Macro common_config_80 $domain>
 # Les parties "tout le monde pareil" dans les configs apache. Pour vhost 80 # Les parties "tout le monde pareil" dans les configs apache. Pour vhost 80
- ServerName $domain+ ServerName $domain
  
- # Redirection tout le trafic HTTP vers HTTPS + # Redirection tout le trafic HTTP vers HTTPS 
- RewriteEngine On + RewriteEngine On 
- RewriteCond %{REQUEST_URI} !.well-known/acme-challenge + RewriteCond %{REQUEST_URI} !.well-known/acme-challenge 
- RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [R=301,L]+ RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [R=301,L]
  
 </Macro> </Macro>
Ligne 143: Ligne 143:
 <Macro common_config_443 $domain> <Macro common_config_443 $domain>
 # Les parties "tout le monde pareil" dans les configs apache. Pour vhost 443 # Les parties "tout le monde pareil" dans les configs apache. Pour vhost 443
- ServerName $domain+ ServerName $domain
  
- # Logs + # Logs 
- ErrorLog ${APACHE_LOG_DIR}/$domain_error.log + ErrorLog ${APACHE_LOG_DIR}/$domain_error.log 
- CustomLog ${APACHE_LOG_DIR}/$domain_access.log combined+ CustomLog ${APACHE_LOG_DIR}/$domain_access.log combined
  
- # Configuration SSL avec Let’s Encrypt + # Configuration SSL avec Let’s Encrypt 
- SSLEngine On + SSLEngine On 
- SSLCertificateFile /etc/letsencrypt/live/$domain/fullchain.pem + SSLCertificateFile /etc/letsencrypt/live/$domain/fullchain.pem 
- SSLCertificateKeyFile /etc/letsencrypt/live/$domain/privkey.pem + SSLCertificateKeyFile /etc/letsencrypt/live/$domain/privkey.pem 
-  +  
- # Redirection pour les sous-domaines non déclarés (à condition d'avoir son DNS bien configuré aussi) + # Redirection pour les sous-domaines non déclarés (à condition d'avoir son DNS bien configuré aussi) 
- RewriteEngine On + RewriteEngine On 
- RewriteCond %{HTTP_HOST} !^%{SERVER_NAME}$ [NC] + RewriteCond %{HTTP_HOST} !^%{SERVER_NAME}$ [NC] 
- RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]+ RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
 </Macro> </Macro>
 </code> </code>
Ligne 164: Ligne 164:
 <code txt /etc/apache2/sites-available/exemple.org.conf> <code txt /etc/apache2/sites-available/exemple.org.conf>
 <VirtualHost *:80> <VirtualHost *:80>
-    # Déclare la macro, son appel et la variable pour le nom de domaine + # Déclare la macro, son appel et la variable pour le nom de domaine 
-    Use common_config_80 exemple.org + Use common_config_80 exemple.org 
-    # Déclare les sous-domaines qui sont en réalité le même site + # Déclare les sous-domaines qui sont en réalité le même site 
-    ServerAlias www.exemple.org+ ServerAlias www.exemple.org
 </VirtualHost> </VirtualHost>
  
 <VirtualHost *:443> <VirtualHost *:443>
-    Use common_config_443 exemple.org + Use common_config_443 exemple.org 
-    ServerAlias www.exemple.org + ServerAlias www.exemple.org 
-    # Si besoin d'alias  + # Si besoin d'alias  
-    Alias /app /var/www/html + Alias /app /var/www/html 
-     + DocumentRoot /var/www/exemple.org 
-                   DocumentRoot /var/www/test1.liev.re + <Directory /var/www/exemple.org/ > 
-                       <Directory /var/www/test1.liev.re/ > +  Options FollowSymLinks MultiViews 
-                                       Options FollowSymLinks MultiViews +  AllowOverride All 
-                                       AllowOverride All +  Require all granted 
-                                       Require all granted + </Directory> 
-                       </Directory> +  
-                       +
 </VirtualHost> </VirtualHost>
 </code> </code>
Ligne 191: Ligne 190:
 sudo apachectl -t sudo apachectl -t
 sudo apachectl graceful</code> sudo apachectl graceful</code>
 +
 ==== Options propre au proxy ==== ==== Options propre au proxy ====
   a2enmod proxy proxy_http   a2enmod proxy proxy_http
 <WRAP center round todo 60%> <WRAP center round todo 60%>
 Faut revoir, soit dans l'optique "le proxy demande les certifs", soit "le backend les gère". D'un point de vue anonymat c'est mieux si c'est chiffré tout du long mais d'un autre côté la femme du milieu, c'est moi... Faut revoir, soit dans l'optique "le proxy demande les certifs", soit "le backend les gère". D'un point de vue anonymat c'est mieux si c'est chiffré tout du long mais d'un autre côté la femme du milieu, c'est moi...
 +
 +Mise à jour : de toute façon c'est pas possible avec Apache. Et pas possible de faire un challenge dns automatisé avec bookmyname. Donc, on fera un transfert du certif post-hook. Mais je bidouille ça un autre jour.
 </WRAP> </WRAP>
  
Ligne 230: Ligne 232:
  
 ===== Certificat ssl ===== ===== Certificat ssl =====
-  sudo apt installe certbot+  sudo apt install certbot
  
 Éteindre apache avant ça (et le rallumer ensuite) : Éteindre apache avant ça (et le rallumer ensuite) :
CC Attribution-Noncommercial-Share Alike 4.0 International Driven by DokuWiki
pratique/informatique/apache.1729966724.txt.gz · Dernière modification : 26/10/2024 20:18 de Zatalyz