Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
mkchain — Outil open source pour vous aider à construire une chaîne de certificats SSL valide. | Kitploit
Outils/GitHubGitHub/trimstray/mkchain
Outils de Chiffrement/DéchiffrementCryptographieUtilitaires et Frameworks
GitHubtrimstray/mkchain

mkchain

Outil open source pour vous aider à construire une chaîne de certificats SSL valide.

Voir le dépôt
3815229il y a 1 anVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

mkchain

Outil open source pour vous aider à construire une chaîne de certificats SSL valide.

Travis-CI Version Licence

Description • Comment utiliser • Paramètres • Comment ça fonctionne • Prérequis • Autre • Licence


Maître

Description

Est un outil open source pour vous aider à construire une chaîne de certificats SSL valide. Il peut aussi vous aider à corriger une chaîne incomplète et télécharger tous les certificats CA manquants. Vous pouvez également télécharger tous les certificats depuis un serveur distant et obtenir une chaîne de certificats correcte.

Comment utiliser

C'est simple :

# Clone this repository
git clone https://github.com/trimstray/mkchain

# Go into the repository
cd mkchain

# Install
./setup.sh install

# Run the app
mkchain -i /data/certs -o /data/chain.crt
  • Le lien symbolique vers bin/mkchain est placé dans /usr/local/bin
  • La page de manuel est placée dans /usr/local/man/man8

Paramètres

Fournit les options suivantes :

  Usage:
    mkchain <option|long-option>

  Examples:
    mkchain --in Root.crt --in Intermediate1.crt --in Server.crt --out bundle_chain_certs.crt
    mkchain --in /tmp/certs --out bundle_chain_certs.crt --with-root
    mkchain -i Server.crt -o bundle_chain_certs.crt
    mkchain -i https://incomplete-chain.badssl.com/ --with-root

  Options:
        --help        show this message
        --debug       displays information on the screen (debug mode)
    -i, --in          add certificates to merge (file, multiple files, directory with ssl certificates
                      or remote domain)
    -o, --out         saves the result (chain) to a file
        --with-root   add root certificate to certificates chain

-o|--out - sans ce paramètre, mkchain enregistre la chaîne de sortie dans le répertoire mkchain/chains/.

Comment ça fonctionne

Avant de le lire, veuillez consulter l'article sur SSL Certificate Chain.

Commençons avec la chaîne de certificats ssllabs. Ils sont fournis avec mkchain et se trouvent dans le répertoire example/ssllabs.com qui contient également le répertoire all (contenant tous les certificats nécessaires pour assembler la chaîne) et le répertoire server_certificate (contenant uniquement le certificat serveur).

La chaîne correcte pour le domaine ssllabs.com (résultat de la commande openssl) :

Certificate chain
 0 s:/C=US/ST=California/L=Redwood City/O=Qualys, Inc./CN=ssllabs.com
   i:/C=US/O=Entrust, Inc./OU=See www.entrust.net/legal-terms/OU=(c) 2012 Entrust, Inc. - for authorized use only/CN=Entrust Certification Authority - L1K
 1 s:/C=US/O=Entrust, Inc./OU=See www.entrust.net/legal-terms/OU=(c) 2012 Entrust, Inc. - for authorized use only/CN=Entrust Certification Authority - L1K
   i:/C=US/O=Entrust, Inc./OU=See www.entrust.net/legal-terms/OU=(c) 2009 Entrust, Inc. - for authorized use only/CN=Entrust Root Certification Authority - G2
 2 s:/C=US/O=Entrust, Inc./OU=See www.entrust.net/legal-terms/OU=(c) 2009 Entrust, Inc. - for authorized use only/CN=Entrust Root Certification Authority - G2
   i:/C=US/O=Entrust, Inc./OU=www.entrust.net/CPS is incorporated by reference/OU=(c) 2006 Entrust, Inc./CN=Entrust Root Certification Authority

Le code ci-dessus présente une chaîne complète composée de :

  • Certificat d'identité (Certificat serveur)

    délivré pour ssllabs.com par Entrust Certification Authority - L1K

  • Certificat intermédiaire

    délivré pour Entrust Certification Authority - L1K par Entrust Root Certification Authority - G2

  • Certificat intermédiaire

    délivré pour Entrust Root Certification Authority - G2 par Entrust Root Certification Authority

  • Certificat racine (Certificat auto-signé)

    délivré pour Entrust Root Certification Authority par Entrust Root Certification Authority

Scénario 1

Dans ce scénario, nous allons chaîner tous les certificats fournis. Exemple d'exécution de l'outil :

Maître

Scénario 2

Dans ce scénario, nous utilisons uniquement le certificat serveur et nous l'utilisons pour récupérer les certificats requis restants. Ensuite, comme ci-dessus, nous combinerons tous les certificats fournis. Exemple d'exécution de l'outil :

Maître

Chaîne de certificats

Pour créer une chaîne valide, vous devez fournir à l'outil tous les certificats nécessaires (si vous définissez un répertoire pour le paramètre -i|--in). Ce seront :

  • Certificat serveur
  • CA intermédiaires et CA racines

C'est très important car sans cela, vous ne pourrez pas déterminer le début et la fin de la chaîne.

Si vous définissez uniquement un fichier de certificat comme valeur -i|--in, mkchain télécharge automatiquement tous les certificats nécessaires.

Cependant, si vous regardez à l'intérieur de la chaîne générée après la génération avec mkchain, vous n'y trouverez pas le certificat racine.

Pourquoi ? Parce que les certificats racines auto-signés ne doivent pas / ne devraient pas être inclus dans la configuration du serveur web. Ils ne servent à rien (les clients les ignoreront toujours) et ils entraînent une légère pénalité de performance (latence) car ils augmentent la taille de la négociation SSL.

Si vous souhaitez ajouter un certificat racine à la chaîne de certificats, appelez l'utilitaire avec le paramètre --with-root.

Chemins de certification

mkchain permet d'utiliser deux chemins de certification :

Maître

Commentaires de sortie

Lors de la génération de la chaîne de certificats, mkchain affiche des commentaires avec des informations sur les certificats, y compris les éventuelles erreurs.

Voici une liste de toutes les possibilités :

certificat d'identité (utilisateur final, serveur) non trouvé

Le message est affiché en l'absence d'un certificat serveur qui est le début de la chaîne. C'est un cas unique car dans cette situation, mkchain termine son fonctionnement en affichant uniquement cette information. Le certificat serveur est le seul certificat requis pour créer correctement une chaîne. Sans ce certificat, la chaîne correcte ne sera pas créée.

certificat d'identité (utilisateur final, serveur) correct trouvé

La situation inverse ici - message affiché lorsqu'un certificat serveur valide est trouvé.

premier certificat intermédiaire non trouvé

Télécharger l’outil