J'ai configuré SSL sur mon serveur Web, maintenant j'ai besoin de deux fichiers:
- un certificat
- une clé de certificat
Comment créer un certificat auto-signé à des fins de test?
J'ai configuré SSL sur mon serveur Web, maintenant j'ai besoin de deux fichiers:
Comment créer un certificat auto-signé à des fins de test?
Ubuntu, même la version «minimale», est fournie avec le package ssl-cert
pré-installé, ce qui signifie que vous n'avez rien à faire.
Les fichiers que vous recherchez sont déjà sur votre système:
/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key
Avancé:
Si pour une raison quelconque vous devez créer un nouveau certificat, vous pouvez exécuter
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
Si vous souhaitez modifier la date d’expiration de votre certificat, vous pouvez manipuler le script make-ssl-cert à /usr/sbin/make-ssl-cert
. Autour de 124 il y a une ligne similaire à ceci:
openssl req -config $TMPFILE -new -x509 -nodes \
Où vous pouvez modifier la date d'expiration en ajoutant l'argument -days
:
openssl req -config $TMPFILE -new -days 365 -x509 -nodes \
Vous trouverez d'autres options dans la page de manuel de req
. .
Comme déjà mentionné, Ubuntu Server est fourni avec les outils nécessaires. Selon la version de votre serveur, vous devrez rechercher la documentation spécifique . Je vais essayer de résumer le processus de génération de certificat auto-signé de l'actuel LTS (12.04) .
D'abord, vous générez les clés pour la demande de signature de certificat (CSR):
openssl genrsa -des3 -out server.key 2048
Il vous appartient de saisir une phrase secrète ou non. Si vous le faites, chaque fois que vous (re) démarrez un service, utilisez ce certificat, vous devrez fournir la phrase secrète. Otoh, vous pouvez créer une clé "non sécurisée" sans phrase de passe sécurisée:
openssl rsa -in server.key -out server.key.insecure
# shuffle the key names to continue without passphrases
mv server.key server.key.secure
mv server.key.insecure server.key
Et maintenant, vous allez créer le CSR à partir de la clé. Avec le CSR et la clé, un certificat auto-signé peut être généré:
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
La dernière étape consiste à installer le certificat et la clé, dans Debian / Ubuntu, généralement dans /etc/ssl
:
sudo cp server.crt /etc/ssl/certs
sudo cp server.key /etc/ssl/private
Enfin, les applications utilisant le certificat / la clé doivent être configurées en conséquence.