Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Protéger l'acces d'une page web par certificat

  1. #1
    destroyedlolo

    Protéger l'acces d'une page web par certificat

    Bonjour,

    Je souhaite protéger l'acces a une page web en fournissant aux clients des certificats pour remplacer le classique Utilisateur/MotDePasse.

    Alors si je trouve pleins de tuto concernant la mise en https, je n'en ai trouvé aucun qui fonctionne pour ce que je souhaite faire.

    Une idée ?

    Merci

    -----


  2. Publicité
  3. #2
    Freemaster

    Re : Protéger l'acces d'une page web par certificat

    Salut,

    si serveur apache, fait des recherches sur l'option :
    SSLVerifyClient require

    à mettre dans le virtualhost en https
    o_O

  4. #3
    destroyedlolo

    Re : Protéger l'acces d'une page web par certificat

    Merci pour ta réponse mais ... comment je génère le certificat a mettre dans le navigateur ?
    J'ai généré le certificat d'apache par un classique :

    Code:
    openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout gnagna.key -out gnagna.crt

  5. #4
    Freemaster

    Re : Protéger l'acces d'une page web par certificat

    le fichier certificat .crt, sur le poste client bouton droit -> installer le certificat -> à mettre dans autorités de certification racine de confiance
    o_O

  6. #5
    Freemaster

    Re : Protéger l'acces d'une page web par certificat

    à priori c'est mieux de générer un fichier .p12 pour .pfx pour le poste client

    openssl pkcs12 -export -inkey gnagna.key -in gnagna.crt -out certificat.p12
    o_O

  7. #6
    destroyedlolo

    Re : Protéger l'acces d'une page web par certificat

    Ok merci.
    Il ne me reste plus qu'a essayer

  8. #7
    quentin08

    Re : Protéger l'acces d'une page web par certificat

    Salut,

    J'avais fait ça à une époque pour mettre un peu plus de sécurité sur un des sites web de ma boite
    Ce sont les notes que j'avais prises et que j'ai gardées quand ça a marché.

    Je me suis inspiré de ce site :
    http://avianey.blogspot.fr/2012/03/s...apache-ca.html

    Pour la crétion des certificats :

    Code:
    # Génération de la clé privée de l'autorité de certification
    openssl genrsa -out ca.key 2048 -config /etc/ssl/openssl.cnf
    # Créer la demande de signature
    openssl req -new -key ./ca.key -out ./ca.csr -subj "/C=FR/ST=France/L=remplir_valeur/O=remplir_valeur/OU=remplir_valeur/CN=remplir_valeur"
    # Créer le certificat de l'autorité de certification à partir de sa clé privée
    openssl x509 -extensions v3_ca -req -days 3650 -in ./ca.csr -out ./ca.crt -signkey ./ca.key -extfile /etc/ssl/openssl.cnf
    # Extraire la clé publique à partir de la clé privée
    openssl rsa -in ca.key -pubout -out ca.public.key
    
    # Certificat serveur
    
    # Créer la clé privée du serveur
    openssl genrsa -des3 -out server.key 2048
    # Créer la demande de signature
    openssl req -new -key ./server.key -out server.csr -subj "/C=FR/ST=France/L=remplir_valeur/O=remplir_valeur/OU=remplir_valeur/CN=remplir_valeur"
    # Créer le certificat du serveur à partir de sa clé privée
    openssl x509 -extensions v3_ca -req -in ./server.csr -CA ./ca.crt -CAkey ./ca.key -CAcreateserial -out ./server.crt -days 3650
    # Créer un certificat pkcs12
    openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12 -name "Certificat serveur"
    # Extraire la clé publique
    openssl rsa -in server.key -passin pass:mot_de_passe -pubout -out server.public.key
    # Créer une autre version de la clé privée sans passphrase
    openssl rsa -in server.key -out server.nopassphrase.key -passin pass:mot_de_passe
    
    
    # Certificat client
    # Créer la clé privée du client
    openssl genrsa -des3 -out client.key 2048
    # Créer la demande de signature
    openssl req -new -key ./client.key -out client.csr -subj "/C=FR/ST=France/L=remplir_valeur/O=remplir_valeur/OU=remplir_valeur/CN=remplir_valeur"
    # Créer le certificat
    openssl x509 -extensions v3_ca -req -in ./client.csr -CA ./ca.crt -CAkey ./ca.key -CAcreateserial -out ./client.crt -days 3650
    # Créer le certificat en PKCS12
    openssl pkcs12 -export -in client.crt -inkey client.key -out client.p12 -name "remplir_valeur"
    # Créer la clé publique à partir de la clé publique
    openssl rsa -in client.key -passin pass:mot_de_passe -pubout -out client.public.key
    Modifier le fichier de config apache pour la prise en compte des certificats

    N'oublie pas de désactiver le http standard sinon, ça ne sert à rien

    En cas d'erreur, regarde les logs

    Ensuite, lorsque tu va accéder à ton site, tu aura cette erreur (testé sur Firefox):
    Code:
    SSL_ERROR_HANDSHAKE_FAILURE_ALERT
    C'est normal, tu aura ça tant que tu n'aura pas installé le certificat dans le navigateur

    Pour mettre le certificat dans Firefox :
    Allez dans les paramètres->Avancé->Certificats->Afficher les certificats
    Onglet Vos certificats->Importer...
    Choisir le fichier client.p12
    Puis saisir la passphrase qui a servi à créer le certificat client

    A+
    Maximator c'est comme Actimel : ça agit à l'intérieur et ça se voit à l'extérieur

  9. #8
    destroyedlolo

    Re : Protéger l'acces d'une page web par certificat

    Bonjour,

    J'ai pu a nouveau passer un peu de temps sur ce projet (d'où les delais ).

    Citation Envoyé par quentin08 Voir le message
    Salut,
    Je me suis inspiré de ce site :
    http://avianey.blogspot.fr/2012/03/s...apache-ca.html
    sauf que les lignes de commandes ne sont plus valable avec ma version d'OpenSSL : je ne sais plus laquelle exactement, mais il y a une option qui a été dépréciée.

    Bref, j'ai donc suivit :
    Citation Envoyé par Freemaster Voir le message
    openssl pkcs12 -export -inkey gnagna.key -in gnagna.crt -out certificat.p12
    et importé le certificats dans Firefox.

    Ce dernier me fait toujours une erreur lorsque j'essaie d'accédé à ma page :
    Une erreur est survenue pendant une connexion à destroyedlolo.info:8443. Le pair ne reconnaît pas l’autorité de certification qui a délivré votre certificat et ne lui fait pas confiance. Code d’erreur : SSL_ERROR_UNKNOWN_CA_ALERT
    J'imagine qu'il faut que j'ajoute aussi dans FF mon CA ?
    C'est le .key, le .crt ou faut-il que je regénère quelque chose ?

    Merci

  10. #9
    quentin08

    Re : Protéger l'acces d'une page web par certificat

    Salut,

    Pour l'erreur SSL_ERROR_UNKNOWN_CA_ALERT, je ne connais pas assez bien OpenSSL pour répondre

    Je me souviens avoir eu un warning de Firefox comme quoi la version ou type de certificat était obsolète, j'ai corrigé ça dans les commandes que j'ai mises plus haut.
    Il me semble que c'est -extensions v3_ca car sur le lien où je me suis inspiré, je ne retrouve pas cette option, c'est moi qui l'ai ajouté après
    Ce warning n’empêchait pas l'accès au site

    Citation Envoyé par destroyedlolo
    J'imagine qu'il faut que j'ajoute aussi dans FF mon CA ?
    Non, il ne faut importer que le .p12
    Il va te demander la passphrase, celle que tu as choisi à la création des certificats

    A+
    Maximator c'est comme Actimel : ça agit à l'intérieur et ça se voit à l'extérieur

  11. #10
    destroyedlolo

    Re : Protéger l'acces d'une page web par certificat

    Salut,

    Ben j'ai essayé avec tes commandes ... et j'obtiens le même résultat. Arg

    Bref, les investigations continuent ...

    A+

Discussions similaires

  1. Accès a un fichier crypté par mot de passe a travers une page HTML
    Par MAXWELL27 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 19/11/2011, 16h25
  2. empecher l'acces direct à une page
    Par helium0xFF dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 28/09/2010, 14h12
  3. Protéger une page avec les sessions.
    Par valentin358 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 08/01/2009, 06h46
  4. Supprimer une en-tête ou pied de page sur la 1ère page d'un document word
    Par mimi1255 dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 18/12/2008, 20h27
  5. code d'acces à ma page internet
    Par oliv922 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 16/05/2008, 20h51