4 votes

Nginx, configurer https

J'essaie de configurer https sur mon serveur ubuntu avec NGINX ver 1.4.7 et Phusion Passenger 4.0.41.

J'ai créé .key et .csr en utilisant ces deux commandes

sudo openssl genrsa -des3 -out server.key 2048
sudo openssl req -new -key server.key -out server.csr

et envoyé le .csr aux gars de sslshopper.com.

J'ai 3 fichiers :

Root CA Certificate - AddTrustExternalCARoot.crt
Intermediate CA Certificate - USERTrustSecureServerCA.crt
Your COMODO SSL Certificate - subdomain_domain_com.crt

Voici à quoi ressemble mon nginx.conf à l'heure actuelle

http {
    passenger_root /usr/local/rvm/gems/ruby-2.1.1/gems/passenger-4.0.41;
    passenger_ruby /usr/local/rvm/gems/ruby-2.1.1/wrappers/ruby;

server_names_hash_bucket_size 64;
include       mime.types;
default_type  application/octet-stream;

#access_log  logs/access.log  main;

sendfile        on;
#tcp_nopush     on;

#keepalive_timeout  0;
keepalive_timeout  65;

server {
    listen 443 default ssl;
    ssl on;
    ssl_certificate /opt/nginx/ssl/subdomain_domain_com.crt;
    ssl_certificate_key /opt/nginx/ssl/server.key;

    server_name app.petosevic.com; 
    root /var/www/petosevic/public; 
    passenger_enabled on;

   location / {
      # set X-FORWARDED_PROTO so ssl_requirement plugin works
      proxy_set_header X-FORWARDED_PROTO https;

          # standard rails+mongrel configuration goes here.
   }
}}

Et lorsque j'essaie de démarrer le serveur, je dois entrer le mot de passe que j'ai entré lorsque j'ai créé le fichier .key. Lorsqu'il est accepté, j'obtiens l'erreur :

nginx: [emerg] SSL_CTX_use_PrivateKey_file("/opt/nginx/ssl/server.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)

Je suis sûr à 100% d'avoir envoyé le bon fichier .csr aux gars de sslshopper.com, mais il semble qu'ils ne correspondent pas.

Que pensez-vous de cela ?

6voto

Daniel Hilgarth Points 133

Vous pouvez vérifier le couple certificat/clé manuellement en utilisant :

openssl x509 -noout -modulus -in subdomain_domain_com.crt | openssl md5
openssl rsa -noout -modulus -in server.key | openssl md5

La sortie des deux commandes devrait être la même. Cela vous indique qu'il s'agit d'une paire valide.

S'il est valide, mais que vous obtenez cette erreur, jetez un coup d'œil à la section sur les "chaînes de certificats" dans le document suivant nginx - configuration des serveurs https . NGINX s'attend à ce qu'un certificat enchaîné soit dans un seul fichier, avec l'intermédiaire concaténé après le certificat du serveur. Si vous les avez dans le mauvais ordre, c'est l'erreur que vous obtiendrez.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X