Openssl probleme de certificat [Résolu/Fermé]

Signaler
Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
-
 Manu -
Bonjour,
j'essai de mettre en place un server apache sur Mandriva 2009 et j'aimerai bien utiliser un openssl apres voir creer un certificat et lorsque j'essai de me connecté un des mes VitrualHost en https j'ai le message d'erreur suivant:

www.secure.com:443 utilise un certificat de sécurité invalide.

Le certificat n'est pas sûr car il est auto-signé.

(Code d'erreur : sec_error_untrusted_issuer)

et lorsque je tapes la commande suivant pour verifier j'oubtiens

[root@localhost conf]# openssl s_server -cert certificat.pem -www
unable to load server certificate private key file
4464:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: ANY PRIVATE KEY

si quelqu'un a une idee merci

7 réponses

Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
33
En faite le serveur apache c'est juste un petit exo que je suis entrain de faire chez moi histoire de reviser un peu

je vous explique un peu ce que j'ai eu à faire

j'ai editer le fichier suivant dans conf

#vi /etc/httpd/conf/httpd.conf

j'ai ajouter les lignes suivantes:

<VirtualHost *:443>
DocumentRoot /var/www/secure.com
ServerName www.secure.com

SSLCertificateFile /etc/httpd/conf/certificat.pem
sslcertificatekeyfile /etc/httpd/conf/server.key
SSLEngine on


<Directory /var/www/secure.com>
Options +Indexes
Order allow,deny
Allow from all
</Directory>
</VirtualHost>


puis j'ai ajouter un certificat avec la commande suivante

#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/httpd/conf/certificat.pem -out /etc/httpd/conf/server.key

puis j'ai toujours dans le fichier httpd.conf j'ai decommenté la ligne

LoadModule ssl_module modules/mod_ssl.so

puis j'ai editer le fichier vi /etc/hosts

127.0.0.1 www.secure.com

et lorsque je tape dans mon terminal
#firefox https://www.secure.com

j'ai le message d'erreur suivant et c'est vraiment lui qui me derange

www.secure.com:443 utilise un certificat de sécurité invalide.

Le certificat n'est pas sûr car il est auto-signé.

(Code d'erreur : sec_error_untrusted_issuer)

bon j'espere que vous avez compris un peu ma configuration je me dit peut etre que j'ai pas configurer quelque chose ou bien j'ai mal fait ma configure.

Si quelqu'un a une idee merci
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
33
le probleme etais resolu il fallait juste le faire accepter par le navigateur.Merci
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
33
Un autre point lors que fait

[root@localhost conf]# /etc/init.d/httpd restart
Shutting down httpd: [ OK ]
Starting httpd: Warning: DocumentRoot /srv/www/secure.com does not exist
[Sat Nov 29 13:35:18 2008] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
[Sat Nov 29 13:35:18 2008] [warn] NameVirtualHost *:80 has no VirtualHosts
[ OK ]

j'avais un petit conflit c'est regler

[root@localhost conf]# /etc/init.d/httpd restart
Shutting down httpd: [ OK ]
Starting httpd: Warning: DocumentRoot /srv/www/secure.com does not exist
[Sat Nov 29 13:35:18 2008] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
[Sat Nov 29 13:35:18 2008] [warn] NameVirtualHost *:80 has no VirtualHosts
[ OK ]
mais lorsque je lance la commande de test c'est toujours le meme message

[root@localhost conf]# openssl s_server -cert certificat.pem -www
unable to load server certificate private key file
5373:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: ANY PRIVATE KEY
Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
33
Apres quelque modification j'obtiens

[root@localhost conf]# openssl s_server -cert certificat.pem -www
unable to load server certificate private key file
6105:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: ANY PRIVATE KEY
Messages postés
186
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
12 août 2011
33
Quelqu'un à une idee
Bonjour,

Je ne suis pas sûr d'avoir tout saisi, mais

Le certificat n'est pas sûr car il est auto-signé
veut dire que vous utilisez pour le serveur un certificat d'autorité de certification. Ces certificats ne doivent servir qu'à signer des certificats de serveur ou de client.

Dans openssl vous devez d'abord créer une autorité (certificat auto-signé), puis à l'aide de ce certificat vous devez créer le certificat du serveur. Ce dernier doit avoir le même nom que votre serveur (est-ce vraiment srv/www/secure.com votre propre serveur ?) et c'est la clé privée (et non le certificat) que vous devez mettre sur le serveur.

Vous avez aussi des problèmes de partage http(80)/https(443), mais je ne m'y connais pas.

Manu
Rebonjour,

Deux rectifications :
- sur le serveur vous devez mettre la clé privée et le certificat du serveur.
- le certificat du serveur doit être au nom du serveur, donc si j'ai bien compris www.secure.com

Manu
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 542
Salut,

Une clé privée ne doit pas rester privée?
Ce n'est pas plutôt la clé publique qui doit être envoyée sur le serveur?
>
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019

Bonjour,

Une clé privée ne doit pas rester privée?
Ce n'est pas plutôt la clé publique qui doit être envoyée sur le serveur?


Bien sûr que la clé privée doit être privée, c'est-à-dire connue seulement de son propriétaire, ici le serveur.

Une clé de serveur sert à authentifier le serveur, c'est-à-dire permettre au client d'être sûr de ne pas s'adresser à un serveur non authentique. Dans la phase de connexion, le client envoie une information aléatoire, le serveur chiffre celle-ci avec sa clé privée et envoie au client la valeur chiffrée et le certificat (qui contient la clé publique). Le client peut vérifier le certificat parce qu'il est établi au nom du serveur et qu'il est signé par une autorité connue (*) et peut vérifier que le rechiffrement de la valeur chiffrée reçue redonne le nombre aléatoire initial. Le client est alors sûr que celui qui lui a répondu possédait la clé privée, donc que c'est le serveur authentique.

(*) j'ai oublié de dire que le certificat de l'autorité de certification doit être mis dans la magasin de certificats du client.

Manu
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 542 > Manu
Re,

Oups, j'ai lu en diagonale ;-)
> Manu
Bonjour, j'aurais une petite question: si le serveur crypte le message avec sa clé privée et le renvoie au client, n'importe qui peut intercepter ce message et le décrypter grâce à la clé publique du serveur...Non? De plus, est ce qu'on n'est pas censé crypter un message à envoyer avec la clé publique du destinataire? Je n'ai pas très bien suivi ce passage...
Merci pour votre réponse
Bonjour,

Bonjour, j'aurais une petite question: si le serveur crypte le message avec sa clé privée et le renvoie au client, n'importe qui peut intercepter ce message et le décrypter grâce à la clé publique du serveur...Non

Oui.

Mais, il s'agissait de la phase d'authentification réciproque, et le message dont il est question est une information aléatoire générée par le client. Quel bénéfice en tirerait un espion qui écouterait ? Seul le client peut comparer avec la valeur d'origine, ce qui lui permet de vérifier que son interlocuteur dispose de la clé privée dont il (le client) a la clé publique.

Manu