« Installation et configuration d'un serveur http apache 2.2 » : différence entre les versions

Aller à la navigation Aller à la recherche
 
(14 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
[[Category:serveur]]
[[Category:serveur]]
[[Category:debian]]
[[Category:debian]]
Ce howto va vous montrer comment mettre en place un serveur web apache2 gérant les domaines virtuels et l'ipv6 sous debian squeeze.
[[Category:wheezy]]
[[Category:toupdate]]
 
'''<span style="color: red;">Tuto plus vraiment à jour</span>'''
 
[[Installation_de_configuration_du_serveur_web_Apache_2.4_sous_Debian_Jessie|Nouveau wiki à jour (mais incomplet pour le moment)]]
 
 
 
Ce howto va vous montrer comment mettre en place un serveur web apache2 gérant les domaines virtuels et l'ipv6 sous debian '''squeeze'''.
Nous allons mettre en place trois sites : <code>srv.domain.tld</code>, <code>www.domain.tld</code> et <code>webmail.domain.tld</code>.
Nous allons mettre en place trois sites : <code>srv.domain.tld</code>, <code>www.domain.tld</code> et <code>webmail.domain.tld</code>.
<code>srv.domain.tld</code> sera le site par défaut sur lequel tombera toute personne effectuant une requête http ne désignant aucun autre domaine virtuel.
<code>srv.domain.tld</code> sera le site par défaut sur lequel tombera toute personne effectuant une requête http ne désignant aucun autre domaine virtuel.
Ligne 283 : Ligne 292 :


=Mise en place d'un site sécurisé en ssl=
=Mise en place d'un site sécurisé en ssl=
----
----


'''Attention, cette rubrique n'est pas à jour'''
'''Attention, cette rubrique n'est pas à jour'''
'''le module ssl de Apache supporte désormais SNI (http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI) ce qui permet d'utiliser plusieurs certificats ssl sur une seule et même ip.'''
'''le module ssl de Apache supporte désormais SNI (http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI) ce qui permet d'utiliser plusieurs certificats ssl sur une seule et même ip.'''
Il faudra dans ce cas préciser le certificat ssl à utiliser dans chaque vhost où ssl est activé. Le premier certificat ssl chargé sera utilisé en tant que fallback si le client ne supporte pas SNI.
----
----


Nous allons maintenant mettre en place les deux sites sécurisés en ssl : <code>www.domain.tld</code> et <code>webmail.domain.tld</code>.
Nous allons maintenant mettre en place les deux sites sécurisés en ssl : <code>www.domain.tld</code> et <code>webmail.domain.tld</code>.
Ligne 304 : Ligne 321 :
subjectAltName                  = DNS:www.domain.tld, DNS:webmail.domain.tld
subjectAltName                  = DNS:www.domain.tld, DNS:webmail.domain.tld
basicConstraints                = critical,CA:FALSE
basicConstraints                = critical,CA:FALSE
keyUsage                        = digitalSignature, nonRepudiation, keyEncipherment
keyUsage                        = critical,digitalSignature, nonRepudiation, keyEncipherment
nsCertType                      = server
nsCertType                      = server
extendedKeyUsage                = serverAuth
extendedKeyUsage                = serverAuth
Ligne 329 : Ligne 346 :
</pre>
</pre>


Enfin, nous allons créer un fichier contenant la chaine de certification :
Enfin, nous allons créer un fichier contenant la chaine de certification (de préférence en partant de la CA la plus proche de certificat serveur en remontant vers la root) :
<pre>
<pre>
cat /etc/ssl/root_ca/root_ca.pem /etc/ssl/core_ca/core_ca.pem > /etc/apache2/ssl/ca_chain.pem
cat /etc/ssl/core_ca/core_ca.pem /etc/ssl/root_ca/root_ca.pem > /etc/apache2/ssl/ca_chain.pem
</pre>
</pre>


Ligne 368 : Ligne 385 :
<VirtualHost 213.186.47.110:443>
<VirtualHost 213.186.47.110:443>
         SSLEngine on
         SSLEngine on
         SSLProtocol All
         SSLProtocol All -SSLv2 -SSLv3
         SSLCipherSuite MEDIUM:HIGH
         SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
         ServerName www.domain.tld
         ServerName www.domain.tld
         ServerAlias domain.tld
         ServerAlias domain.tld
Ligne 377 : Ligne 394 :
<VirtualHost [2001:41d0:1:d6e::110]:443>
<VirtualHost [2001:41d0:1:d6e::110]:443>
         SSLEngine on
         SSLEngine on
         SSLProtocol All
         SSLProtocol All -SSLv2 -SSLv3
         SSLCipherSuite MEDIUM:HIGH
         SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
         ServerName www.domain.tld
         ServerName www.domain.tld
         ServerAlias domain.tld
         ServerAlias domain.tld
Ligne 411 : Ligne 428 :
<VirtualHost 213.186.47.110:443>
<VirtualHost 213.186.47.110:443>
         SSLEngine on
         SSLEngine on
         SSLProtocol All
         SSLProtocol All -SSLv2 -SSLv3
         SSLCipherSuite MEDIUM:HIGH
         SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
         ServerName webmail.domain.tld
         ServerName webmail.domain.tld
         Include sites/webmail.domain.tld.conf
         Include sites/webmail.domain.tld.conf
Ligne 426 : Ligne 443 :
<VirtualHost [2001:41d0:1:d6e::110]:443>
<VirtualHost [2001:41d0:1:d6e::110]:443>
         SSLEngine on
         SSLEngine on
         SSLProtocol All
         SSLProtocol All -SSLv2 -SSLv3
         SSLCipherSuite MEDIUM:HIGH
         SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
         ServerName webmail.domain.tld
         ServerName webmail.domain.tld
         Include sites/webmail.domain.tld.conf
         Include sites/webmail.domain.tld.conf
Ligne 649 : Ligne 666 :
==suhosin==
==suhosin==


Depuis debian squeeze, les modules php de apache (que ce soit mod_php5 ou mod_suphp) sont fournis par défaut avec le module de sécurité [http://www.hardened-php.net/suhosin/ suhosin] activé. Dans la majorité des cas, vous ne devriez pas en ressentir la présence. Si vous remarquez cependant des comportements anormaux (variable php perdus, ...), jetez un œil au fichier <code>/etc/php5/conf.d/suhosin.ini</code> qui contient la configuration par défaut de suhosin. Vous y trouverez peut-être votre bonheur.
Depuis debian wheezy, les fonctionnalités de suhosin ont été mergées directement dans le coeur de php, le packet n'est par conséquent plus disponible.
 
Sous debian squeeze, les modules php de apache (que ce soit mod_php5 ou mod_suphp) sont fournis par défaut avec le module de sécurité [http://www.hardened-php.net/suhosin/ suhosin] activé. Dans la majorité des cas, vous ne devriez pas en ressentir la présence. Si vous remarquez cependant des comportements anormaux (variable php perdus, ...), jetez un œil au fichier <code>/etc/php5/conf.d/suhosin.ini</code> qui contient la configuration par défaut de suhosin. Vous y trouverez peut-être votre bonheur.


Dans le cadre de l'utilisation de suphp et si vous devez modifier des variables de suhosin, je vous recommande vivement de ne pas les modifier directement dans <code>/etc/php5/conf.d/suhosin.ini</code>, mais de copier les directives qui vous intéressent dans le fichier de configuration php personnalisé de la vhost qui pose problème.
Dans le cadre de l'utilisation de suphp et si vous devez modifier des variables de suhosin, je vous recommande vivement de ne pas les modifier directement dans <code>/etc/php5/conf.d/suhosin.ini</code>, mais de copier les directives qui vous intéressent dans le fichier de configuration php personnalisé de la vhost qui pose problème.
4 203

modifications

Menu de navigation