Générer une CSR pour nginx

nginx n'a pas d'outil propre pour créer une CSR : on utilise OpenSSL, avec une seule commande.

Générer la clé et la CSR (RSA 2048)

Travaillez en tant que root (sudo -i) dans un répertoire protégé, par exemple /etc/nginx/ssl/www.exemple.fr :

umask 077
mkdir -p /etc/nginx/ssl/www.exemple.fr && cd /etc/nginx/ssl/www.exemple.fr

Puis :

openssl req -new -newkey rsa:2048 -nodes \
  -keyout www.exemple.fr.key -out www.exemple.fr.csr \
  -subj "/C=FR/ST=Rhone/L=Lyon/O=Exemple SARL/CN=www.exemple.fr"

Remplacez les valeurs par les vôtres. Pour un certificat wildcard, CN=*.exemple.fr. Le sens de chaque champ est détaillé dans la page générale sur la CSR, les codes pays dans la liste ISO.

Variante : clé ECDSA P-256

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -nodes \
  -keyout www.exemple.fr-ecdsa.key -out www.exemple.fr-ecdsa.csr \
  -subj "/C=FR/ST=Rhone/L=Lyon/O=Exemple SARL/CN=www.exemple.fr"

Vérifier et transmettre

openssl req -in www.exemple.fr.csr -noout -verify -subject
chmod 600 www.exemple.fr.key
cat www.exemple.fr.csr

Collez le contenu de la CSR (balises BEGIN et END comprises) dans le formulaire de configuration de votre certificat depuis votre espace client. Conservez la clé privée : elle sert à l’installation.

Étape suivante : installer le certificat sur nginx.