Serveur Apache HTTP Version 2.4
Description: | Support du chiffrement des sessions |
---|---|
Statut: | Exp�rimental |
Identificateur�de�Module: | session_crypto_module |
Fichier�Source: | mod_session_crypto.c |
Compatibilit�: | Disponible depuis la version 2.3 d'Apache |
Les modules de session font usage des cookies HTTP, et peuvent � ce titre �tre victimes d'attaques de type Cross Site Scripting, ou divulguer des informations � caract�re priv� aux clients. Veuillez vous assurer que les risques ainsi encourus ont �t� pris en compte avant d'activer le support des sessions sur votre serveur.
Ce sous-module du module mod_session
fournit le
support du chiffrement des sessions utilisateur avant de les
enregistrer dans une base de donn�es locale, ou dans un cookie HTTP
au niveau du navigateur distant.
Il peut contribuer � pr�server la confidentialit� des sessions lorsque leur contenu doit rester priv� pour l'utilisateur, ou lorsqu'une protection contre les attaques de type cross site scripting est n�cessaire.
Pour plus de d�tails � propos de l'interface des sessions, voir
la documentation du module mod_session
.
Pour cr�er une session chiffr�e et la stocker dans un cookie nomm� session, configurez la comme suit :
Session On SessionCookieName session path=/ SessionCryptoPassphrase secret
La session sera chiffr�e avec la cl� sp�cifi�e. Il est possible de configurer plusieurs serveurs pour qu'ils puissent partager des sessions, en s'assurant que la m�me cl� de chiffrement est utilis�e sur chaque serveur.
Si la cl� de chiffrement est modifi�e, les sessions seront automatiquement invalid�es.
Pour des d�tails sur la mani�re dont une session peut �tre
utilis�e pour stocker des informations de type nom
d'utilisateur/mot de passe, voir la documentation du module
mod_auth_form
.
Description: | L'algorithme � utiliser pour le chiffrement de la session |
---|---|
Syntaxe: | SessionCryptoCipher algorithme |
D�faut: | aes256 |
Contexte: | configuration du serveur, serveur virtuel, r�pertoire, .htaccess |
Statut: | Exp�rimental |
Module: | mod_session_crypto |
Compatibilit�: | Disponible depuis la version 2.3.0 du serveur HTTP Apache |
La directive SessionCryptoCipher
permet de
sp�cifier l'algorithme � utiliser pour le chiffrement. En l'absence
de sp�cification, l'algorithme par d�faut est aes256
.
L'algorithme peut �tre choisi, en fonction du moteur de chiffrement utilis�, parmi les valeurs suivantes :
Description: | Le pilote de chiffrement � utiliser pour chiffrer les sessions |
---|---|
Syntaxe: | SessionCryptoDriver nom [param[=valeur]] |
D�faut: | aucun |
Contexte: | configuration du serveur |
Statut: | Exp�rimental |
Module: | mod_session_crypto |
Compatibilit�: | Disponible depuis la version 2.3.0 d'Apache |
La directive SessionCryptoDriver
permet de
sp�cifier le nom du pilote � utiliser pour le chiffrement. Si aucun
pilote n'est sp�cifi�, le pilote utilis� par d�faut sera le pilote
recommand� compil� avec APR-util.
Le pilote de chiffrement NSS n�cessite certains param�tres de configuration, qui seront sp�cifi�s comme arguments de la directive avec des valeurs optionnelles apr�s le nom du pilote.
SessionCryptoDriver nss
SessionCryptoDriver nss dir=certs
SessionCryptoDriver nss dir=certs cl�3=cl�3.db cert7=cert7.db secmod=secmod
SessionCryptoDriver nss "dir=My Certs" key3=key3.db cert7=cert7.db secmod=secmod
Le pilote de chiffrement NSS peut avoir �t� configur�
au pr�alable dans une autre partie du serveur, par exemple depuis
mod_nss
ou mod_ldap
. Si c'est le
cas, un avertissement sera enregistr� dans le journal, et la
configuration existante s'en trouvera affect�e. Pour �viter cet
avertissement, utilisez le param�tre noinit
comme suit :
SessionCryptoDriver nss noinit
Pour �viter la confusion, assurez-vous que tous les modules utilisant NSS soient configur�s avec des param�tres identiques.
Le pilote de chiffrement openssl accepte un param�tre optionnel permettant de sp�cifier le moteur de chiffrement � utiliser.
SessionCryptoDriver openssl engine=nom-moteur
Description: | La cl� utilis�e pour chiffrer la session |
---|---|
Syntaxe: | SessionCryptoPassphrase secret [ secret ... ] |
D�faut: | none |
Contexte: | configuration du serveur, serveur virtuel, r�pertoire, .htaccess |
Statut: | Exp�rimental |
Module: | mod_session_crypto |
Compatibilit�: | Disponible depuis la version 2.3.0 d'Apache |
La directive SessionCryptoPassphrase
permet de sp�cifier les cl�s � utiliser pour chiffrer de mani�re
sym�trique le contenu de la session avant de l'enregistrer, ou pour
d�chiffrer le contenu de la session apr�s sa lecture.
L'utilisation de cl�s longues et compos�es de caract�res vraiment al�atoires est plus performant en mati�re de s�curit�. Modifier une cl� sur un serveur a pour effet d'invalider toutes les sessions existantes.
Il est possible de sp�cifier plusieurs cl�s afin de mettre en oeuvre la rotation de cl�s. La premi�re cl� sp�cifi�e sera utilis�e pour le chiffrement, alors que l'ensemble des cl�s sp�cifi�es le sera pour le d�chiffrement. Pour effectuer une rotation p�riodique des cl�s sur plusieurs serveurs, ajoutez une nouvelle cl� en fin de liste, puis, une fois la rotation compl�te effectu�e, supprimez la premi�re cl� de la liste.
Depuis la version 2.4.7, si la valeur de l'argument commence par exec: , la commande sp�cifi�e sera ex�cut�e, et la premi�re ligne que cette derni�re renverra sur la sortie standard sera utilis�e comme cl�.
# cl� sp�cifi�e et utilis�e en tant que tel SessionCryptoPassphrase secret # ex�cution de /path/to/program pour g�n�rer la cl� SessionCryptoPassphrase exec:/path/to/program # ex�cution de /path/to/program avec un argument pour g�n�rer la cl� SessionCryptoPassphrase "exec:/path/to/otherProgram argument1"
Description: | Le fichier contenant les cl�s utilis�es pour chiffrer la session |
---|---|
Syntaxe: | SessionCryptoPassphraseFile nom-fichier |
D�faut: | none |
Contexte: | configuration du serveur, serveur virtuel, r�pertoire |
Statut: | Exp�rimental |
Module: | mod_session_crypto |
Compatibilit�: | Disponible depuis la version 2.3.0 du serveur HTTP Apache |
La directive SessionCryptoPassphraseFile
permet de sp�cifier le nom d'un fichier de configuration contenant
les cl�s � utiliser pour le chiffrement et le d�chiffrement de la
session (une cl� par ligne). Le fichier est lu au d�marrage du
serveur, et un red�marrage graceful est n�cessaire pour prendre en
compte un �ventuel changement de cl�s.
� la diff�rence de la directive
SessionCryptoPassphrase
, les cl�s ne sont pas
pr�sentes dans le fichier de configuration de httpd et peuvent �tre
cach�es via une protection appropri�e du fichier de cl�s.
Il est possible de sp�cifier plusieurs cl�s afin de mettre en oeuvre la rotation de cl�s. La premi�re cl� sp�cifi�e sera utilis�e pour le chiffrement, alors que l'ensemble des cl�s sp�cifi�es le sera pour le d�chiffrement. Pour effectuer une rotation p�riodique des cl�s sur plusieurs serveurs, ajoutez une nouvelle cl� en fin de liste, puis, une fois la rotation compl�te effectu�e, supprimez la premi�re cl� de la liste.