mirroir readonly du Gitit wiki.evolix.org (attention, ne rien commiter/merger sur ce dépôt) https://wiki.evolix.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.9 KiB

categories title
vpn sysadmin security network Howto shellpki

shellpki est un script Shell pour gérer une petite PKI en ligne de commandes.

Installation

Cloner le repository dans le répertoire de votre choix, et créez un répertoire pour publier les certificats. Par exemple :

# git clone https://forge.evolix.org/shellpki.git /usr/local/shellpki
# mkdir /var/www/shellpki

Ajuster le nom des répertoires choisis dans le script shellpki.sh :

PREFIX=/usr/local/shellpki
WWWDIR=/var/www/shellpki

Éditer les paramètres de la section [ req_distinguished_name ] du fichier openssl.cnf, notamment :

  • countryName_default : mettre le code de votre pays
  • stateOrProvinceName_default : mettre votre état (pour la France, le numéro de département par exemple)
  • localityName_default : mettre le nom de votre ville
  • 0.organizationName_default : mettre le nom de votres structure

Enfin, initialiser la PKI avec :

# sh shellpki.sh init

Confirmer l’initialisation, et choisir la passphrase qui sera demandée à chaque création de nouveaux certificats, puis le Common Name du certificat de l’autorité de certification.

Créer un nouveau certificat

Pour créer une nouvelle clé privée et un certificat associé signé par la PKI :

# sh shellpki.sh create

Il faudra ensuite choisir un Common Name unique et entrer la passphrase de la PKI.

Renouveller un certificat

Il faut le révoquer, puis en recréer un :

# sh shellpki.sh revoke
# sh shellpki.sh create

Troubleshooting

TXT_DB error

À la création d’un certificat, si nous avons l’erreur suivante :

failed to update database
TXT_DB error number 2

Il faut éditer le fichier /etc/openvpn/ssl/ca/index.txt et supprimer la ligne concernant le CN qui pose problème.