Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

301
Views
Cómo manejar certificados SSL para implementar la opción WhiteLabel en una aplicación web que se ejecuta en el servidor NGINX

Estoy trabajando en una aplicación web.

Mi aplicación se ejecuta en el subdominio app.mydomain.com

Necesito WhiteLabel mi aplicación. Estoy pidiendo a mis Clientes que apunten a su propio sitio web a través de CNAME a mi aplicación.

design.customerwebsite.com apunta a app.mydomain.com

Esto es lo que he intentado resolver.

Creé un nuevo archivo en /etc/nginx/sites-available llamado customerwebsite.com Agregué un enlace simbólico al archivo.

Instalé SSL usando certbot con el siguiente comando.

sudo certbot --nginx -n --redirect -d design.customerwebsite.com

Aquí está el código para mi archivo de configuración NGINX de customerwebsite.com

 server { server_name www.customerwebsite.com; return 301 $scheme://customerwebsite.com$request_uri; } server { # proxy_hide_header X-Frame-Options; listen 80; listen 443; server_name design.customerwebsite.com; ssl_certificate /etc/letsencrypt/live/design.customerwebsite.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/design.customerwebsite.com/privkey.pem; root /opt/bitnami/apps/myapp/dist; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_hide_header X-Frame-Options; proxy_pass http://localhost:3000; } proxy_set_header X-Forwarded-Proto $scheme; if ( $http_x_forwarded_proto != 'https' ) { return 301 https://$host$request_uri; } }

Puedo ejecutar correctamente mi aplicación web en https://design.customerwebsite.com

Pero el certificado SSL muestra que apunta a app.mydomain.com y se muestra inseguro.

Mi app.mydomain.com tiene un certificado SSL de Amazon ACM que se adjunta a través de Load Balancer.

¿Cuál debería ser el enfoque para resolver esto?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Hay dos soluciones para esto 1: agregue los certificados ssl al equilibrio de carga: debe solicitar un certificado con todos los nombres de DNS admitidos (app.mydomain.com y design.customerwebsite.com)/ y debe administrar customerwebsite.com dominio con Route53. Creo que eso no es posible en tu caso.

2- No use ssl en el balanceador de carga: para esta opción, no terminaremos ssl en el balanceador de carga, sin embargo, se pasará a nginx para que lo maneje. Las configuraciones de su balanceador de carga deberían verse como

ingrese la descripción de la imagen aquí

necesita generar un nuevo certificado SSL que incluya ambos dominios

 sudo certbot --nginx -n --redirect -d app.mydomain.com -d *.mydomain.com -d design.customerwebsite.com -d *.customerwebsite.com

Configuraciones de Nginx

 server { server_name www.customerwebsite.com; return 301 $scheme://customerwebsite.com$request_uri; } server { listen 80 default_server; server_name design.customerwebsite.com; return 301 https://$host$request_uri; } server { listen 443 ssl default_server; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_certificate /etc/letsencrypt/live/design.customerwebsite.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/design.customerwebsite.com/privkey.pem; server_name design.customerwebsite.com; root /opt/bitnami/apps/myapp/dist; location / { resolver 127.0.0.11 ipv6=off; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto https proxy_set_header X-Real-IP $remote_addr; proxy_hide_header X-Frame-Options; proxy_pass http://localhost:3000; } }
over 4 years ago · Santiago Trujillo Report

0

Creo que los elementos proporcionados al ACM Load Balancer deben coincidir con todos los dominios en los que puede recibir solicitudes. En el certificado, debe tener un Nombre alternativo del sujeto que contenga todos los dominios coincidentes.

Por ejemplo, en stackoverflow.com, el certificado tiene un CN *.stackexchange.com pero tiene ese Nombre alternativo del sujeto:

 DNS:*.askubuntu.com, DNS:*.blogoverflow.com, DNS:*.mathoverflow.net, DNS:*.meta.stackexchange.com, DNS:*.meta.stackoverflow.com, DNS:*.serverfault.com, DNS:*.sstatic.net, DNS:*.stackexchange.com, DNS:*.stackoverflow.com, DNS:*.stackoverflow.email, DNS:*.superuser.com, DNS:askubuntu.com, DNS:blogoverflow.com, DNS:mathoverflow.net, DNS:openid.stackauth.com, DNS:serverfault.com, DNS:sstatic.net, DNS:stackapps.com, DNS:stackauth.com, DNS:stackexchange.com, DNS:stackoverflow.blog, DNS:stackoverflow.com, DNS:stackoverflow.email, DNS:stacksnippets.net, DNS:superuser.com
over 4 years ago · Santiago Trujillo Report

0

te estás olvidando de algunos detalles... tienes que hacer una configuración para el dominio

/////// app.myDominio.com ////////

tal como lo hizo para el dominio normal y también cree SSL solo para este dominio. Puedes usar el script let. Configure una ruta para el REGISTRO DE NGINX para que pueda verificar los errores que detecta NGINX.

También puede usarlo en la configuración de NGINX * .domain.com (donde * significa aplicación, tal vez lo detecte)

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!