Maison  >  Article  >  Opération et maintenance  >  Analyse de l'instance de serveur https de construction Nginx

Analyse de l'instance de serveur https de construction Nginx

王林
王林avant
2023-05-12 17:07:13668parcourir

Introduction à https

https (protocole de transfert hypertexte sur couche de socket sécurisée) est un canal http destiné à la sécurité En termes simples, il s'agit d'une version sécurisée de http. Autrement dit, une couche SSL est ajoutée sous http. La base de sécurité de https est SSL, donc les détails du cryptage nécessitent SSL.

Il s'agit d'un schéma uri (système d'identification abstrait), la syntaxe est similaire au système http: et est utilisée pour la transmission sécurisée de données http. Le port par défaut utilisé par https est 443.

Certificat SSL

Présentation des types de certificats

Pour configurer un serveur sécurisé, créez une paire de clés publique-privée à l'aide de la clé publique. Dans la plupart des cas, envoyez la demande de certificat (y compris votre propre clé publique), les informations d'identification de votre entreprise et les frais à une autorité de certification (ca).ca vérifie la demande de certificat et votre identité, puis renvoie le certificat à votre serveur sécurisé.

Mais si l'intranet implémente le cryptage du contenu de transmission côté serveur et côté client, vous pouvez émettre votre propre certificat et ignorer simplement l'alerte de méfiance du navigateur !

Un certificat signé par un ca fournit deux fonctions importantes pour votre serveur :

  • Le navigateur reconnaîtra automatiquement le certificat et permettra la création d'une connexion sécurisée sans demander à l'utilisateur

  • Lorsqu'un ca génère un A signé certificat qui garantit l'identité de l'organisation qui sert la page Web au navigateur.

  • La plupart des serveurs Web prenant en charge SSL ont une liste d'autorités de certification dont les certificats seront automatiquement acceptés. Lorsqu'un navigateur rencontre un certificat dont l'autorisation ca n'est pas dans la liste, le navigateur demandera à l'utilisateur s'il doit accepter ou refuser la connexion

Générer un certificat SSL

openssl genrsa -des3 -out wangzhengyi.key 2048

Opensl Req -New -Key Wangzhengyi.Key -Out Wangzhengyi.csr

Analyse de linstance de serveur https de construction Nginx

Créer un certificat CA signé par lui-même Analyse de linstance de serveur https de construction Nginx

Opensl REQ -New -X509 -KEY WANGZHENGYI_NOPASS.KEY -OUT wangzhengyi.crt

Construire un hôte virtuel httpsAnalyse de linstance de serveur https de construction Nginx

Fichier de configuration de l'hôte virtuel

upstream sslfpm {
 server 127.0.0.1:9000 weight=10 max_fails=3 fail_timeout=20s;
}

server { 
 listen   192.168.1.*:443; 
 server_name 192.168.1.*; 
 
 #为一个server开启ssl支持
 ssl         on;
 #为虚拟主机指定pem格式的证书文件
 ssl_certificate   /home/wangzhengyi/ssl/wangzhengyi.crt; 
 #为虚拟主机指定私钥文件
 ssl_certificate_key /home/wangzhengyi/ssl/wangzhengyi_nopass.key; 
 #客户端能够重复使用存储在缓存中的会话参数时间
 ssl_session_timeout 5m;
 #指定使用的ssl协议 
 ssl_protocols sslv3 tlsv1; 
 #指定许可的密码描述
 ssl_ciphers all:!adh:!export56:rc4+rsa:+high:+medium:+low:+sslv2:+exp; 
 #sslv3和tlsv1协议的服务器密码需求优先级高于客户端密码
 ssl_prefer_server_ciphers on;

 location / { 
 root /home/wangzhengyi/ssl/;
 autoindex on;
     autoindex_exact_size  off;
     autoindex_localtime on;
 } 
   # redirect server error pages to the static page /50x.html
   #
   error_page 500 502 503 504 /50x.html;
   error_page 404 /404.html;

 location = /50x.html {
     root /usr/share/nginx/www;
   }
  location = /404.html {
     root /usr/share/nginx/www;
   }
  
   # proxy the php scripts to fpm
   location ~ \.php$ {
 access_log /var/log/nginx/ssl/ssl.access.log main;
 error_log /var/log/nginx/ssl/ssl.error.log;
 root /home/wangzhengyi/ssl/; 
 fastcgi_param https on;
     include /etc/nginx/fastcgi_params; 
     fastcgi_pass  sslfpm;
   }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer