Compruebe el OpenSSL
Compruebe si openssl instalado:
versión de OpenSSL
Por lo general, en el CentOS7, por defecto de OpenSSL se ha instalado.
Generar un certificado autofirmado y clave privada
Paso 1: Generar una clave privada
/etc/ssl/certs/www.ffcc.com nuevo directorio y entrar, después de ejecutar el comando:
openssl genrsa -des3 - cabo server.key 1024
Introducir más de una contraseña de cuatro.
Segundo paso: Generar CSR (solicitud de firma de certificado)
openssl req - nueva tecla server.key - cabo server.csr -subj " /C=CN/ST=Zhejiang/L=Hangzhou/O=mofei/OU=mofei/CN=www.ffcc.com "
Suj parámetros como sigue:
campo | campo Significado | Ejemplos |
/ C = | país nacional | CN |
/ ST = | Estado o provincia 省 | Zhejiang |
/ L = | Ubicación de la ciudad o la ciudad | Hangzhou |
/ O = | organización o empresa Organización | Mofei |
/ OU = | departamento de Unidad de Organización | Mofei |
/ CN = | nombre de dominio Nombre común o IP | www.ffcc.com |
El tercer paso: eliminar la contraseña de clave privada
Durante el primer paso para crear una clave privada, debido a la necesidad de especificar una contraseña. Y este código traerá un efecto secundario, es decir, cada vez que se inicia el servidor Web, se le pedirá que introduzca una contraseña,
Esto es obviamente muy incómodo. Para eliminar la clave privada en la contraseña, de la siguiente manera:
openssl rsa - en server.key - cabo server.key
Paso cuatro: la generación de un certificado SSL con firma
# - certificado es válido Días - día OpenSSL X509 -req -days 3650 - en server.key -signkey server.csr - OUT server.crt
Necesidad de utilizar el archivo de certificado es: server.crt y server.key
certificado X.509 consta de tres archivos: llave, RSE, CRT.
clave es el archivo de clave privada en el servidor, que se utiliza para enviar a la encriptación de datos del cliente, y el descifrado de los datos recibidos desde el cliente de
la RSE es un archivo de solicitud de firma de certificado para su presentación a una autoridad de certificación (CA) para firmar el certificado
certificado de CRT por la autoridad de firma de certificado (CA), o un desarrollador certificado autofirmado, contiene información del titular del certificado, el titular de la clave pública y la firma y otra información del firmante
Nota: en la criptografía en, X.509 es una especificación estándar de las claves públicas, listas de revocación de certificados, certificado de autorización, certificado algoritmo de validación de rutas.
Quinto paso: Configurar el certificado SSL en el archivo de configuración de nginx
nadie usuario; worker_processes 1 ; #error_log logs / error.log; #error_log logs / error.log aviso; #error_log logs / error.log info; #pid logs / nginx.pid; Eventos { worker_connections 1024 ; } Http { incluir mime.types; aplicación default_type / octet- corriente; #log_format principal ' $ remote_addr - $ usuario_remoto [$ time_local] "$ solicitud" ' # ' $ $ status body_bytes_sent "$ HTTP_REFERER"' # ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR" ' ; #access_log logs / access.log principal; sendfile en; #tcp_nopush en; #keepalive_timeout 0 ; keepalive_timeout 65 ; gzip en; servidor { escuchar 80 ; nombre_servidor www.ffcc.com; reescribir ^ https: (*.) // $ server $ 1 permanente; } Servidor { escuchar 443 SSL; mantener con vida el tiempo de espera 70 ; server www.ffcc.com; UBICACIÓN / { PROXY_PASS HTTP: // 127.0.0.1:65432/v2ui; proxy_redirect predeterminado ; 10m client_max_body_size; # indica el 10M máximo de carga, la cantidad a la cantidad de conjunto. # Establecer el anfitrión y la cabeza del cliente dirección real para el servidor para obtener el cliente IP real anfitrión proxy_set_header $ anfitrión; proxy_set_header los ejes X -Real- IP $ REMOTE_ADDR; proxy_set_header los ejes X -Forwarded- la proxy_add_x_forwarded_for Por $; proxy_set_header los ejes X -Forwarded- esquema Esquema $; } error_page 500 502 503 504 / 50x.html; UBICACIÓN = / 50x.html { el HTML raíz; } ssl_certificate /etc/ssl/certs/www.ffcc.com/ server.crt; ssl_certificate_key /etc/ssl/certs/www.ffcc.com / server.key; # reducen clickjacking add_header los X- -Frame- Opciones niegan; # prohíben servidor resuelve automáticamente tipo de recurso add_header los ejes X -contenido-Tipo- Opciones NOSNIFF; # anti-ataque XSS add_header los ejes X -Xss-Protección 1 ; # dar prioridad al servidor algoritmo ssl_prefer_server_ciphers sucesivamente; # Ssl_protocols TLSv1 TLSv1. 1 TLSv1. 2 ; ssl_ciphers ALTA: ! aNULL :! MD5; ssl_session_cache compartida: SSL: 10m; 10m ssl_session_timeout; } }
prestar atención
Hay un certificado de seguridad SSL autofirmado riesgos en el entorno de producción necesidad de compra y uso de certificados por la autoridad de certificación y los criterios.