j'essaye désespérément d'activer SSL sur mon serveur Apache2 mais sans
grand succès. Voici donc les étapes que j'ai suivies:
1) création du certificat et de la clé et copie dans le répertoire ssl
2) modification d'un hôte virtuel (qui fonctionne bien en http) en lui
ajoutant les directives suivantes:
SSLEngine on
SSLOptions +StrictRequire
SSLCertificateFile /etc/apache2/conf/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/conf/ssl/server.key
3) dans la directive Directory correspondante, ajout de
SSLRequireSSL
4) redémarrage d'Apache2
Lorsque je tente de me connecter avec un browser j'ai des messages
d'erreur qui varient en fonction du navigateur.
Quand je me connecte à l'aide d'openssl avec: 'openssl s_client
- -connect localhost:443' je vois bien passer le handshake SSL mais si
je fais un GET / HTTP/1.1 puis le Host correspondant, j'ai le droit à
un beau 403 Forbidden.
L'un d'entre vous, aurait-il une idée pour me sortir de là?
Merci de m'avoir lu jusqu'ici.
- --
Christophe Garault
Take your marks:
Gen too three: Emerge!
Pour info, la demande de password d'apache ne bloque pas, au moins en partie, ta machine lors du boot ??
Je ne saurais te répondre ça fait si longtemps que je ne l'ai pas rebootée! 8-) http://uptime.netcraft.com/up/graph?site=www.garault.com
Mais il est très clair que je vais virer cette phrase de passe qui ne me sert de toutes façons pas à grand chose.
-- Christophe Garault Take your marks: Gen too three: Emerge!
-- mailing list
Yoann Pannier
Christophe Garault wrote, On 11/23/2005 10:13 PM:
Yoann Pannier a écrit :
Comment ça global au serveur ? Les certificats sont déclarés à l'interieur d'un vhost, non?
Pas forcément. En l'occurrence j'ai choisi de le laisser dans le fichier 41_mod_ssl_bla.conf puisque c'est là qu'il était par défaut. La doc indique que le contexte est soit server config, soit virtual host.
Ah oui tiens.
Comme c'est le serveur principal qui répond quand aucun vhost ne correspond à la requete, peut-être qu'on peut ne pas déclarer de vhost SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
Mais comme on ne peut avoir qu'un certificat par IP...
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Je crois (dur) qu'Apache reçoit la requete cryptée, choisi un vhost en fonction de l'IP cible (puisque c'est la seule info lisible à ce moment là), et utilise le certificat correspondant pour le biniou ssl.
Justement, les docs ne sont pas très claires sur le sujet. Il m'apparaît évident que la directive SSLEngine joue le rôle d'arbitre lorsqu'il y a des vhost en SSL et d'autres non.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis perplexe là).
Pourquoi apache aurait-il besoin de plus que l'IP (+ eventuellement le nom) et le port pour choisir un vhost (quelle que soit la conf de ce derinier) ?
En tous cas je ne saurais pas comment faire avec plusieurs vhosts en SSL sur une seule IP.
Moi je sais! tu ne pourrais pas :D (excuses plates et publiques si qqun montre le contraire...)
Si c'est un mauvais vhost qui est choisi (genre tu as 2 vhosts SSL sur une seule IP : c'est le premier déclaré qui correspond qui est prit),
Je te crois sur parole! ;-)
Tu ne devrais peut-être pas parce que je n'ai pas pu retrouvé ce point dans la doc : je m'en suis peut-être persuadé tout seul...
Mais bon, tant que la conf est bonne, la vérité sur cette question est inutile ;)
Ah ben voilà! Je n'avais justement qu'un NameVirtualHost 192.168.0.11 sans le port d'écoute! Je tente et....suspense.... BINGO ! En plus c'est page 94 de mon bouquin. Merci Yoann ! :-)
De rien.
En passant je viens de relire cette info ici : http://httpd.apache.org/docs/2.0/vhosts/name-based.html#using
Il faut encore que je lise quelques infos pour bien comprendre ces histoires de format (PEM et autres) des clés et certificats.
Faudrait que je le fasse aussi un jour...
-- Yoann Pannier -- mailing list
Christophe Garault wrote, On 11/23/2005 10:13 PM:
Yoann Pannier a écrit :
Comment ça global au serveur ? Les certificats sont déclarés à
l'interieur d'un vhost, non?
Pas forcément. En l'occurrence j'ai choisi de le laisser dans le fichier
41_mod_ssl_bla.conf puisque c'est là qu'il était par défaut.
La doc indique que le contexte est soit server config, soit virtual host.
Ah oui tiens.
Comme c'est le serveur principal qui répond quand aucun vhost ne
correspond à la requete, peut-être qu'on peut ne pas déclarer de vhost
SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
Mais comme on ne peut avoir qu'un certificat par IP...
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Je crois (dur) qu'Apache reçoit la requete cryptée, choisi un vhost en
fonction de l'IP cible (puisque c'est la seule info lisible à ce moment
là), et utilise le certificat correspondant pour le biniou ssl.
Justement, les docs ne sont pas très claires sur le sujet. Il m'apparaît
évident que la directive SSLEngine joue le rôle d'arbitre lorsqu'il y a
des vhost en SSL et d'autres non.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis
perplexe là).
Pourquoi apache aurait-il besoin de plus que l'IP (+ eventuellement le
nom) et le port pour choisir un vhost (quelle que soit la conf de ce
derinier) ?
En tous cas je ne saurais pas comment
faire avec plusieurs vhosts en SSL sur une seule IP.
Moi je sais! tu ne pourrais pas :D (excuses plates et publiques si qqun
montre le contraire...)
Si c'est un mauvais vhost qui est choisi (genre tu as 2 vhosts SSL sur
une seule IP : c'est le premier déclaré qui correspond qui est prit),
Je te crois sur parole! ;-)
Tu ne devrais peut-être pas parce que je n'ai pas pu retrouvé ce point
dans la doc : je m'en suis peut-être persuadé tout seul...
Mais bon, tant que la conf est bonne, la vérité sur cette question est
inutile ;)
Ah ben voilà! Je n'avais justement qu'un NameVirtualHost 192.168.0.11
sans le port d'écoute!
Je tente et....suspense.... BINGO ! En plus c'est page 94 de mon
bouquin. Merci Yoann ! :-)
De rien.
En passant je viens de relire cette info ici :
http://httpd.apache.org/docs/2.0/vhosts/name-based.html#using
Il faut encore que je lise
quelques infos pour bien comprendre ces histoires de format (PEM et
autres) des clés et certificats.
Faudrait que je le fasse aussi un jour...
--
Yoann Pannier
--
gentoo-user-fr@gentoo.org mailing list
Comment ça global au serveur ? Les certificats sont déclarés à l'interieur d'un vhost, non?
Pas forcément. En l'occurrence j'ai choisi de le laisser dans le fichier 41_mod_ssl_bla.conf puisque c'est là qu'il était par défaut. La doc indique que le contexte est soit server config, soit virtual host.
Ah oui tiens.
Comme c'est le serveur principal qui répond quand aucun vhost ne correspond à la requete, peut-être qu'on peut ne pas déclarer de vhost SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
Mais comme on ne peut avoir qu'un certificat par IP...
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Je crois (dur) qu'Apache reçoit la requete cryptée, choisi un vhost en fonction de l'IP cible (puisque c'est la seule info lisible à ce moment là), et utilise le certificat correspondant pour le biniou ssl.
Justement, les docs ne sont pas très claires sur le sujet. Il m'apparaît évident que la directive SSLEngine joue le rôle d'arbitre lorsqu'il y a des vhost en SSL et d'autres non.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis perplexe là).
Pourquoi apache aurait-il besoin de plus que l'IP (+ eventuellement le nom) et le port pour choisir un vhost (quelle que soit la conf de ce derinier) ?
En tous cas je ne saurais pas comment faire avec plusieurs vhosts en SSL sur une seule IP.
Moi je sais! tu ne pourrais pas :D (excuses plates et publiques si qqun montre le contraire...)
Si c'est un mauvais vhost qui est choisi (genre tu as 2 vhosts SSL sur une seule IP : c'est le premier déclaré qui correspond qui est prit),
Je te crois sur parole! ;-)
Tu ne devrais peut-être pas parce que je n'ai pas pu retrouvé ce point dans la doc : je m'en suis peut-être persuadé tout seul...
Mais bon, tant que la conf est bonne, la vérité sur cette question est inutile ;)
Ah ben voilà! Je n'avais justement qu'un NameVirtualHost 192.168.0.11 sans le port d'écoute! Je tente et....suspense.... BINGO ! En plus c'est page 94 de mon bouquin. Merci Yoann ! :-)
De rien.
En passant je viens de relire cette info ici : http://httpd.apache.org/docs/2.0/vhosts/name-based.html#using
Il faut encore que je lise quelques infos pour bien comprendre ces histoires de format (PEM et autres) des clés et certificats.
Faudrait que je le fasse aussi un jour...
-- Yoann Pannier -- mailing list
Christophe Garault
Yoann Pannier a écrit :
Comme c'est le serveur principal qui répond quand aucun vhost ne correspond à la requete,
Tout juste, et c'est bien ce qui m'était arrivé lors de l'un de mes essais ratés.
peut-être qu'on peut ne pas déclarer de vhost SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
AMHA il n'y a aucune contre-indication à le faire.
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Oui, c'est bien ce que je voulais dire.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis perplexe là).
Je crois bien que j'ma gourru. En fait au moment où j'écrivais celà je n'avais pas encore vu que l'on pouvait mettre le port d'écoute dans la directive VirtualHost. J'avais donc naïvement pensé que seule la directive SSLEngine pouvait indiquer au serveur quel était le vhost en SSL.
-- Christophe Garault Take your marks: Gen too three: Emerge!
-- mailing list
Yoann Pannier a écrit :
Comme c'est le serveur principal qui répond quand aucun vhost ne
correspond à la requete,
Tout juste, et c'est bien ce qui m'était arrivé lors de l'un de mes
essais ratés.
peut-être qu'on peut ne pas déclarer de vhost
SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
AMHA il n'y a aucune contre-indication à le faire.
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Oui, c'est bien ce que je voulais dire.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis
perplexe là).
Je crois bien que j'ma gourru. En fait au moment où j'écrivais celà je
n'avais pas encore vu que l'on pouvait mettre le port d'écoute dans la
directive VirtualHost. J'avais donc naïvement pensé que seule la
directive SSLEngine pouvait indiquer au serveur quel était le vhost en SSL.
--
Christophe Garault
Take your marks:
Gen too three: Emerge!
Comme c'est le serveur principal qui répond quand aucun vhost ne correspond à la requete,
Tout juste, et c'est bien ce qui m'était arrivé lors de l'un de mes essais ratés.
peut-être qu'on peut ne pas déclarer de vhost SSL et tout mettre dans le serveur principal. (mais je n'essaierai pas).
AMHA il n'y a aucune contre-indication à le faire.
Mais 2 vhosts SSL sur 2 IPs oui (je suis pas sûr d'avoir compris ton mais).
Oui, c'est bien ce que je voulais dire.
Qu'est-ce qui te fais penser que SSLEngine jour ce rôle ? (je suis perplexe là).
Je crois bien que j'ma gourru. En fait au moment où j'écrivais celà je n'avais pas encore vu que l'on pouvait mettre le port d'écoute dans la directive VirtualHost. J'avais donc naïvement pensé que seule la directive SSLEngine pouvait indiquer au serveur quel était le vhost en SSL.
-- Christophe Garault Take your marks: Gen too three: Emerge!